diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-09 05:27:58 +0300 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-09 05:27:58 +0300 |
commit | cdecbb336e64b8a846bf97c5a275dc94fdb1083d (patch) | |
tree | 305449237d969d0476bf66ccf401132f8265c287 /fs | |
parent | 4e02370f64167a30ff7ba35ae5bc296f09b964d3 (diff) | |
parent | 9c9ce763b114e608b5cf3aa6cb69ad9f6e8b6adf (diff) | |
download | linux-cdecbb336e64b8a846bf97c5a275dc94fdb1083d.tar.xz |
Merge git://git.kvack.org/~bcrl/aio-fixes
Pull aio nested sleep annotation from Ben LaHaise,
* git://git.kvack.org/~bcrl/aio-fixes:
aio: annotate aio_read_event_ring for sleep patterns
Diffstat (limited to 'fs')
-rw-r--r-- | fs/aio.c | 7 |
1 files changed, 7 insertions, 0 deletions
@@ -1140,6 +1140,13 @@ static long aio_read_events_ring(struct kioctx *ctx, long ret = 0; int copy_ret; + /* + * The mutex can block and wake us up and that will cause + * wait_event_interruptible_hrtimeout() to schedule without sleeping + * and repeat. This should be rare enough that it doesn't cause + * peformance issues. See the comment in read_events() for more detail. + */ + sched_annotate_sleep(); mutex_lock(&ctx->ring_lock); /* Access to ->ring_pages here is protected by ctx->ring_lock. */ |