From mboxrd@z Thu Jan 1 00:00:00 1970 From: Srinivas Kandagatla Subject: Re: [PATCH v2 2/4] nvmem: NXP LPC18xx EEPROM memory NVMEM driver Date: Mon, 16 Nov 2015 15:37:58 +0000 Message-ID: <5649F856.9000101@linaro.org> References: <1445275946-32653-1-git-send-email-ariel@vanguardiasur.com.ar> <1445275946-32653-3-git-send-email-ariel@vanguardiasur.com.ar> <562E2CB1.80706@linaro.org> <563385B2.90403@vanguardiasur.com.ar> <5649F74A.9020706@vanguardiasur.com.ar> Mime-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <5649F74A.9020706-30ULvvUtt6G51wMPkGsGjgyUoB5FGQPZ@public.gmane.org> Sender: devicetree-owner-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To: Ariel D'Alessandro , Joachim Eastwood Cc: "linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org" , devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, Maxime Ripard , Ezequiel Garcia , Kumar Gala , Ian Campbell , Mark Rutland , Pawel Moll , Rob Herring List-Id: devicetree@vger.kernel.org On 16/11/15 15:33, Ariel D'Alessandro wrote: >>> >>-------------------------------->cut<---------------------------------- >>> >> From 8cae10eff8ea8da9c5a8058ff75abeeddd8a8224 Mon Sep 17 00:00:00 2001 >>> >>From: Srinivas Kandagatla >>> >>Date: Mon, 26 Oct 2015 13:30:24 +0000 >>> >>Subject: [PATCH] nvmem: core: return error for non word aligned bytes >>> >> >>> >>nvmem providers have restrictions on register strides, so return error >>> >>code when users attempt to read/write buffers with sizes which are not >>> >>aligned to the word boundary. >>> >> >>> >>Without this patch the userspace would continue to try as it does not >>> >>get any error from the nvmem core, resulting in a hang. >>> >> >>> >>Signed-off-by: Srinivas Kandagatla >>> >>--- >>> >> drivers/nvmem/core.c | 6 ++++++ >>> >> 1 file changed, 6 insertions(+) >>> >> >>> >>diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c >>> >>index 6fd4e5a..9d11d98 100644 >>> >>--- a/drivers/nvmem/core.c >>> >>+++ b/drivers/nvmem/core.c >>> >>@@ -70,6 +70,9 @@ static ssize_t bin_attr_nvmem_read(struct file *filp, >>> >>struct kobject *kobj, >>> >> if (pos >= nvmem->size) >>> >> return 0; >>> >> >>> >>+ if (count < nvmem->word_size) >>> >>+ return -EINVAL; >>> >>+ >>> >> if (pos + count > nvmem->size) >>> >> count = nvmem->size - pos; >>> >> >>> >>@@ -95,6 +98,9 @@ static ssize_t bin_attr_nvmem_write(struct file *filp, >>> >>struct kobject *kobj, >>> >> if (pos >= nvmem->size) >>> >> return 0; >>> >> >>> >>+ if (count < nvmem->word_size) >>> >>+ return -EINVAL; >>> >>+ >>> >> if (pos + count > nvmem->size) >>> >> count = nvmem->size - pos; >>> >> >> > >> >Patch looks good to me. I think that it solves the issue. >> >I don't have the board here right now, so I'll check it ASAP and give >> >some feedback. > Finally tested this. As it seemed, it solved the issue. > Are you submitting a patch for this? Yes, I will send a patch to the mailing list. --srini > > Thanks again. -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html From mboxrd@z Thu Jan 1 00:00:00 1970 From: srinivas.kandagatla@linaro.org (Srinivas Kandagatla) Date: Mon, 16 Nov 2015 15:37:58 +0000 Subject: [PATCH v2 2/4] nvmem: NXP LPC18xx EEPROM memory NVMEM driver In-Reply-To: <5649F74A.9020706@vanguardiasur.com.ar> References: <1445275946-32653-1-git-send-email-ariel@vanguardiasur.com.ar> <1445275946-32653-3-git-send-email-ariel@vanguardiasur.com.ar> <562E2CB1.80706@linaro.org> <563385B2.90403@vanguardiasur.com.ar> <5649F74A.9020706@vanguardiasur.com.ar> Message-ID: <5649F856.9000101@linaro.org> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On 16/11/15 15:33, Ariel D'Alessandro wrote: >>> >>-------------------------------->cut<---------------------------------- >>> >> From 8cae10eff8ea8da9c5a8058ff75abeeddd8a8224 Mon Sep 17 00:00:00 2001 >>> >>From: Srinivas Kandagatla >>> >>Date: Mon, 26 Oct 2015 13:30:24 +0000 >>> >>Subject: [PATCH] nvmem: core: return error for non word aligned bytes >>> >> >>> >>nvmem providers have restrictions on register strides, so return error >>> >>code when users attempt to read/write buffers with sizes which are not >>> >>aligned to the word boundary. >>> >> >>> >>Without this patch the userspace would continue to try as it does not >>> >>get any error from the nvmem core, resulting in a hang. >>> >> >>> >>Signed-off-by: Srinivas Kandagatla >>> >>--- >>> >> drivers/nvmem/core.c | 6 ++++++ >>> >> 1 file changed, 6 insertions(+) >>> >> >>> >>diff --git a/drivers/nvmem/core.c b/drivers/nvmem/core.c >>> >>index 6fd4e5a..9d11d98 100644 >>> >>--- a/drivers/nvmem/core.c >>> >>+++ b/drivers/nvmem/core.c >>> >>@@ -70,6 +70,9 @@ static ssize_t bin_attr_nvmem_read(struct file *filp, >>> >>struct kobject *kobj, >>> >> if (pos >= nvmem->size) >>> >> return 0; >>> >> >>> >>+ if (count < nvmem->word_size) >>> >>+ return -EINVAL; >>> >>+ >>> >> if (pos + count > nvmem->size) >>> >> count = nvmem->size - pos; >>> >> >>> >>@@ -95,6 +98,9 @@ static ssize_t bin_attr_nvmem_write(struct file *filp, >>> >>struct kobject *kobj, >>> >> if (pos >= nvmem->size) >>> >> return 0; >>> >> >>> >>+ if (count < nvmem->word_size) >>> >>+ return -EINVAL; >>> >>+ >>> >> if (pos + count > nvmem->size) >>> >> count = nvmem->size - pos; >>> >> >> > >> >Patch looks good to me. I think that it solves the issue. >> >I don't have the board here right now, so I'll check it ASAP and give >> >some feedback. > Finally tested this. As it seemed, it solved the issue. > Are you submitting a patch for this? Yes, I will send a patch to the mailing list. --srini > > Thanks again.