mirror of
https://github.com/Fishwaldo/Star64_linux.git
synced 2025-07-22 23:04:43 +00:00
Add down_timeout and change ACPI to use it
ACPI currently emulates a timeout for semaphores with calls to down_trylock and sleep. This produces horrible behaviour in terms of fairness and excessive wakeups. Now that we have a unified semaphore implementation, adding a real down_trylock is almost trivial. Signed-off-by: Matthew Wilcox <willy@linux.intel.com>
This commit is contained in:
parent
f06d968658
commit
f1241c87a1
3 changed files with 62 additions and 75 deletions
|
@ -74,6 +74,12 @@ extern int __must_check down_killable(struct semaphore *sem);
|
|||
*/
|
||||
extern int __must_check down_trylock(struct semaphore *sem);
|
||||
|
||||
/*
|
||||
* As down(), except this function will return -ETIME if it fails to
|
||||
* acquire the semaphore within the specified number of jiffies.
|
||||
*/
|
||||
extern int __must_check down_timeout(struct semaphore *sem, long jiffies);
|
||||
|
||||
/*
|
||||
* Release the semaphore. Unlike mutexes, up() may be called from any
|
||||
* context and even by tasks which have never called down().
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue