[PATCH v2] memory-hotplug: fix store_mem_state() return value

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[PATCH v2] memory-hotplug: fix store_mem_state() return value

Reza Arbab
Attempting to online memory which is already online will cause this:

1. store_mem_state() called with buf="online"
2. device_online() returns 1 because device is already online
3. store_mem_state() returns 1
4. calling code interprets this as 1-byte buffer read
5. store_mem_state() called again with buf="nline"
6. store_mem_state() returns -EINVAL

Example:

$ cat /sys/devices/system/memory/memory0/state
online
$ echo online > /sys/devices/system/memory/memory0/state
-bash: echo: write error: Invalid argument

Fix the return value of store_mem_state() so this doesn't happen.

Signed-off-by: Reza Arbab <[hidden email]>
---
 drivers/base/memory.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/base/memory.c b/drivers/base/memory.c
index 961e2cf..eebd9a8 100644
--- a/drivers/base/memory.c
+++ b/drivers/base/memory.c
@@ -359,7 +359,7 @@ store_mem_state(struct device *dev,
 err:
  unlock_device_hotplug();
 
- if (ret)
+ if (ret < 0)
  return ret;
  return count;
 }
--
1.8.3.1

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [PATCH v2] memory-hotplug: fix store_mem_state() return value

Reza Arbab
Hi Greg,

On Thu, May 05, 2016 at 02:07:24PM -0500, Reza Arbab wrote:
>$ echo online > /sys/devices/system/memory/memory0/state
>-bash: echo: write error: Invalid argument
>
>Fix the return value of store_mem_state() so this doesn't happen.

I can't find where this might have been committed. Am I being impatient,
or did it slip through the cracks?

--
Reza Arbab

Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [PATCH v2] memory-hotplug: fix store_mem_state() return value

Greg KH-4
On Thu, May 26, 2016 at 09:43:04AM -0500, Reza Arbab wrote:

> Hi Greg,
>
> On Thu, May 05, 2016 at 02:07:24PM -0500, Reza Arbab wrote:
> > $ echo online > /sys/devices/system/memory/memory0/state
> > -bash: echo: write error: Invalid argument
> >
> > Fix the return value of store_mem_state() so this doesn't happen.
>
> I can't find where this might have been committed. Am I being impatient, or
> did it slip through the cracks?

You ignored my patch review that asked for this patch to be changed for
some reason, which is why it was never applied.

greg k-h
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: [PATCH v2] memory-hotplug: fix store_mem_state() return value

Greg KH-4
On Thu, May 26, 2016 at 08:34:12AM -0700, Greg Kroah-Hartman wrote:

> On Thu, May 26, 2016 at 09:43:04AM -0500, Reza Arbab wrote:
> > Hi Greg,
> >
> > On Thu, May 05, 2016 at 02:07:24PM -0500, Reza Arbab wrote:
> > > $ echo online > /sys/devices/system/memory/memory0/state
> > > -bash: echo: write error: Invalid argument
> > >
> > > Fix the return value of store_mem_state() so this doesn't happen.
> >
> > I can't find where this might have been committed. Am I being impatient, or
> > did it slip through the cracks?
>
> You ignored my patch review that asked for this patch to be changed for
> some reason, which is why it was never applied.

Ah nevermind, this was v2, yes, it's in my queue, looking in my wrong
mbox.  Please be patient.
Loading...