diff options
| author | Dan Williams <[email protected]> | 2016-01-15 16:55:59 -0800 |
|---|---|---|
| committer | Linus Torvalds <[email protected]> | 2016-01-15 17:56:32 -0800 |
| commit | b2e0d1625e193b40cbbd45b799f82d54d34e015c (patch) | |
| tree | 88cbdfb54fb23f3a8fae2e05c9b7c897e23fc208 /scripts/objdiff | |
| parent | fe683adabfe6629c0b6db32bbbc1ce6cacbf2117 (diff) | |
dax: fix lifetime of in-kernel dax mappings with dax_map_atomic()
The DAX implementation needs to protect new calls to ->direct_access()
and usage of its return value against the driver for the underlying
block device being disabled. Use blk_queue_enter()/blk_queue_exit() to
hold off blk_cleanup_queue() from proceeding, or otherwise fail new
mapping requests if the request_queue is being torn down.
This also introduces blk_dax_ctl to simplify the interface from fs/dax.c
through dax_map_atomic() to bdev_direct_access().
[[email protected]: fix read() of a hole]
Signed-off-by: Dan Williams <[email protected]>
Reviewed-by: Jeff Moyer <[email protected]>
Cc: Jan Kara <[email protected]>
Cc: Jens Axboe <[email protected]>
Cc: Dave Chinner <[email protected]>
Cc: Ross Zwisler <[email protected]>
Cc: Matthew Wilcox <[email protected]>
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
Diffstat (limited to 'scripts/objdiff')
0 files changed, 0 insertions, 0 deletions