From: Christoph Hellwig Date: Wed, 30 Nov 2016 03:33:53 +0000 (+1100) Subject: fs: make sb_init_dio_done_wq available outside of direct-io.c X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=ec1b826097f30858f9ed201cb78f1a762c50d0aa;p=linux-beck.git fs: make sb_init_dio_done_wq available outside of direct-io.c We want to use the per-sb completion workqueue from the new iomap direct I/O code. Signed-off-by: Christoph Hellwig Tested-by: Jens Axboe Reviewed-by: Darrick J. Wong Signed-off-by: Dave Chinner --- diff --git a/fs/direct-io.c b/fs/direct-io.c index fb9aa16a7727..19aa448fde6a 100644 --- a/fs/direct-io.c +++ b/fs/direct-io.c @@ -554,7 +554,7 @@ static inline int dio_bio_reap(struct dio *dio, struct dio_submit *sdio) * filesystems that don't need it and also allows us to create the workqueue * late enough so the we can include s_id in the name of the workqueue. */ -static int sb_init_dio_done_wq(struct super_block *sb) +int sb_init_dio_done_wq(struct super_block *sb) { struct workqueue_struct *old; struct workqueue_struct *wq = alloc_workqueue("dio/%s", diff --git a/fs/internal.h b/fs/internal.h index f4da3341b4a3..4fcf51766d4a 100644 --- a/fs/internal.h +++ b/fs/internal.h @@ -184,3 +184,6 @@ typedef loff_t (*iomap_actor_t)(struct inode *inode, loff_t pos, loff_t len, loff_t iomap_apply(struct inode *inode, loff_t pos, loff_t length, unsigned flags, struct iomap_ops *ops, void *data, iomap_actor_t actor); + +/* direct-io.c: */ +int sb_init_dio_done_wq(struct super_block *sb);