Messages in this thread | | | Date | Thu, 5 Aug 2004 15:46:57 -0700 | From | Greg KH <> | Subject | Re: [PATCH] Device class reference counting |
| |
On Fri, Jul 30, 2004 at 06:03:00PM +0200, Thomas Koeller wrote: > Hi, > > I found a little issue with reference counting for > device classes in 2.6.8-rc2. Patch attached.
> --- linux-mips/drivers/base/class.c 2004-07-14 16:21:33.000000000 +0200 > +++ linux-mips-work/drivers/base/class.c 2004-07-30 17:51:09.477331128 +0200 > @@ -353,8 +353,8 @@ > struct class_interface * class_intf; > int error; > > - class_dev = class_device_get(class_dev); > - if (!class_dev || !strlen(class_dev->class_id)) > + if (!strlen(class_dev->class_id) > + || !(class_dev = class_device_get(class_dev))) > return -EINVAL;
I don't understand what you are trying to fix here. In fact, if class_dev is NULL, you will now oops.
Hm, I guess if class_dev->class_id is null, we will exit with an extra reference grabbed on the class_dev. Is that what you are trying to fix here?
If so, please rework the patch.
thanks,
greg k-h - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |