2.6.24 - self-destructing sysfs attributes

Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]
From: Andrey Borzenkov
Date: Tuesday, October 30, 2007 - 12:23 pm

I realized that in patch for ACPI battery I created perfect example of=20
self-destructing sysfs attributes. Basically, on every access to battery=20
properties we check battery status. If ACPI reports battery not present, we=
=20
remove sysfs power_supply object. I.e.

=2D> user space queries e.g. .../PNP0C0A:00/power_supply/BAT1/energy_now
  -> call acpi_battery_update
    -> battery gone
       -> call power_supply_unregister(.../PNP0C0A:00/power_supply)

I remember discussion about this but am not sure what final outcome is. So=
=20
questions

=2D is it legal in this form?
=2D what is the proper way to manage such situation?
=2D if I move (de-)registering of power_supply out of acpi_battery_update, =
is=20
extra locking (refcounting) required to keep attributes alive or sysfs will=
=20
ensure this?

TIA

=2Dandrey
Previous message: [thread] [date] [author]
Next message: [thread] [date] [author]

Messages in current thread:
2.6.24 - self-destructing sysfs attributes, Andrey Borzenkov, (Tue Oct 30, 12:23 pm)