Skip to contentSkip to conversation

Patch "mtd: spi-nor: fix wrong "fully unlocked" test" has been added to the 4.7-stable tree

PATCH [email protected] 1 participant 1 message Sep 27, 2016

Subsystems (3)
lore
Share & tools
lore

[email protected]

author maintainer Applied
#0 lore raw

This is a note to let you know that I've just added the patch titled

mtd: spi-nor: fix wrong "fully unlocked" test

to the 4.7-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
mtd-spi-nor-fix-wrong-fully-unlocked-test.patch
and it can be found in the queue-4.7 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.

Quoted 1 line

From 06586204714b7befec99e554c71687b0b40f351c Mon Sep 17 00:00:00 2001

From: Brian Norris <[email protected]>
Date: Fri, 24 Jun 2016 10:38:14 -0700
Subject: mtd: spi-nor: fix wrong "fully unlocked" test

From: Brian Norris <[email protected]>

commit 06586204714b7befec99e554c71687b0b40f351c upstream.

In stm_unlock(), the test to determine whether we've fully unlocked the flash checks for the lock length to be equal to the flash size. That is a typo/think-o -- the condition actually means the flash is completely *locked.* We should be using the inverse condition -- that the lock length is 0 (i.e., no protection).

The result of this bug is that we never actually turn off the Status Register Write Disable bit, even if the flash is completely unlocked. Now we can.

Fixes 47b8edbf0d43 ("mtd: spi-nor: disallow further writes to SR if WP# is low")
Cc Ezequiel Garcia <[email protected]>
---
 drivers/mtd/spi-nor/spi-nor.c |    2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)
drivers/mtd/spi-nor/spi-nor.c +1 -1
@@ -661,7 +661,7 @@ static int stm_unlock(struct spi_nor *no
 	status_new = (status_old & ~mask & ~SR_TB) | val;
 
 	/* Don't protect status register if we're fully unlocked */
-	if (lock_len == mtd->size)
+	if (lock_len == 0)
 		status_new &= ~SR_SRWD;
 
 	if (!use_top)

Patches currently in stable-queue which might be from [email protected] are

queue-4.7/mtd-pmcmsp-flash-allocating-too-much-in-init_msp_flash.patch queue-4.7/mtd-maps-sa1100-flash-potential-null-dereference.patch queue-4.7/mtd-spi-nor-fix-wrong-fully-unlocked-test.patch