]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.14-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 13 May 2023 06:53:11 +0000 (15:53 +0900)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 13 May 2023 06:53:11 +0000 (15:53 +0900)
added patches:
arm-dts-exynos-fix-wm8960-clock-name-in-itop-elite.patch
arm-dts-s5pv210-correct-mipi-csis-clock-name.patch
btrfs-fix-btrfs_prev_leaf-to-not-return-the-same-key-twice.patch
btrfs-print-tree-parent-bytenr-must-be-aligned-to-sector-size.patch
cifs-fix-pcchunk-length-type-in-smb2_copychunk_range.patch
sh-math-emu-fix-macro-redefined-warning.patch
sh-nmi_debug-fix-return-value-of-__setup-handler.patch

queue-4.14/arm-dts-exynos-fix-wm8960-clock-name-in-itop-elite.patch [new file with mode: 0644]
queue-4.14/arm-dts-s5pv210-correct-mipi-csis-clock-name.patch [new file with mode: 0644]
queue-4.14/btrfs-fix-btrfs_prev_leaf-to-not-return-the-same-key-twice.patch [new file with mode: 0644]
queue-4.14/btrfs-print-tree-parent-bytenr-must-be-aligned-to-sector-size.patch [new file with mode: 0644]
queue-4.14/cifs-fix-pcchunk-length-type-in-smb2_copychunk_range.patch [new file with mode: 0644]
queue-4.14/perf-symbols-fix-return-incorrect-build_id-size-in-e.patch
queue-4.14/series
queue-4.14/sh-math-emu-fix-macro-redefined-warning.patch [new file with mode: 0644]
queue-4.14/sh-nmi_debug-fix-return-value-of-__setup-handler.patch [new file with mode: 0644]

diff --git a/queue-4.14/arm-dts-exynos-fix-wm8960-clock-name-in-itop-elite.patch b/queue-4.14/arm-dts-exynos-fix-wm8960-clock-name-in-itop-elite.patch
new file mode 100644 (file)
index 0000000..3a7d908
--- /dev/null
@@ -0,0 +1,32 @@
+From 6c950c20da38debf1ed531e0b972bd8b53d1c11f Mon Sep 17 00:00:00 2001
+From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+Date: Fri, 17 Feb 2023 16:06:27 +0100
+Subject: ARM: dts: exynos: fix WM8960 clock name in Itop Elite
+
+From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+
+commit 6c950c20da38debf1ed531e0b972bd8b53d1c11f upstream.
+
+The WM8960 Linux driver expects the clock to be named "mclk".  Otherwise
+the clock will be ignored and not prepared/enabled by the driver.
+
+Cc: <stable@vger.kernel.org>
+Fixes: 339b2fb36a67 ("ARM: dts: exynos: Add TOPEET itop elite based board")
+Link: https://lore.kernel.org/r/20230217150627.779764-3-krzysztof.kozlowski@linaro.org
+Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ arch/arm/boot/dts/exynos4412-itop-elite.dts |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/arch/arm/boot/dts/exynos4412-itop-elite.dts
++++ b/arch/arm/boot/dts/exynos4412-itop-elite.dts
+@@ -187,7 +187,7 @@
+               compatible = "wlf,wm8960";
+               reg = <0x1a>;
+               clocks = <&pmu_system_controller 0>;
+-              clock-names = "MCLK1";
++              clock-names = "mclk";
+               wlf,shared-lrclk;
+               #sound-dai-cells = <0>;
+       };
diff --git a/queue-4.14/arm-dts-s5pv210-correct-mipi-csis-clock-name.patch b/queue-4.14/arm-dts-s5pv210-correct-mipi-csis-clock-name.patch
new file mode 100644 (file)
index 0000000..a49bd2f
--- /dev/null
@@ -0,0 +1,32 @@
+From 665b9459bb53b8f19bd1541567e1fe9782c83c4b Mon Sep 17 00:00:00 2001
+From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+Date: Sun, 12 Feb 2023 19:58:18 +0100
+Subject: ARM: dts: s5pv210: correct MIPI CSIS clock name
+
+From: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+
+commit 665b9459bb53b8f19bd1541567e1fe9782c83c4b upstream.
+
+The Samsung S5P/Exynos MIPI CSIS bindings and Linux driver expect first
+clock name to be "csis".  Otherwise the driver fails to probe.
+
+Fixes: 94ad0f6d9278 ("ARM: dts: Add Device tree for s5pv210 SoC")
+Cc: <stable@vger.kernel.org>
+Link: https://lore.kernel.org/r/20230212185818.43503-2-krzysztof.kozlowski@linaro.org
+Signed-off-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ arch/arm/boot/dts/s5pv210.dtsi |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/arch/arm/boot/dts/s5pv210.dtsi
++++ b/arch/arm/boot/dts/s5pv210.dtsi
+@@ -563,7 +563,7 @@
+                               interrupts = <29>;
+                               clocks = <&clocks CLK_CSIS>,
+                                               <&clocks SCLK_CSIS>;
+-                              clock-names = "clk_csis",
++                              clock-names = "csis",
+                                               "sclk_csis";
+                               bus-width = <4>;
+                               status = "disabled";
diff --git a/queue-4.14/btrfs-fix-btrfs_prev_leaf-to-not-return-the-same-key-twice.patch b/queue-4.14/btrfs-fix-btrfs_prev_leaf-to-not-return-the-same-key-twice.patch
new file mode 100644 (file)
index 0000000..314371e
--- /dev/null
@@ -0,0 +1,136 @@
+From 6f932d4ef007d6a4ae03badcb749fbb8f49196f6 Mon Sep 17 00:00:00 2001
+From: Filipe Manana <fdmanana@suse.com>
+Date: Wed, 12 Apr 2023 11:33:09 +0100
+Subject: btrfs: fix btrfs_prev_leaf() to not return the same key twice
+
+From: Filipe Manana <fdmanana@suse.com>
+
+commit 6f932d4ef007d6a4ae03badcb749fbb8f49196f6 upstream.
+
+A call to btrfs_prev_leaf() may end up returning a path that points to the
+same item (key) again. This happens if while btrfs_prev_leaf(), after we
+release the path, a concurrent insertion happens, which moves items off
+from a sibling into the front of the previous leaf, and an item with the
+computed previous key does not exists.
+
+For example, suppose we have the two following leaves:
+
+  Leaf A
+
+  -------------------------------------------------------------
+  | ...   key (300 96 10)   key (300 96 15)   key (300 96 16) |
+  -------------------------------------------------------------
+              slot 20             slot 21             slot 22
+
+  Leaf B
+
+  -------------------------------------------------------------
+  | key (300 96 20)   key (300 96 21)   key (300 96 22)   ... |
+  -------------------------------------------------------------
+      slot 0             slot 1             slot 2
+
+If we call btrfs_prev_leaf(), from btrfs_previous_item() for example, with
+a path pointing to leaf B and slot 0 and the following happens:
+
+1) At btrfs_prev_leaf() we compute the previous key to search as:
+   (300 96 19), which is a key that does not exists in the tree;
+
+2) Then we call btrfs_release_path() at btrfs_prev_leaf();
+
+3) Some other task inserts a key at leaf A, that sorts before the key at
+   slot 20, for example it has an objectid of 299. In order to make room
+   for the new key, the key at slot 22 is moved to the front of leaf B.
+   This happens at push_leaf_right(), called from split_leaf().
+
+   After this leaf B now looks like:
+
+  --------------------------------------------------------------------------------
+  | key (300 96 16)    key (300 96 20)   key (300 96 21)   key (300 96 22)   ... |
+  --------------------------------------------------------------------------------
+       slot 0              slot 1             slot 2             slot 3
+
+4) At btrfs_prev_leaf() we call btrfs_search_slot() for the computed
+   previous key: (300 96 19). Since the key does not exists,
+   btrfs_search_slot() returns 1 and with a path pointing to leaf B
+   and slot 1, the item with key (300 96 20);
+
+5) This makes btrfs_prev_leaf() return a path that points to slot 1 of
+   leaf B, the same key as before it was called, since the key at slot 0
+   of leaf B (300 96 16) is less than the computed previous key, which is
+   (300 96 19);
+
+6) As a consequence btrfs_previous_item() returns a path that points again
+   to the item with key (300 96 20).
+
+For some users of btrfs_prev_leaf() or btrfs_previous_item() this may not
+be functional a problem, despite not making sense to return a new path
+pointing again to the same item/key. However for a caller such as
+tree-log.c:log_dir_items(), this has a bad consequence, as it can result
+in not logging some dir index deletions in case the directory is being
+logged without holding the inode's VFS lock (logging triggered while
+logging a child inode for example) - for the example scenario above, in
+case the dir index keys 17, 18 and 19 were deleted in the current
+transaction.
+
+CC: stable@vger.kernel.org # 4.14+
+Reviewed-by: Josef Bacik <josef@toxicpanda.com>
+Signed-off-by: Filipe Manana <fdmanana@suse.com>
+Signed-off-by: David Sterba <dsterba@suse.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ fs/btrfs/ctree.c |   32 +++++++++++++++++++++++++++++++-
+ 1 file changed, 31 insertions(+), 1 deletion(-)
+
+--- a/fs/btrfs/ctree.c
++++ b/fs/btrfs/ctree.c
+@@ -5106,10 +5106,12 @@ int btrfs_del_items(struct btrfs_trans_h
+ int btrfs_prev_leaf(struct btrfs_root *root, struct btrfs_path *path)
+ {
+       struct btrfs_key key;
++      struct btrfs_key orig_key;
+       struct btrfs_disk_key found_key;
+       int ret;
+       btrfs_item_key_to_cpu(path->nodes[0], &key, 0);
++      orig_key = key;
+       if (key.offset > 0) {
+               key.offset--;
+@@ -5126,8 +5128,36 @@ int btrfs_prev_leaf(struct btrfs_root *r
+       btrfs_release_path(path);
+       ret = btrfs_search_slot(NULL, root, &key, path, 0, 0);
+-      if (ret < 0)
++      if (ret <= 0)
+               return ret;
++
++      /*
++       * Previous key not found. Even if we were at slot 0 of the leaf we had
++       * before releasing the path and calling btrfs_search_slot(), we now may
++       * be in a slot pointing to the same original key - this can happen if
++       * after we released the path, one of more items were moved from a
++       * sibling leaf into the front of the leaf we had due to an insertion
++       * (see push_leaf_right()).
++       * If we hit this case and our slot is > 0 and just decrement the slot
++       * so that the caller does not process the same key again, which may or
++       * may not break the caller, depending on its logic.
++       */
++      if (path->slots[0] < btrfs_header_nritems(path->nodes[0])) {
++              btrfs_item_key(path->nodes[0], &found_key, path->slots[0]);
++              ret = comp_keys(&found_key, &orig_key);
++              if (ret == 0) {
++                      if (path->slots[0] > 0) {
++                              path->slots[0]--;
++                              return 0;
++                      }
++                      /*
++                       * At slot 0, same key as before, it means orig_key is
++                       * the lowest, leftmost, key in the tree. We're done.
++                       */
++                      return 1;
++              }
++      }
++
+       btrfs_item_key(path->nodes[0], &found_key, 0);
+       ret = comp_keys(&found_key, &key);
+       /*
diff --git a/queue-4.14/btrfs-print-tree-parent-bytenr-must-be-aligned-to-sector-size.patch b/queue-4.14/btrfs-print-tree-parent-bytenr-must-be-aligned-to-sector-size.patch
new file mode 100644 (file)
index 0000000..a9a4526
--- /dev/null
@@ -0,0 +1,42 @@
+From c87f318e6f47696b4040b58f460d5c17ea0280e6 Mon Sep 17 00:00:00 2001
+From: Anastasia Belova <abelova@astralinux.ru>
+Date: Wed, 26 Apr 2023 14:53:23 +0300
+Subject: btrfs: print-tree: parent bytenr must be aligned to sector size
+
+From: Anastasia Belova <abelova@astralinux.ru>
+
+commit c87f318e6f47696b4040b58f460d5c17ea0280e6 upstream.
+
+Check nodesize to sectorsize in alignment check in print_extent_item.
+The comment states that and this is correct, similar check is done
+elsewhere in the functions.
+
+Found by Linux Verification Center (linuxtesting.org) with SVACE.
+
+Fixes: ea57788eb76d ("btrfs: require only sector size alignment for parent eb bytenr")
+CC: stable@vger.kernel.org # 4.14+
+Reviewed-by: Qu Wenruo <wqu@suse.com>
+Signed-off-by: Anastasia Belova <abelova@astralinux.ru>
+Reviewed-by: David Sterba <dsterba@suse.com>
+Signed-off-by: David Sterba <dsterba@suse.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ fs/btrfs/print-tree.c |    6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+--- a/fs/btrfs/print-tree.c
++++ b/fs/btrfs/print-tree.c
+@@ -130,10 +130,10 @@ static void print_extent_item(struct ext
+                       pr_cont("shared data backref parent %llu count %u\n",
+                              offset, btrfs_shared_data_ref_count(eb, sref));
+                       /*
+-                       * offset is supposed to be a tree block which
+-                       * must be aligned to nodesize.
++                       * Offset is supposed to be a tree block which must be
++                       * aligned to sectorsize.
+                        */
+-                      if (!IS_ALIGNED(offset, eb->fs_info->nodesize))
++                      if (!IS_ALIGNED(offset, eb->fs_info->sectorsize))
+                               pr_info(
+                       "\t\t\t(parent %llu not aligned to sectorsize %u)\n",
+                                    offset, eb->fs_info->sectorsize);
diff --git a/queue-4.14/cifs-fix-pcchunk-length-type-in-smb2_copychunk_range.patch b/queue-4.14/cifs-fix-pcchunk-length-type-in-smb2_copychunk_range.patch
new file mode 100644 (file)
index 0000000..3fff156
--- /dev/null
@@ -0,0 +1,34 @@
+From d66cde50c3c868af7abddafce701bb86e4a93039 Mon Sep 17 00:00:00 2001
+From: Pawel Witek <pawel.ireneusz.witek@gmail.com>
+Date: Fri, 5 May 2023 17:14:59 +0200
+Subject: cifs: fix pcchunk length type in smb2_copychunk_range
+
+From: Pawel Witek <pawel.ireneusz.witek@gmail.com>
+
+commit d66cde50c3c868af7abddafce701bb86e4a93039 upstream.
+
+Change type of pcchunk->Length from u32 to u64 to match
+smb2_copychunk_range arguments type. Fixes the problem where performing
+server-side copy with CIFS_IOC_COPYCHUNK_FILE ioctl resulted in incomplete
+copy of large files while returning -EINVAL.
+
+Fixes: 9bf0c9cd4314 ("CIFS: Fix SMB2/SMB3 Copy offload support (refcopy) for large files")
+Cc: <stable@vger.kernel.org>
+Signed-off-by: Pawel Witek <pawel.ireneusz.witek@gmail.com>
+Signed-off-by: Steve French <stfrench@microsoft.com>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ fs/cifs/smb2ops.c |    2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+--- a/fs/cifs/smb2ops.c
++++ b/fs/cifs/smb2ops.c
+@@ -891,7 +891,7 @@ smb2_copychunk_range(const unsigned int
+               pcchunk->SourceOffset = cpu_to_le64(src_off);
+               pcchunk->TargetOffset = cpu_to_le64(dest_off);
+               pcchunk->Length =
+-                      cpu_to_le32(min_t(u32, len, tcon->max_bytes_chunk));
++                      cpu_to_le32(min_t(u64, len, tcon->max_bytes_chunk));
+               /* Request server copy to target from src identified by key */
+               kfree(retbuf);
index d3e3cbc1c915fb857edc654d7af5f80430f31df0..a45d7eeb167ac909686124cc059d1724f9cea63e 100644 (file)
@@ -31,14 +31,12 @@ Link: https://lore.kernel.org/r/20230427012841.231729-1-yangjihong1@huawei.com
 Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
 Signed-off-by: Sasha Levin <sashal@kernel.org>
 ---
- tools/perf/util/symbol-elf.c | 2 +-
+ tools/perf/util/symbol-elf.c |    2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)
 
-diff --git a/tools/perf/util/symbol-elf.c b/tools/perf/util/symbol-elf.c
-index 866a61d662510..1071a276f4fdb 100644
 --- a/tools/perf/util/symbol-elf.c
 +++ b/tools/perf/util/symbol-elf.c
-@@ -504,7 +504,7 @@ static int elf_read_build_id(Elf *elf, void *bf, size_t size)
+@@ -504,7 +504,7 @@ static int elf_read_build_id(Elf *elf, v
                                size_t sz = min(size, descsz);
                                memcpy(bf, ptr, sz);
                                memset(bf + sz, 0, size - sz);
@@ -47,6 +45,3 @@ index 866a61d662510..1071a276f4fdb 100644
                                break;
                        }
                }
--- 
-2.39.2
-
index a40307871e0c767da5c0e663248c22a9f06182bc..f6929525c66e60b2ac9bdc2622e5739f3176237c 100644 (file)
@@ -94,3 +94,10 @@ alsa-caiaq-input-add-error-handling-for-unsupported-.patch
 perf-vendor-events-power9-remove-utf-8-characters-fr.patch
 perf-map-delete-two-variable-initialisations-before-.patch
 perf-symbols-fix-return-incorrect-build_id-size-in-e.patch
+btrfs-fix-btrfs_prev_leaf-to-not-return-the-same-key-twice.patch
+btrfs-print-tree-parent-bytenr-must-be-aligned-to-sector-size.patch
+cifs-fix-pcchunk-length-type-in-smb2_copychunk_range.patch
+sh-math-emu-fix-macro-redefined-warning.patch
+sh-nmi_debug-fix-return-value-of-__setup-handler.patch
+arm-dts-exynos-fix-wm8960-clock-name-in-itop-elite.patch
+arm-dts-s5pv210-correct-mipi-csis-clock-name.patch
diff --git a/queue-4.14/sh-math-emu-fix-macro-redefined-warning.patch b/queue-4.14/sh-math-emu-fix-macro-redefined-warning.patch
new file mode 100644 (file)
index 0000000..de8de10
--- /dev/null
@@ -0,0 +1,47 @@
+From 58a49ad90939386a8682e842c474a0d2c00ec39c Mon Sep 17 00:00:00 2001
+From: Randy Dunlap <rdunlap@infradead.org>
+Date: Sun, 5 Mar 2023 20:00:34 -0800
+Subject: sh: math-emu: fix macro redefined warning
+
+From: Randy Dunlap <rdunlap@infradead.org>
+
+commit 58a49ad90939386a8682e842c474a0d2c00ec39c upstream.
+
+Fix a warning that was reported by the kernel test robot:
+
+In file included from ../include/math-emu/soft-fp.h:27,
+                 from ../arch/sh/math-emu/math.c:22:
+../arch/sh/include/asm/sfp-machine.h:17: warning: "__BYTE_ORDER" redefined
+   17 | #define __BYTE_ORDER __BIG_ENDIAN
+In file included from ../arch/sh/math-emu/math.c:21:
+../arch/sh/math-emu/sfp-util.h:71: note: this is the location of the previous definition
+   71 | #define __BYTE_ORDER __LITTLE_ENDIAN
+
+Fixes: b929926f01f2 ("sh: define __BIG_ENDIAN for math-emu")
+Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
+Reported-by: kernel test robot <lkp@intel.com>
+Link: lore.kernel.org/r/202111121827.6v6SXtVv-lkp@intel.com
+Cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
+Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
+Cc: Rich Felker <dalias@libc.org>
+Cc: linux-sh@vger.kernel.org
+Reviewed-by: Geert Uytterhoeven <geert+renesas@glider.be>
+Cc: stable@vger.kernel.org
+Reviewed-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
+Link: https://lore.kernel.org/r/20230306040037.20350-5-rdunlap@infradead.org
+Signed-off-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ arch/sh/math-emu/sfp-util.h |    4 ----
+ 1 file changed, 4 deletions(-)
+
+--- a/arch/sh/math-emu/sfp-util.h
++++ b/arch/sh/math-emu/sfp-util.h
+@@ -67,7 +67,3 @@
+   } while (0)
+ #define abort()       return 0
+-
+-#define __BYTE_ORDER __LITTLE_ENDIAN
+-
+-
diff --git a/queue-4.14/sh-nmi_debug-fix-return-value-of-__setup-handler.patch b/queue-4.14/sh-nmi_debug-fix-return-value-of-__setup-handler.patch
new file mode 100644 (file)
index 0000000..2f1eec3
--- /dev/null
@@ -0,0 +1,53 @@
+From d1155e4132de712a9d3066e2667ceaad39a539c5 Mon Sep 17 00:00:00 2001
+From: Randy Dunlap <rdunlap@infradead.org>
+Date: Sun, 5 Mar 2023 20:00:32 -0800
+Subject: sh: nmi_debug: fix return value of __setup handler
+
+From: Randy Dunlap <rdunlap@infradead.org>
+
+commit d1155e4132de712a9d3066e2667ceaad39a539c5 upstream.
+
+__setup() handlers should return 1 to obsolete_checksetup() in
+init/main.c to indicate that the boot option has been handled.
+A return of 0 causes the boot option/value to be listed as an Unknown
+kernel parameter and added to init's (limited) argument or environment
+strings. Also, error return codes don't mean anything to
+obsolete_checksetup() -- only non-zero (usually 1) or zero.
+So return 1 from nmi_debug_setup().
+
+Fixes: 1e1030dccb10 ("sh: nmi_debug support.")
+Signed-off-by: Randy Dunlap <rdunlap@infradead.org>
+Reported-by: Igor Zhbanov <izh1979@gmail.com>
+Link: lore.kernel.org/r/64644a2f-4a20-bab3-1e15-3b2cdd0defe3@omprussia.ru
+Cc: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
+Cc: Yoshinori Sato <ysato@users.sourceforge.jp>
+Cc: Rich Felker <dalias@libc.org>
+Cc: linux-sh@vger.kernel.org
+Cc: stable@vger.kernel.org
+Reviewed-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
+Link: https://lore.kernel.org/r/20230306040037.20350-3-rdunlap@infradead.org
+Signed-off-by: John Paul Adrian Glaubitz <glaubitz@physik.fu-berlin.de>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ arch/sh/kernel/nmi_debug.c |    4 ++--
+ 1 file changed, 2 insertions(+), 2 deletions(-)
+
+--- a/arch/sh/kernel/nmi_debug.c
++++ b/arch/sh/kernel/nmi_debug.c
+@@ -52,7 +52,7 @@ static int __init nmi_debug_setup(char *
+       register_die_notifier(&nmi_debug_nb);
+       if (*str != '=')
+-              return 0;
++              return 1;
+       for (p = str + 1; *p; p = sep + 1) {
+               sep = strchr(p, ',');
+@@ -73,6 +73,6 @@ static int __init nmi_debug_setup(char *
+                       break;
+       }
+-      return 0;
++      return 1;
+ }
+ __setup("nmi_debug", nmi_debug_setup);