2011-02-06 20:39:33

by Mark Lord

[permalink] [raw]
Subject: PATCH: drivers/staging/lirc/lirc_serial.c: use IS_ERR()

The lirc_serial.c module has never worked with ordinary homebrew
serial blaster hardware, and leaks memory when this is attempted.

Fix it by replacing incorrect usage of PTR_ERR() with IS_ERR().
(patch is inline and also attached to bypass mailer issues).

Signed-off-by: Mark Lord <[email protected]>

--- linux-2.6.37/drivers/staging/lirc/lirc_serial.c 2011-01-04
19:50:19.000000000 -0500
+++ linux/drivers/staging/lirc/lirc_serial.c 2011-02-06 15:33:49.854453928 -0500
@@ -966,7 +966,7 @@
if (n % sizeof(int) || count % 2 == 0)
return -EINVAL;
wbuf = memdup_user(buf, n);
- if (PTR_ERR(wbuf))
+ if (IS_ERR(wbuf))
return PTR_ERR(wbuf);
spin_lock_irqsave(&hardware[type].lock, flags);
if (type == LIRC_IRDEO) {


Attachments:
lirc_serial_fix.patch (428.00 B)

2011-02-08 21:34:44

by Mark Lord

[permalink] [raw]
Subject: Re: PATCH: drivers/staging/lirc/lirc_serial.c: use IS_ERR()

On 11-02-06 03:39 PM, Mark Lord wrote:
> The lirc_serial.c module has never worked with ordinary homebrew
> serial blaster hardware, and leaks memory when this is attempted.
>
> Fix it by replacing incorrect usage of PTR_ERR() with IS_ERR().
> (patch is inline and also attached to bypass mailer issues).
>
> Signed-off-by: Mark Lord <[email protected]>
>
> --- linux-2.6.37/drivers/staging/lirc/lirc_serial.c 2011-01-04
> 19:50:19.000000000 -0500
> +++ linux/drivers/staging/lirc/lirc_serial.c 2011-02-06 15:33:49.854453928 -0500
> @@ -966,7 +966,7 @@
> if (n % sizeof(int) || count % 2 == 0)
> return -EINVAL;
> wbuf = memdup_user(buf, n);
> - if (PTR_ERR(wbuf))
> + if (IS_ERR(wbuf))
> return PTR_ERR(wbuf);
> spin_lock_irqsave(&hardware[type].lock, flags);
> if (type == LIRC_IRDEO) {


Anyone out there?

Greg?


Attachments:
lirc_serial_fix.patch (428.00 B)

2011-02-09 19:59:21

by Greg KH

[permalink] [raw]
Subject: Re: PATCH: drivers/staging/lirc/lirc_serial.c: use IS_ERR()

On Tue, Feb 08, 2011 at 04:34:39PM -0500, Mark Lord wrote:
> On 11-02-06 03:39 PM, Mark Lord wrote:
> > The lirc_serial.c module has never worked with ordinary homebrew
> > serial blaster hardware, and leaks memory when this is attempted.
> >
> > Fix it by replacing incorrect usage of PTR_ERR() with IS_ERR().
> > (patch is inline and also attached to bypass mailer issues).
> >
> > Signed-off-by: Mark Lord <[email protected]>
> >
> > --- linux-2.6.37/drivers/staging/lirc/lirc_serial.c 2011-01-04
> > 19:50:19.000000000 -0500
> > +++ linux/drivers/staging/lirc/lirc_serial.c 2011-02-06 15:33:49.854453928 -0500
> > @@ -966,7 +966,7 @@
> > if (n % sizeof(int) || count % 2 == 0)
> > return -EINVAL;
> > wbuf = memdup_user(buf, n);
> > - if (PTR_ERR(wbuf))
> > + if (IS_ERR(wbuf))
> > return PTR_ERR(wbuf);
> > spin_lock_irqsave(&hardware[type].lock, flags);
> > if (type == LIRC_IRDEO) {
>
>
> Anyone out there?
>
> Greg?

Patience please, I just got over the flu and am now catching up on
patches. I'll go queue this up now.

thanks,

greg k-h

2011-02-09 19:59:51

by Greg KH

[permalink] [raw]
Subject: Re: PATCH: drivers/staging/lirc/lirc_serial.c: use IS_ERR()

On Wed, Feb 09, 2011 at 11:52:38AM -0800, Greg KH wrote:
> On Tue, Feb 08, 2011 at 04:34:39PM -0500, Mark Lord wrote:
> > On 11-02-06 03:39 PM, Mark Lord wrote:
> > > The lirc_serial.c module has never worked with ordinary homebrew
> > > serial blaster hardware, and leaks memory when this is attempted.
> > >
> > > Fix it by replacing incorrect usage of PTR_ERR() with IS_ERR().
> > > (patch is inline and also attached to bypass mailer issues).
> > >
> > > Signed-off-by: Mark Lord <[email protected]>
> > >
> > > --- linux-2.6.37/drivers/staging/lirc/lirc_serial.c 2011-01-04
> > > 19:50:19.000000000 -0500
> > > +++ linux/drivers/staging/lirc/lirc_serial.c 2011-02-06 15:33:49.854453928 -0500
> > > @@ -966,7 +966,7 @@
> > > if (n % sizeof(int) || count % 2 == 0)
> > > return -EINVAL;
> > > wbuf = memdup_user(buf, n);
> > > - if (PTR_ERR(wbuf))
> > > + if (IS_ERR(wbuf))
> > > return PTR_ERR(wbuf);
> > > spin_lock_irqsave(&hardware[type].lock, flags);
> > > if (type == LIRC_IRDEO) {
> >
> >
> > Anyone out there?
> >
> > Greg?
>
> Patience please, I just got over the flu and am now catching up on
> patches. I'll go queue this up now.

Actually, it's already fixed in the current tree thanks to Jarod in
commit 88914bdf8c677ebd7e797adac05e47303fd6ac77 so you shouldn't need to
worry about this anymore.

thanks,

greg k-h