Le vendredi 10 février 2012 à 23:54 -0600, Josh Hunt a écrit :
We have hit an issue where our 32-bit applications using poll() and
passing in a value of -1 for the timeout value return after ~49 days
(2^32 msec), instead of waiting indefinitely. I've instrumented the
kernel and found we are hitting the case where poll() believes we've
passed in a positive number and thus creates a timespec, etc. I've
implemented compat_sys_poll() to sign-extend the timeout value and
resolve the issue.
There was an almost identical patch submitted last year, but for
whatever reason did not make it in:
https://lkml.org/lkml/2011/9/18/19
Probably because Thomas Meyer didnt answer to patch reviewers, and not
enough people cared.
By the way, an inline patch is better, as stated in
Documentation/SubmittingPatches
Anyway, its time to fix this bug...
Acked-by: Eric Dumazet <redacted>