As explained in Documentation/timers/timers-howto.txt, msleep's of < 20ms may sleep for as long as 20ms. Caller's of msleep(1) or msleep(2), etc are likely not to expect this quirky behavior - warn them.
Showing the changes to scripts/checkpatch.pl (1 of 1 file). Show all
Unified · Split
| @@ -2592,6 +2592,13 @@ sub process { · 2591 unmodified lines | |||
| 2592 | } | 2592 | } |
| 2593 | } | 2593 | } |
| 2594 | 2594 | ||
| 2595 | # warn about unexpectedly long msleep's | ||
| 2596 | if ($line =~ /\bmsleep\s*\((\d+)\);/) { | ||
| 2597 | if ($1 < 20) { | ||
| 2598 | WARN("msleep < 20ms can sleep for up to 20ms; see Documentation/timers/timers-howto.txt\n" . $line); | ||
| 2599 | } | ||
| 2600 | } | ||
| 2601 | |||
| 2595 | # warn about #ifdefs in C files | 2602 | # warn about #ifdefs in C files |
| 2596 | # if ($line =~ /^.\s*\#\s*if(|n)def/ && ($realfile =~ /\.c$/)) { | 2603 | # if ($line =~ /^.\s*\#\s*if(|n)def/ && ($realfile =~ /\.c$/)) { |
| 2597 | # print "#ifdef in C files should be avoided\n"; | 2604 | # print "#ifdef in C files should be avoided\n"; |