lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Date:	Thu, 2 Oct 2008 19:39:06 +0600
From:	"Rakib Mullick" <rakib.mullick@...il.com>
To:	"Michael Buesch" <mb@...sch.de>
Cc:	linux-kernel@...r.kernel.org
Subject: Re: [PATCH] drivers/gpio/bt8xxgpio.c Fix compilation warning.

On 10/2/08, Michael Buesch <mb@...sch.de> wrote:
> On Thursday 02 October 2008 08:59:11 Rakib Mullick wrote:
>  > drivers/gpio/bt8xxgpio.c: In function `bt8xxgpio_remove':
>  > drivers/gpio/bt8xxgpio.c:247: warning: ignoring return value of
>  > `gpiochip_remove', declared with attribute warn_unused_result
>  >
>  > Following patch removes the above warning.
>  > Thanks.
>  >
>  > Signed-off-by:        Md.Rakib H. Mullick (rakib.mullick@...il.com)
>  >
>  > --- linux-2.6.27-rc8.orig/drivers/gpio/bt8xxgpio.c    2008-10-01
>  > 19:20:59.000000000 +0600
>  > +++ linux-2.6.27-rc8/drivers/gpio/bt8xxgpio.c 2008-10-02
>  > 12:30:26.374544032 +0600
>  > @@ -242,9 +242,14 @@ err_freebg:
>  >
>  >  static void bt8xxgpio_remove(struct pci_dev *pdev)
>  >  {
>  > +     int err;
>  >       struct bt8xxgpio *bg = pci_get_drvdata(pdev);
>  >
>  > -     gpiochip_remove(&bg->gpio);
>  > +     err = gpiochip_remove(&bg->gpio);
>  > +     if (err) {
>  > +             printk(KERN_ERR "bt8xxgpio: Resource busy. Failed to remove.\n");
>  > +             return ;
>  > +     }
>  >
>  >       bgwrite(0, BT848_INT_MASK);
>  >       bgwrite(~0x0, BT848_INT_STAT);
>  >
>  >
>
>
> NACK.
>  gpiolib should be fixed.
>  It is impossible to handle this case. What your patch does is to leave the device
>  in an inconsistent state, if the gpio remove fails.
Yes, but it will notice through KERN_ERR that something bad has
happened. And if we don't get out of it then it will continue its
execution and will finish with a kfree ( I think which
is bad ). Am I missing anything ?
>
>  gpiolib is broken. It should not allow failure for the remove function, as most
>  callers cannot handle it. gpiolib should force-remove any users of the gpio line,
>  if the chip driver removes the chip. That's really the only way we can fix this.
>  Breaking the driver (to leak resources or leave the device in an inconsistent state)
>  just to get rid of a bogus warning is not the right fix.
>  Please ignore this warning for now.
>
>
>  --
>  Greetings Michael.
>
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ