Re: [tip:locking/core] sched/wait: Fix signal handling in bit wait helpers
From: NeilBrown
Date: Tue Dec 08 2015 - 20:06:47 EST
On Tue, Dec 08 2015, Peter Zijlstra wrote:
>>
>
> *sigh*, so that patch was broken.. the below might fix it, but please
> someone look at it, I seem to have a less than stellar track record
> here...
This new change seems to be more intrusive than should be needed.
Can't we just do:
__sched int bit_wait(struct wait_bit_key *word)
{
+ long state = current->state;
- if (signal_pending_state(current->state, current))
- return 1;
schedule();
+ if (signal_pending_state(state, current))
+ return -EINTR;
return 0;
}
??
(and sorry for breaking this in the first place!)
NeilBrown
Attachment:
signature.asc
Description: PGP signature