lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Date:	Sat, 23 Jun 2012 23:06:06 +0200
From:	"Rafael J. Wysocki" <rjw@...k.pl>
To:	Linux PM list <linux-pm@...r.kernel.org>
Cc:	ACPI Devel Mailing List <linux-acpi@...r.kernel.org>,
	LKML <linux-kernel@...r.kernel.org>, Len Brown <lenb@...nel.org>,
	Matthew Garrett <mjg59@...f.ucam.org>,
	platform-driver-x86@...r.kernel.org,
	Eric Piel <eric.piel@...mplin-utc.net>,
	Mattia Dongili <malattia@...ux.it>,
	Harald Welte <laforge@...monks.org>
Subject: [PATCH 0/21] ACPI / PM: Switch ACPI bus type and drivers to dev_pm_ops

Hi all,

The following patchset converts the ACPI bus type and all of the ACPI drivers
to the power management handling based on struct dev_pm_ops.  It does that in
the following way:

(1) The (unused) pm_message_t argument is dropped from the ACPI driver suspend
    callback throughout the tree (patch [1/21]).

(2) A struct dev_pm_ops object is defined for the ACPI bus type (patches
    [2-3/21]) in such a way that
    (a) driver callbacks from struct acpi_device_ops are executed for drivers
        that provide them,
    (b) driver callbacks from struct dev_pm_ops are executed for drivers that
        provide them,
    (c) 0 is returned for the remaining drivers.
    Only suspend/resume, freeze/thaw, poweroff/restore bus type callbacks are
    defined, because they are sufficient for the transition (they are removed
    later on anyway).

(3) All ACPI drivers that use PM callbacks are converted to the PM handling
    based on struct dev_pm_ops (patches [4-18/21]).

(4) The ACPI bus type is modified not to execute driver callbacks from
    struct acpi_device_ops any more (patch [19/21]).  This affects several
    x86 platform drivers and the ACPI power meter driver too.

(5) The driver PM callbacks in struct acpi_device_ops are removed
    (patch [20/21]).

(6) The ACPI bus type PM callbacks added in step (2) are dropped, because they
    aren't necessary any more (the PM core will execute the driver callbacks
    directly now).

As a result, the redundant bus type level of PM handling between ACPI drivers
and the PM core is eliminated and the ACPI drivers are now able to define
runtime PM callbacks, proper hibernation callbacks and late/early callbacks
for system suspend/resume.

The patchset has been tested on Toshiba Portege R500 and more testing is in
the works.  If there are no objections, I'd like to push if for 3.6 through
the linux-pm tree.

If you want to give it a go, it's available from the pm-acpi branch of the
linux-pm tree.  Please note, however, that this branch will be rebased, because
it is based on the linux-pm tree's linux-next branch at the moment.

Thanks,
Rafael

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ