From 1c38ac61e1dbc876eb4079a69f965bb51635fef7 Mon Sep 17 00:00:00 2001 From: Brian Behlendorf Date: Tue, 19 Jun 2018 21:52:45 -0700 Subject: Linux 4.14 compat: blk_queue_stackable() The blk_queue_stackable() function was replaced in the 4.14 kernel by queue_is_rq_based(), commit torvalds/linux@5fdee212. This change resulted in the default elevator being used which can negatively impact performance. Rather than adding additional compatibility code to detect the new interface unconditionally attempt to set the elevator. Since we expect this to fail for block devices without an elevator the error message has been moved in to zfs_dbgmsg(). Finally, it was observed that the elevator_change() was removed from the 4.12 kernel, commit torvalds/linux@c033269. Update the comment to clearly specify which are expected to export the elevator_change() symbol. Reviewed-by: Matthew Ahrens Reviewed-by: Tony Hutter Signed-off-by: Brian Behlendorf Closes #7645 --- include/linux/blkdev_compat.h | 11 ----------- 1 file changed, 11 deletions(-) (limited to 'include/linux') diff --git a/include/linux/blkdev_compat.h b/include/linux/blkdev_compat.h index 27a4743c0..88b0e48cd 100644 --- a/include/linux/blkdev_compat.h +++ b/include/linux/blkdev_compat.h @@ -106,17 +106,6 @@ blk_queue_set_write_cache(struct request_queue *q, bool wc, bool fua) #define blk_fs_request(rq) ((rq)->cmd_type == REQ_TYPE_FS) #endif -/* - * 2.6.27 API change, - * The blk_queue_stackable() queue flag was added in 2.6.27 to handle dm - * stacking drivers. Prior to this request stacking drivers were detected - * by checking (q->request_fn == NULL), for earlier kernels we revert to - * this legacy behavior. - */ -#ifndef blk_queue_stackable -#define blk_queue_stackable(q) ((q)->request_fn == NULL) -#endif - /* * 2.6.34 API change, * The blk_queue_max_hw_sectors() function replaces blk_queue_max_sectors(). -- cgit v1.2.3