Re: [PATCH v2 3/3] thermal: Make THERMAL_HWMON implementationfully internal

From: Guenter Roeck
Date: Tue Apr 26 2011 - 13:44:00 EST


On Tue, 2011-04-26 at 12:29 -0400, Jean Delvare wrote:
> On Tue, 26 Apr 2011 08:52:12 -0700, Guenter Roeck wrote:
> > On Tue, Apr 26, 2011 at 11:04:07AM -0400, Jean Delvare wrote:
> > > THERMAL_HWMON is implemented inside the thermal_sys driver and has no
> > > effect on drivers implementing thermal zones, so they shouldn't see
> > > anything related to it in <linux/thermal.h>. Making the THERMAL_HWMON
> > > implementation fully internal has two advantages beyond the cleaner
> > > design:
> > > * This avoids rebuilding all thermal drivers if the THERMAL_HWMON
> > > implementation changes, or if CONFIG_THERMAL_HWMON gets enabled or
> > > disabled.
> > > * This avoids breaking the thermal kABI in these cases too, which
> > > should make distributions happy.
> > >
> > > The only drawback I can see is slightly higher memory fragmentation,
> > > as the number of kzalloc() calls will increase by one per thermal zone.
> > > But I doubt it will be a problem in practice, as I've never seen a
> > > system with more than two thermal zones.
> > >
> > > Signed-off-by: Jean Delvare <khali@xxxxxxxxxxxx>
> > > Cc: Rene Herman <rene.herman@xxxxxxxxx>
> > > Cc: Len Brown <len.brown@xxxxxxxxx>
> > > Cc: Guenter Roeck <guenter.roeck@xxxxxxxxxxxx>
> > > ---
> > > * If memory fragmentation is really a concern to anyone, it would be
> > > possible to save one kalloc for the first temperature input of each
> > > zone type, as the price of slightly more complex code.
> > >
> > > * Removal code path is untested, as I have never been able to unload
> > > the thermal_sys module on any of my systems. Something is pinning it
> > > and I have no idea what it is.
> > >
> > Doesn't lsmod show the culprit ?
>
> No, it's not a module dependency. The reference counter is set to 1,
> so somewhere in the kernel something is taking a reference to the
> module and won't release it. I wish this was better instrumented so
> that it would be possible to know who is doing that.

The most likely culprit seems to be acpi.

Guenter


--
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/