fs: make sb_init_dio_done_wq available outside of direct-io.c
authorChristoph Hellwig <hch@lst.de>
Wed, 30 Nov 2016 03:33:53 +0000 (14:33 +1100)
committerDave Chinner <david@fromorbit.com>
Wed, 30 Nov 2016 03:33:53 +0000 (14:33 +1100)
We want to use the per-sb completion workqueue from the new iomap
direct I/O code.

Signed-off-by: Christoph Hellwig <hch@lst.de>
Tested-by: Jens Axboe <axboe@fb.com>
Reviewed-by: Darrick J. Wong <darrick.wong@oracle.com>
Signed-off-by: Dave Chinner <david@fromorbit.com>
fs/direct-io.c
fs/internal.h

index fb9aa16a77272818e39294b21506927076da27d7..19aa448fde6aa07853a4b729d8d75447e166d223 100644 (file)
@@ -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",
index f4da3341b4a37dd36564db16a8870efaec1f4e48..4fcf51766d4a6b90a48a567f6a5f55d419d76c47 100644 (file)
@@ -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);