PM_SEND_ALL

Section: (9)
Updated: 07 August 2003
Index Return to Main Contents
 

NAME

pm_send_all - send request to all managed devices  

SYNOPSIS

int pm_send_all (pm_request_t rqst, void * data);  

ARGUMENTS

rqst
power management request
data
data for the callback
 

DESCRIPTION

Issue a power management request to a all devices. The PM_SUSPEND events are handled specially. Any device is permitted to fail a suspend by returning a non zero (error) value from its callback function. If any device vetoes a suspend request then all other devices that have suspended during the processing of this request are restored to their previous state.  

WARNING

This function takes the pm_devs_lock. The lock is not dropped until the callbacks have completed. This prevents races against pm locking functions, races against module unload pm_unregister code. It does mean however that you must not issue pm_ functions within the callback or you will deadlock and users will hate you.

Zero is returned on success. If a suspend fails then the status from the device that vetoes the suspend is returned.  

BUGS

what stops two power management requests occurring in parallel and conflicting.  

ABOUT THIS DOCUMENT

This documentation is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

For more details see the file COPYING in the source distribution of Linux.

If you have comments on the formatting of this manpage, then please contact Michael Still (mikal@stillhq.com).

This documentation was generated with kernel version 2.6.0.


 

Index

NAME
SYNOPSIS
ARGUMENTS
DESCRIPTION
WARNING
BUGS
ABOUT THIS DOCUMENT

This document was created by man2html, using the manual pages.
Time: 04:27:45 GMT, August 07, 2003