From: Andrew M. <ak...@os...> - 2005-02-23 03:50:12
|
Keiichiro Tokunaga <tok...@jp...> wrote: > > > This fixes a if-statement in setup_sys_fs_device_files(). > It seems to assume that 'struct acpi_device_flags.ejectable' > indicates whether a device has _EJ0 or not. But this is > not a right assumption. It indicates whether a device has > _EJ0|_EJD (See acpi_bus_get_flags() function). > setup_sys_fs_device_files() creates 'eject' file for > devices that have _EJ0 control method under a corresponding > directory in /sys/firmware/acpi/namespace/ACPI/. 'eject' > file is used to trigger hot-removal function from userland. > > Thanks, > Keiichiro Tokunaga > > > > Signed-off-by: Keiichiro Tokunaga <tok...@jp...> > --- > > linux-2.6.11-rc4-kei/drivers/acpi/scan.c | 10 +++++++++- > 1 files changed, 9 insertions(+), 1 deletion(-) > > diff -puN drivers/acpi/scan.c~eject_interface_bug drivers/acpi/scan.c > --- linux-2.6.11-rc4/drivers/acpi/scan.c~eject_interface_bug 2005-02-22 18:22:29.000000000 +0900 > +++ linux-2.6.11-rc4-kei/drivers/acpi/scan.c 2005-02-22 18:48:09.000000000 +0900 > @@ -358,7 +358,15 @@ setup_sys_fs_device_files ( > struct acpi_device *dev, > acpi_device_sysfs_files *func) > { > - if (dev->flags.ejectable == 1) > + acpi_status status; > + acpi_handle temp = NULL; > + > + /* > + * If device has _EJ0, 'eject' file is created that is used to trigger > + * hot-removal function from userland. > + */ > + status = acpi_get_handle(dev->handle, "_EJ0", &temp); > + if (ACPI_SUCESS(status)) This won't compile. So... how well tested can it be? |