Re: [PATCH v3] hwmon: lm75: Add __devinit and __devexit section initializers

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, Sep 13, 2010 at 08:18:08AM -0400, Michael Lawnick wrote:
> Datta, Shubhrajyoti said the following:
> > 
> > 
> >> -----Original Message-----
> >> From: Michael Lawnick [mailto:ml.lawnick@xxxxxx]
> >> Sent: Monday, September 13, 2010 4:42 PM
> >> To: Datta, Shubhrajyoti
> >> Cc: lm-sensors@xxxxxxxxxxxxxx
> >> Subject: Re:  [PATCH v3] hwmon: lm75: Add __devinit and
> >> __devexit section initializers
> >> 
> >> Datta, Shubhrajyoti said the following:
> >> >
> >> >
> >> >> -----Original Message-----
> >> >> From: Michael Lawnick [mailto:ml.lawnick@xxxxxx]
> >> >> Sent: Monday, September 13, 2010 2:52 PM
> >> >> To: Datta, Shubhrajyoti
> >> >> Cc: lm-sensors@xxxxxxxxxxxxxx
> >> >> Subject: Re:  [PATCH v3] hwmon: lm75: Add __devinit and
> >> >> __devexit section initializers
> >> >>
> >> >> Shubhrajyoti D said the following:
> >> >> ...
> >> >>
> >> >> > -static int
> >> >> > +static int __devinit
> >> >> >  lm75_probe(struct i2c_client *client, const struct i2c_device_id
> >> *id)
> >> >> Are you sure?
> >> >> If I understand correctly, this function will be thrown away after
> >> >> system/module init. But what's about devices that are added later?
> >> >> I would expect them to crash on init...
> >> > As all of these are I2C devices are I2C I thought it makes sense.
> >> > Are you aware of devices that can be plugged/wired runtime?
> >> 
> >> Almost all if behind a multiplexer ;-)
> > I missed this part.
> There even exist multiplexer that check the bus state and allow
> connection only within stop<->start phases.
> > 
> >> There is just some care in synchronization needed.
> >> We are currently working with such a system that dynamically adds buses
> >> and drops them again (triggered by hotplug).
> > Does it mean that all the existing drivers need to adapt.
> 
> I expect them to get adapted step by step when/if this really becomes an
> issue. Maybe someday a general cleanup will necessary (and done). Anyway
> this might be already an issue for hot plugged cards (e.g. a compact PCI
> TV card) that has a local i2c adapter on and common devices on its local
> bus. But either this scenario does not exist in practical life or was
> fixed by a local code fix.
> 
This is an interesting use case. I didn't think about it either.

Looking through other drivers, it seems to be common that __devinit and __devexit 
are used only if the device is known to be static. Some even make a destinction 
based on the interface type (eg lm78).

As such, it may be better not to apply this patch.

Guenter

_______________________________________________
lm-sensors mailing list
lm-sensors@xxxxxxxxxxxxxx
http://lists.lm-sensors.org/mailman/listinfo/lm-sensors


[Index of Archives]     [Linux Kernel]     [Linux Hardware Monitoring]     [Linux USB Devel]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [Yosemite Backpacking]

  Powered by Linux