Re: [PATCH 2/3] staging: vme: add struct vme_dev for VME devices

From: Greg KH
Date: Mon Aug 29 2011 - 13:53:09 EST


On Mon, Aug 29, 2011 at 11:02:49AM +0200, Manohar Vanga wrote:
> --- a/drivers/staging/vme/vme_bridge.h
> +++ b/drivers/staging/vme/vme_bridge.h
> @@ -115,9 +115,8 @@ struct vme_bridge {
> struct list_head bus_list; /* list of VME buses */
> struct module *owner; /* module that owns the bridge */
>
> - struct device dev[VME_SLOTS_MAX]; /* Device registered with
> - * device model on VME bus
> - */
> + struct vme_dev dev[VME_SLOTS_MAX]; /* Device registered
> + * on VME bus */

Overall, this is the right way to go, using a vme_dev.

BUT, you should never have a static list of devices, these should be
pointers, not actual structures here, otherwise your reference counting
just got all messed up and is wrong.

And yes, I know you didn't create the code this way, but it needs to be
fixed _before_ you make this kind of a change.

thanks,

greg k-h
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/