diff mbox series

nvmem: core: Check read_only flag for force_ro in bin_attr_nvmem_write()

Message ID 20240713154001.107439-1-marex@denx.de
State Not Applicable
Headers show
Series nvmem: core: Check read_only flag for force_ro in bin_attr_nvmem_write() | expand

Commit Message

Marek Vasut July 13, 2024, 3:39 p.m. UTC
The bin_attr_nvmem_write() must check the read_only flag and block
writes on read-only devices, now that a nvmem device can be switched
between read-write and read-only mode at runtime using the force_ro
attribute. Add the missing check.

Fixes: 9d7eb234ac7a ("nvmem: core: Implement force_ro sysfs attribute")
Signed-off-by: Marek Vasut <marex@denx.de>
---
Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
Cc: linux-kernel@vger.kernel.org
---
 drivers/nvmem/core.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Marek Vasut Sept. 24, 2024, 10:42 p.m. UTC | #1
On 7/13/24 5:39 PM, Marek Vasut wrote:
> The bin_attr_nvmem_write() must check the read_only flag and block
> writes on read-only devices, now that a nvmem device can be switched
> between read-write and read-only mode at runtime using the force_ro
> attribute. Add the missing check.
> 
> Fixes: 9d7eb234ac7a ("nvmem: core: Implement force_ro sysfs attribute")
> Signed-off-by: Marek Vasut <marex@denx.de>
> ---
> Cc: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
> Cc: linux-kernel@vger.kernel.org
It seems this bugfix is not even in next, any news ?
diff mbox series

Patch

diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c
index 516dfd861b9f9..9cfe7d4bcda39 100644
--- a/drivers/nvmem/core.c
+++ b/drivers/nvmem/core.c
@@ -267,7 +267,7 @@  static ssize_t bin_attr_nvmem_write(struct file *filp, struct kobject *kobj,
 
 	count = round_down(count, nvmem->word_size);
 
-	if (!nvmem->reg_write)
+	if (!nvmem->reg_write || nvmem->read_only)
 		return -EPERM;
 
 	rc = nvmem_reg_write(nvmem, pos, buf, count);