Skip to contentSkip to conversation

FAILED: patch "[PATCH] mtd: rawnand: diskonchip: Fix the probe error path" failed to apply to 4.19-stable tree

PATCH [email protected] 2 participants 3 messages Jun 19, 2020 – Jun 23, 2020

Subsystems (3)
lore
Share & tools
lore

[email protected]

author maintainer
#0 lore raw

The patch below does not apply to the 4.19-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

thanks,

greg k-h

------------------ original commit in Linus's tree ------------------

From c5be12e45940f1aa1b5dfa04db5d15ad24f7c896 Mon Sep 17 00:00:00 2001
From: Miquel Raynal <[email protected]>
Date: Tue, 19 May 2020 14:59:45 +0200
Subject: [PATCH] mtd: rawnand: diskonchip: Fix the probe error path

Not sure nand_cleanup() is the right function to call here but in any case it is not nand_release(). Indeed, even a comment says that calling nand_release() is a bit of a hack as there is no MTD device to unregister. So switch to nand_cleanup() for now and drop this comment.

There is no Fixes tag applying here as the use of nand_release()
in this driver predates by far the introduction of nand_cleanup() in
commit d44154f969a4 ("mtd: nand: Provide nand_cleanup() function to free NAND related resources") which makes this change possible. However, pointing this commit as the
culprit for backporting purposes makes sense even if it did not intruce
any bug.

Fixes d44154f969a4 ("mtd: nand: Provide nand_cleanup() function to free NAND related resources")
drivers/mtd/nand/raw/diskonchip.c +2 -5
index 97f0b05b47c1..f8ccee797645 100644
@@ -1482,13 +1482,10 @@ static int __init doc_probe(unsigned long physadr)
 		numchips = doc2001_init(mtd);
 
 	if ((ret = nand_scan(nand, numchips)) || (ret = doc->late_init(mtd))) {
-		/* DBB note: i believe nand_release is necessary here, as
+		/* DBB note: i believe nand_cleanup is necessary here, as
 		   buffers may have been allocated in nand_base.  Check with
 		   Thomas. FIX ME! */
-		/* nand_release will call mtd_device_unregister, but we
-		   haven't yet added it.  This is handled without incident by
-		   mtd_device_unregister, as far as I can tell. */
-		nand_release(nand);
+		nand_cleanup(nand);
 		goto fail;
 	}
 
maintainer
#1 lore raw
Quoted 30 lines · On Fri, Jun 19, 2020 at 03:47:46PM +0200, [email protected] wrote:

The patch below does not apply to the 4.19-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

thanks,

greg k-h

------------------ original commit in Linus's tree ------------------

From c5be12e45940f1aa1b5dfa04db5d15ad24f7c896 Mon Sep 17 00:00:00 2001
From: Miquel Raynal <[email protected]>
Date: Tue, 19 May 2020 14:59:45 +0200
Subject: [PATCH] mtd: rawnand: diskonchip: Fix the probe error path

Not sure nand_cleanup() is the right function to call here but in any case it is not nand_release(). Indeed, even a comment says that calling nand_release() is a bit of a hack as there is no MTD device to unregister. So switch to nand_cleanup() for now and drop this comment.

There is no Fixes tag applying here as the use of nand_release()
in this driver predates by far the introduction of nand_cleanup() in
commit d44154f969a4 ("mtd: nand: Provide nand_cleanup() function to free NAND related resources") which makes this change possible. However, pointing this commit as the
culprit for backporting purposes makes sense even if it did not intruce
any bug.

Quoted 4 lines
Fixes d44154f969a4 ("mtd: nand: Provide nand_cleanup() function to free NAND related resources")

Some code refactoring:

59ac276f2227 ("mtd: rawnand: Pass a nand_chip object to nand_release()") 00ad378f304a ("mtd: rawnand: Pass a nand_chip object to nand_scan()")

And movement (drivers/mtd/nand/diskonchip.c -> drivers/mtd/nand/raw/diskonchip.c) in older branches. I've fixed it up and queued for 4.19-4.9.

Signature · 2 lines
Thanks,
Sasha
maintainer
#2 lore raw
Quoted 36 lines · Sasha Levin
Quoted 30 lines · On Fri, Jun 19, 2020 at 03:47:46PM +0200, [email protected] wrote:

The patch below does not apply to the 4.19-stable tree.
If someone wants it applied there, or to any other stable or longterm tree, then please email the backport, including the original git commit id to <[email protected]>.

thanks,

greg k-h

------------------ original commit in Linus's tree ------------------

From c5be12e45940f1aa1b5dfa04db5d15ad24f7c896 Mon Sep 17 00:00:00 2001
From: Miquel Raynal <[email protected]>
Date: Tue, 19 May 2020 14:59:45 +0200
Subject: [PATCH] mtd: rawnand: diskonchip: Fix the probe error path

Not sure nand_cleanup() is the right function to call here but in any case it is not nand_release(). Indeed, even a comment says that calling nand_release() is a bit of a hack as there is no MTD device to unregister. So switch to nand_cleanup() for now and drop this comment.

There is no Fixes tag applying here as the use of nand_release()
in this driver predates by far the introduction of nand_cleanup() in
commit d44154f969a4 ("mtd: nand: Provide nand_cleanup() function to free NAND related resources") which makes this change possible. However, pointing this commit as the
culprit for backporting purposes makes sense even if it did not intruce
any bug.

Quoted 4 lines
Fixes d44154f969a4 ("mtd: nand: Provide nand_cleanup() function to free NAND related resources")
Quoted 8 lines

Some code refactoring:

59ac276f2227 ("mtd: rawnand: Pass a nand_chip object to nand_release()") 00ad378f304a ("mtd: rawnand: Pass a nand_chip object to nand_scan()")

And movement (drivers/mtd/nand/diskonchip.c -> drivers/mtd/nand/raw/diskonchip.c) in older branches. I've fixed it up and queued for 4.19-4.9.

I've changed my mind and grabbed both:

59ac276f2227 ("mtd: rawnand: Pass a nand_chip object to nand_release()") 00ad378f304a ("mtd: rawnand: Pass a nand_chip object to nand_scan()")

Which allowed my to (relatively) easily grabbed all the other failed mtd patches into 4.19-4.9.

Signature · 2 lines
Thanks,
Sasha