public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* RE: [ACPI] PATCH-ACPI based CPU hotplug[2/6]-ACPI Eject interfacesupport
@ 2004-09-21  2:30 Yu, Luming
  2004-09-21  3:02 ` Alex Williamson
  0 siblings, 1 reply; 4+ messages in thread
From: Yu, Luming @ 2004-09-21  2:30 UTC (permalink / raw)
  To: Alex Williamson, Dmitry Torokhov
  Cc: acpi-devel, Keshavamurthy, Anil S, Brown, Len, LHNS list,
	Linux IA64, Linux Kernel

>> > > 
>> > > Hi Anil,
>> > > 
>> > > I obviously failed to deliver my idea :) I meant that I 
>would like add eject
>> > > attribute (along with maybe status, hid and some others) 
>to kobjects in
>> > > /sys/firmware/acpi tree.
>> > > 
>> > 
>> > Dmitry,
>> > 
>> >    See the patch I just posted to acpi-devel and lkml (Subject:
>> > [PATCH/RFC] exposing ACPI objects in sysfs).  It exposes 
>acpi objects as
>> > you describe.   Something simple like:
>> > 
>> >  # cat /sys/firmware/acpi/namespace/ACPI/_SB/LSB0/_EJ0
>> > 
>> > Will call the _EJ0 method on the ACPI device.  You can 
>evaluate eject
>> > dependencies using the _EJD method.
>> > 
>> > 	Alex
>> > 
>> 
>> Alex,
>> 
>> While I think that your patch is very important and should 
>be included (maybe
>> if not as is if somebody has some objections but in some 
>other form) I see it
>> more like developer's tool. I imagined status, HID, eject 
>etc. attributes to
>> be sanitized interface to kernel's data, not necessarily 
>causing re-evaluation.
>> 
>
>Dmitry,
>
>   I imagined the sanitized interfaces would be provided via a 
>userspace
>library, similar to how lspci provides a clean interface to all of the
>PCI data.  An "lsacpi" tool could extract the information into 
>something
>more like you suggest.  If you have objects exposed as human
>readable/writable files, I think you'll quickly end up with a _STA
>driver, _HID driver, _CID driver, _ADR driver, _UID driver, 
>_EJx driver,
>etc, etc, etc...  I don't think we want that kind of bloat in 
>the kernel
>(that's what userspace is for ;^).  Providing a solid, direct interface
>to ACPI methods in the kernel seems like the most flexible, powerful
>interface IMHO.  Thanks,
>
>	Alex
>
>> So it could be like this:
>> 
>> /sys/firmware/acpi/namespace/ACPI/_SB/LSB0/status
>> /sys/firmware/acpi/namespace/ACPI/_SB/LSB0/removable
>> /sys/firmware/acpi/namespace/ACPI/_SB/LSB0/lockable
>> ..
>> /sys/firmware/acpi/namespace/ACPI/_SB/LSB0/eject
>> 
>> And your raw access to the ACPI methods could reside under raw:
>> 
>> /sys/firmware/acpi/namespace/ACPI/_SB/LSB0/raw/_STA
>> /sys/firmware/acpi/namespace/ACPI/_SB/LSB0/raw/_RNV
>> /sys/firmware/acpi/namespace/ACPI/_SB/LSB0/raw/_LCK
>> ..
>> /sys/firmware/acpi/namespace/ACPI/_SB/LSB0/raw/_EJ0
>

  This sounds like a good idea. To call the raw AML methods from
User space, just need to solve the problem of argument passing.
But, some AML methods are risky to be called directly from user space,
Not only because the side effect of its execution, but also because
it could trigger potential AML method bug or interpreter bug, or even
architectural defect.  All of these headache is due to the AML method
 is NOT intended for being used by userspace program.

Thanks,
Luming



  


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2004-09-21 18:11 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-09-21  2:30 [ACPI] PATCH-ACPI based CPU hotplug[2/6]-ACPI Eject interfacesupport Yu, Luming
2004-09-21  3:02 ` Alex Williamson
2004-09-21 17:25   ` Theodore Ts'o
2004-09-21 18:10     ` Alex Williamson

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox