diff options
author | Lee, Chun-Yi <joeyli.kernel@gmail.com> | 2017-07-03 21:26:10 +0800 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2017-07-04 21:45:41 +0200 |
commit | d429e5c12269a930b81d8b57b788bbe3cf12e815 (patch) | |
tree | 607835ff007b4eb5154b610aaaf8e981e064beed /drivers/scsi/sym53c416.c | |
parent | 6f7da290413ba713f0cdd9ff1a2a9bb129ef4f6c (diff) | |
download | talos-op-linux-d429e5c12269a930b81d8b57b788bbe3cf12e815.tar.gz talos-op-linux-d429e5c12269a930b81d8b57b788bbe3cf12e815.zip |
ACPI / scan: Indicate to platform when hot remove returns busy
In hotplug logic, it always indicates non-specific failure to
platform through _OST when handing ACPI hot-remove event failed. Then
platform terminates the hot-remove process but it can not identify
the reason.
Base on current hot-remove code, there have two situations that it
returns busy:
- OSPM try to offline an individual device, but the device offline
function returns "busy".
- When the ejection event is applied to an "not offlined yet"
container. OSPM sends a kobject change event to userspace and
returns "busy".
Both of them will returns -EBUSY to ACPI device hotplug function.
Then, the hotplug function indicates non-specific failure to platform
just like for any other error, e.g. -ENODEV or -EIO.
The benefit to the platform for identifying the OS "busy" state is
that it can use a different approach to handle the "busy" instead of
simply terminating the hot-remove operation for an unknown reason.
For example, the platform can wait for a while and then re-trigger
hot-remove.
Signed-off-by: "Lee, Chun-Yi" <jlee@suse.com>
Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
[ rjw: Changelog massage ]
Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
Diffstat (limited to 'drivers/scsi/sym53c416.c')
0 files changed, 0 insertions, 0 deletions