diff options
| author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-08 21:27:58 -0500 |
|---|---|---|
| committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-02-08 21:27:58 -0500 |
| commit | cdecbb336e64b8a846bf97c5a275dc94fdb1083d (patch) | |
| tree | 305449237d969d0476bf66ccf401132f8265c287 /fs | |
| parent | 4e02370f64167a30ff7ba35ae5bc296f09b964d3 (diff) | |
| parent | 9c9ce763b114e608b5cf3aa6cb69ad9f6e8b6adf (diff) | |
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, | |||
| 1140 | long ret = 0; | 1140 | long ret = 0; |
| 1141 | int copy_ret; | 1141 | int copy_ret; |
| 1142 | 1142 | ||
| 1143 | /* | ||
| 1144 | * The mutex can block and wake us up and that will cause | ||
| 1145 | * wait_event_interruptible_hrtimeout() to schedule without sleeping | ||
| 1146 | * and repeat. This should be rare enough that it doesn't cause | ||
| 1147 | * peformance issues. See the comment in read_events() for more detail. | ||
| 1148 | */ | ||
| 1149 | sched_annotate_sleep(); | ||
| 1143 | mutex_lock(&ctx->ring_lock); | 1150 | mutex_lock(&ctx->ring_lock); |
| 1144 | 1151 | ||
| 1145 | /* Access to ->ring_pages here is protected by ctx->ring_lock. */ | 1152 | /* Access to ->ring_pages here is protected by ctx->ring_lock. */ |
