diff options
-rw-r--r-- | block/blk-core.c | 6 | ||||
-rw-r--r-- | block/blk-settings.c | 37 | ||||
-rw-r--r-- | block/cfq-iosched.c | 7 | ||||
-rw-r--r-- | drivers/block/cciss.c | 1 | ||||
-rw-r--r-- | drivers/block/mg_disk.c | 28 | ||||
-rw-r--r-- | drivers/md/dm.c | 1 | ||||
-rw-r--r-- | fs/bio.c | 1 | ||||
-rw-r--r-- | fs/btrfs/disk-io.c | 26 | ||||
-rw-r--r-- | fs/ubifs/super.c | 3 | ||||
-rw-r--r-- | include/linux/blkdev.h | 1 | ||||
-rw-r--r-- | include/linux/mg_disk.h | 45 | ||||
-rw-r--r-- | mm/bounce.c | 1 | ||||
-rw-r--r-- | mm/highmem.c | 1 |
13 files changed, 104 insertions, 54 deletions
diff --git a/block/blk-core.c b/block/blk-core.c index f6452f692501..b06cf5c2a829 100644 --- a/block/blk-core.c +++ b/block/blk-core.c | |||
@@ -26,7 +26,6 @@ | |||
26 | #include <linux/swap.h> | 26 | #include <linux/swap.h> |
27 | #include <linux/writeback.h> | 27 | #include <linux/writeback.h> |
28 | #include <linux/task_io_accounting_ops.h> | 28 | #include <linux/task_io_accounting_ops.h> |
29 | #include <linux/blktrace_api.h> | ||
30 | #include <linux/fault-inject.h> | 29 | #include <linux/fault-inject.h> |
31 | 30 | ||
32 | #define CREATE_TRACE_POINTS | 31 | #define CREATE_TRACE_POINTS |
@@ -498,6 +497,11 @@ struct request_queue *blk_alloc_queue_node(gfp_t gfp_mask, int node_id) | |||
498 | 497 | ||
499 | q->backing_dev_info.unplug_io_fn = blk_backing_dev_unplug; | 498 | q->backing_dev_info.unplug_io_fn = blk_backing_dev_unplug; |
500 | q->backing_dev_info.unplug_io_data = q; | 499 | q->backing_dev_info.unplug_io_data = q; |
500 | q->backing_dev_info.ra_pages = | ||
501 | (VM_MAX_READAHEAD * 1024) / PAGE_CACHE_SIZE; | ||
502 | q->backing_dev_info.state = 0; | ||
503 | q->backing_dev_info.capabilities = BDI_CAP_MAP_COPY; | ||
504 | |||
501 | err = bdi_init(&q->backing_dev_info); | 505 | err = bdi_init(&q->backing_dev_info); |
502 | if (err) { | 506 | if (err) { |
503 | kmem_cache_free(blk_requestq_cachep, q); | 507 | kmem_cache_free(blk_requestq_cachep, q); |
diff --git a/block/blk-settings.c b/block/blk-settings.c index d71cedc09c4e..7541ea4bf9fe 100644 --- a/block/blk-settings.c +++ b/block/blk-settings.c | |||
@@ -96,6 +96,31 @@ void blk_queue_lld_busy(struct request_queue *q, lld_busy_fn *fn) | |||
96 | EXPORT_SYMBOL_GPL(blk_queue_lld_busy); | 96 | EXPORT_SYMBOL_GPL(blk_queue_lld_busy); |
97 | 97 | ||
98 | /** | 98 | /** |
99 | * blk_set_default_limits - reset limits to default values | ||
100 | * @limits: the queue_limits structure to reset | ||
101 | * | ||
102 | * Description: | ||
103 | * Returns a queue_limit struct to its default state. Can be used by | ||
104 | * stacking drivers like DM that stage table swaps and reuse an | ||
105 | * existing device queue. | ||
106 | */ | ||
107 | void blk_set_default_limits(struct queue_limits *lim) | ||
108 | { | ||
109 | lim->max_phys_segments = MAX_PHYS_SEGMENTS; | ||
110 | lim->max_hw_segments = MAX_HW_SEGMENTS; | ||
111 | lim->seg_boundary_mask = BLK_SEG_BOUNDARY_MASK; | ||
112 | lim->max_segment_size = MAX_SEGMENT_SIZE; | ||
113 | lim->max_sectors = lim->max_hw_sectors = SAFE_MAX_SECTORS; | ||
114 | lim->logical_block_size = lim->physical_block_size = lim->io_min = 512; | ||
115 | lim->bounce_pfn = BLK_BOUNCE_ANY; | ||
116 | lim->alignment_offset = 0; | ||
117 | lim->io_opt = 0; | ||
118 | lim->misaligned = 0; | ||
119 | lim->no_cluster = 0; | ||
120 | } | ||
121 | EXPORT_SYMBOL(blk_set_default_limits); | ||
122 | |||
123 | /** | ||
99 | * blk_queue_make_request - define an alternate make_request function for a device | 124 | * blk_queue_make_request - define an alternate make_request function for a device |
100 | * @q: the request queue for the device to be affected | 125 | * @q: the request queue for the device to be affected |
101 | * @mfn: the alternate make_request function | 126 | * @mfn: the alternate make_request function |
@@ -123,18 +148,8 @@ void blk_queue_make_request(struct request_queue *q, make_request_fn *mfn) | |||
123 | * set defaults | 148 | * set defaults |
124 | */ | 149 | */ |
125 | q->nr_requests = BLKDEV_MAX_RQ; | 150 | q->nr_requests = BLKDEV_MAX_RQ; |
126 | blk_queue_max_phys_segments(q, MAX_PHYS_SEGMENTS); | ||
127 | blk_queue_max_hw_segments(q, MAX_HW_SEGMENTS); | ||
128 | blk_queue_segment_boundary(q, BLK_SEG_BOUNDARY_MASK); | ||
129 | blk_queue_max_segment_size(q, MAX_SEGMENT_SIZE); | ||
130 | 151 | ||
131 | q->make_request_fn = mfn; | 152 | q->make_request_fn = mfn; |
132 | q->backing_dev_info.ra_pages = | ||
133 | (VM_MAX_READAHEAD * 1024) / PAGE_CACHE_SIZE; | ||
134 | q->backing_dev_info.state = 0; | ||
135 | q->backing_dev_info.capabilities = BDI_CAP_MAP_COPY; | ||
136 | blk_queue_max_sectors(q, SAFE_MAX_SECTORS); | ||
137 | blk_queue_logical_block_size(q, 512); | ||
138 | blk_queue_dma_alignment(q, 511); | 153 | blk_queue_dma_alignment(q, 511); |
139 | blk_queue_congestion_threshold(q); | 154 | blk_queue_congestion_threshold(q); |
140 | q->nr_batching = BLK_BATCH_REQ; | 155 | q->nr_batching = BLK_BATCH_REQ; |
@@ -147,6 +162,8 @@ void blk_queue_make_request(struct request_queue *q, make_request_fn *mfn) | |||
147 | q->unplug_timer.function = blk_unplug_timeout; | 162 | q->unplug_timer.function = blk_unplug_timeout; |
148 | q->unplug_timer.data = (unsigned long)q; | 163 | q->unplug_timer.data = (unsigned long)q; |
149 | 164 | ||
165 | blk_set_default_limits(&q->limits); | ||
166 | |||
150 | /* | 167 | /* |
151 | * by default assume old behaviour and bounce for any highmem page | 168 | * by default assume old behaviour and bounce for any highmem page |
152 | */ | 169 | */ |
diff --git a/block/cfq-iosched.c b/block/cfq-iosched.c index ef2f72d42434..833ec18eaa63 100644 --- a/block/cfq-iosched.c +++ b/block/cfq-iosched.c | |||
@@ -122,7 +122,6 @@ struct cfq_data { | |||
122 | struct cfq_queue *async_idle_cfqq; | 122 | struct cfq_queue *async_idle_cfqq; |
123 | 123 | ||
124 | sector_t last_position; | 124 | sector_t last_position; |
125 | unsigned long last_end_request; | ||
126 | 125 | ||
127 | /* | 126 | /* |
128 | * tunables, see top of file | 127 | * tunables, see top of file |
@@ -1253,7 +1252,7 @@ static int cfq_forced_dispatch(struct cfq_data *cfqd) | |||
1253 | 1252 | ||
1254 | BUG_ON(cfqd->busy_queues); | 1253 | BUG_ON(cfqd->busy_queues); |
1255 | 1254 | ||
1256 | cfq_log(cfqd, "forced_dispatch=%d\n", dispatched); | 1255 | cfq_log(cfqd, "forced_dispatch=%d", dispatched); |
1257 | return dispatched; | 1256 | return dispatched; |
1258 | } | 1257 | } |
1259 | 1258 | ||
@@ -2164,9 +2163,6 @@ static void cfq_completed_request(struct request_queue *q, struct request *rq) | |||
2164 | if (cfq_cfqq_sync(cfqq)) | 2163 | if (cfq_cfqq_sync(cfqq)) |
2165 | cfqd->sync_flight--; | 2164 | cfqd->sync_flight--; |
2166 | 2165 | ||
2167 | if (!cfq_class_idle(cfqq)) | ||
2168 | cfqd->last_end_request = now; | ||
2169 | |||
2170 | if (sync) | 2166 | if (sync) |
2171 | RQ_CIC(rq)->last_end_request = now; | 2167 | RQ_CIC(rq)->last_end_request = now; |
2172 | 2168 | ||
@@ -2479,7 +2475,6 @@ static void *cfq_init_queue(struct request_queue *q) | |||
2479 | 2475 | ||
2480 | INIT_WORK(&cfqd->unplug_work, cfq_kick_queue); | 2476 | INIT_WORK(&cfqd->unplug_work, cfq_kick_queue); |
2481 | 2477 | ||
2482 | cfqd->last_end_request = jiffies; | ||
2483 | cfqd->cfq_quantum = cfq_quantum; | 2478 | cfqd->cfq_quantum = cfq_quantum; |
2484 | cfqd->cfq_fifo_expire[0] = cfq_fifo_expire[0]; | 2479 | cfqd->cfq_fifo_expire[0] = cfq_fifo_expire[0]; |
2485 | cfqd->cfq_fifo_expire[1] = cfq_fifo_expire[1]; | 2480 | cfqd->cfq_fifo_expire[1] = cfq_fifo_expire[1]; |
diff --git a/drivers/block/cciss.c b/drivers/block/cciss.c index b22cec97ea19..c7a527c08a09 100644 --- a/drivers/block/cciss.c +++ b/drivers/block/cciss.c | |||
@@ -38,7 +38,6 @@ | |||
38 | #include <linux/hdreg.h> | 38 | #include <linux/hdreg.h> |
39 | #include <linux/spinlock.h> | 39 | #include <linux/spinlock.h> |
40 | #include <linux/compat.h> | 40 | #include <linux/compat.h> |
41 | #include <linux/blktrace_api.h> | ||
42 | #include <asm/uaccess.h> | 41 | #include <asm/uaccess.h> |
43 | #include <asm/io.h> | 42 | #include <asm/io.h> |
44 | 43 | ||
diff --git a/drivers/block/mg_disk.c b/drivers/block/mg_disk.c index 60de5a01e71e..f703f5478246 100644 --- a/drivers/block/mg_disk.c +++ b/drivers/block/mg_disk.c | |||
@@ -22,13 +22,12 @@ | |||
22 | #include <linux/delay.h> | 22 | #include <linux/delay.h> |
23 | #include <linux/platform_device.h> | 23 | #include <linux/platform_device.h> |
24 | #include <linux/gpio.h> | 24 | #include <linux/gpio.h> |
25 | #include <linux/mg_disk.h> | ||
25 | 26 | ||
26 | #define MG_RES_SEC (CONFIG_MG_DISK_RES << 1) | 27 | #define MG_RES_SEC (CONFIG_MG_DISK_RES << 1) |
27 | 28 | ||
28 | /* name for block device */ | 29 | /* name for block device */ |
29 | #define MG_DISK_NAME "mgd" | 30 | #define MG_DISK_NAME "mgd" |
30 | /* name for platform device */ | ||
31 | #define MG_DEV_NAME "mg_disk" | ||
32 | 31 | ||
33 | #define MG_DISK_MAJ 0 | 32 | #define MG_DISK_MAJ 0 |
34 | #define MG_DISK_MAX_PART 16 | 33 | #define MG_DISK_MAX_PART 16 |
@@ -103,33 +102,8 @@ | |||
103 | #define MG_TMAX_SWRST_TO_RDY 500 | 102 | #define MG_TMAX_SWRST_TO_RDY 500 |
104 | #define MG_TMAX_RSTOUT 3000 | 103 | #define MG_TMAX_RSTOUT 3000 |
105 | 104 | ||
106 | /* device attribution */ | ||
107 | /* use mflash as boot device */ | ||
108 | #define MG_BOOT_DEV (1 << 0) | ||
109 | /* use mflash as storage device */ | ||
110 | #define MG_STORAGE_DEV (1 << 1) | ||
111 | /* same as MG_STORAGE_DEV, but bootloader already done reset sequence */ | ||
112 | #define MG_STORAGE_DEV_SKIP_RST (1 << 2) | ||
113 | |||
114 | #define MG_DEV_MASK (MG_BOOT_DEV | MG_STORAGE_DEV | MG_STORAGE_DEV_SKIP_RST) | 105 | #define MG_DEV_MASK (MG_BOOT_DEV | MG_STORAGE_DEV | MG_STORAGE_DEV_SKIP_RST) |
115 | 106 | ||
116 | /* names of GPIO resource */ | ||
117 | #define MG_RST_PIN "mg_rst" | ||
118 | /* except MG_BOOT_DEV, reset-out pin should be assigned */ | ||
119 | #define MG_RSTOUT_PIN "mg_rstout" | ||
120 | |||
121 | /* private driver data */ | ||
122 | struct mg_drv_data { | ||
123 | /* disk resource */ | ||
124 | u32 use_polling; | ||
125 | |||
126 | /* device attribution */ | ||
127 | u32 dev_attr; | ||
128 | |||
129 | /* internally used */ | ||
130 | struct mg_host *host; | ||
131 | }; | ||
132 | |||
133 | /* main structure for mflash driver */ | 107 | /* main structure for mflash driver */ |
134 | struct mg_host { | 108 | struct mg_host { |
135 | struct device *dev; | 109 | struct device *dev; |
diff --git a/drivers/md/dm.c b/drivers/md/dm.c index 3fd8b1e65483..48db308fae67 100644 --- a/drivers/md/dm.c +++ b/drivers/md/dm.c | |||
@@ -19,7 +19,6 @@ | |||
19 | #include <linux/slab.h> | 19 | #include <linux/slab.h> |
20 | #include <linux/idr.h> | 20 | #include <linux/idr.h> |
21 | #include <linux/hdreg.h> | 21 | #include <linux/hdreg.h> |
22 | #include <linux/blktrace_api.h> | ||
23 | 22 | ||
24 | #include <trace/events/block.h> | 23 | #include <trace/events/block.h> |
25 | 24 | ||
@@ -25,7 +25,6 @@ | |||
25 | #include <linux/module.h> | 25 | #include <linux/module.h> |
26 | #include <linux/mempool.h> | 26 | #include <linux/mempool.h> |
27 | #include <linux/workqueue.h> | 27 | #include <linux/workqueue.h> |
28 | #include <linux/blktrace_api.h> | ||
29 | #include <scsi/sg.h> /* for struct sg_iovec */ | 28 | #include <scsi/sg.h> /* for struct sg_iovec */ |
30 | 29 | ||
31 | #include <trace/events/block.h> | 30 | #include <trace/events/block.h> |
diff --git a/fs/btrfs/disk-io.c b/fs/btrfs/disk-io.c index 0d50d49d990a..d28d29c95f7c 100644 --- a/fs/btrfs/disk-io.c +++ b/fs/btrfs/disk-io.c | |||
@@ -42,6 +42,8 @@ | |||
42 | static struct extent_io_ops btree_extent_io_ops; | 42 | static struct extent_io_ops btree_extent_io_ops; |
43 | static void end_workqueue_fn(struct btrfs_work *work); | 43 | static void end_workqueue_fn(struct btrfs_work *work); |
44 | 44 | ||
45 | static atomic_t btrfs_bdi_num = ATOMIC_INIT(0); | ||
46 | |||
45 | /* | 47 | /* |
46 | * end_io_wq structs are used to do processing in task context when an IO is | 48 | * end_io_wq structs are used to do processing in task context when an IO is |
47 | * complete. This is used during reads to verify checksums, and it is used | 49 | * complete. This is used during reads to verify checksums, and it is used |
@@ -1342,12 +1344,25 @@ static void btrfs_unplug_io_fn(struct backing_dev_info *bdi, struct page *page) | |||
1342 | free_extent_map(em); | 1344 | free_extent_map(em); |
1343 | } | 1345 | } |
1344 | 1346 | ||
1347 | /* | ||
1348 | * If this fails, caller must call bdi_destroy() to get rid of the | ||
1349 | * bdi again. | ||
1350 | */ | ||
1345 | static int setup_bdi(struct btrfs_fs_info *info, struct backing_dev_info *bdi) | 1351 | static int setup_bdi(struct btrfs_fs_info *info, struct backing_dev_info *bdi) |
1346 | { | 1352 | { |
1347 | bdi_init(bdi); | 1353 | int err; |
1354 | |||
1355 | bdi->capabilities = BDI_CAP_MAP_COPY; | ||
1356 | err = bdi_init(bdi); | ||
1357 | if (err) | ||
1358 | return err; | ||
1359 | |||
1360 | err = bdi_register(bdi, NULL, "btrfs-%d", | ||
1361 | atomic_inc_return(&btrfs_bdi_num)); | ||
1362 | if (err) | ||
1363 | return err; | ||
1364 | |||
1348 | bdi->ra_pages = default_backing_dev_info.ra_pages; | 1365 | bdi->ra_pages = default_backing_dev_info.ra_pages; |
1349 | bdi->state = 0; | ||
1350 | bdi->capabilities = default_backing_dev_info.capabilities; | ||
1351 | bdi->unplug_io_fn = btrfs_unplug_io_fn; | 1366 | bdi->unplug_io_fn = btrfs_unplug_io_fn; |
1352 | bdi->unplug_io_data = info; | 1367 | bdi->unplug_io_data = info; |
1353 | bdi->congested_fn = btrfs_congested_fn; | 1368 | bdi->congested_fn = btrfs_congested_fn; |
@@ -1569,7 +1584,8 @@ struct btrfs_root *open_ctree(struct super_block *sb, | |||
1569 | fs_info->sb = sb; | 1584 | fs_info->sb = sb; |
1570 | fs_info->max_extent = (u64)-1; | 1585 | fs_info->max_extent = (u64)-1; |
1571 | fs_info->max_inline = 8192 * 1024; | 1586 | fs_info->max_inline = 8192 * 1024; |
1572 | setup_bdi(fs_info, &fs_info->bdi); | 1587 | if (setup_bdi(fs_info, &fs_info->bdi)) |
1588 | goto fail_bdi; | ||
1573 | fs_info->btree_inode = new_inode(sb); | 1589 | fs_info->btree_inode = new_inode(sb); |
1574 | fs_info->btree_inode->i_ino = 1; | 1590 | fs_info->btree_inode->i_ino = 1; |
1575 | fs_info->btree_inode->i_nlink = 1; | 1591 | fs_info->btree_inode->i_nlink = 1; |
@@ -1946,8 +1962,8 @@ fail_iput: | |||
1946 | 1962 | ||
1947 | btrfs_close_devices(fs_info->fs_devices); | 1963 | btrfs_close_devices(fs_info->fs_devices); |
1948 | btrfs_mapping_tree_free(&fs_info->mapping_tree); | 1964 | btrfs_mapping_tree_free(&fs_info->mapping_tree); |
1965 | fail_bdi: | ||
1949 | bdi_destroy(&fs_info->bdi); | 1966 | bdi_destroy(&fs_info->bdi); |
1950 | |||
1951 | fail: | 1967 | fail: |
1952 | kfree(extent_root); | 1968 | kfree(extent_root); |
1953 | kfree(tree_root); | 1969 | kfree(tree_root); |
diff --git a/fs/ubifs/super.c b/fs/ubifs/super.c index 3589eab02a2f..3260b73abe29 100644 --- a/fs/ubifs/super.c +++ b/fs/ubifs/super.c | |||
@@ -1937,6 +1937,9 @@ static int ubifs_fill_super(struct super_block *sb, void *data, int silent) | |||
1937 | err = bdi_init(&c->bdi); | 1937 | err = bdi_init(&c->bdi); |
1938 | if (err) | 1938 | if (err) |
1939 | goto out_close; | 1939 | goto out_close; |
1940 | err = bdi_register(&c->bdi, NULL, "ubifs"); | ||
1941 | if (err) | ||
1942 | goto out_bdi; | ||
1940 | 1943 | ||
1941 | err = ubifs_parse_options(c, data, 0); | 1944 | err = ubifs_parse_options(c, data, 0); |
1942 | if (err) | 1945 | if (err) |
diff --git a/include/linux/blkdev.h b/include/linux/blkdev.h index 0b1a6cae9de1..8963d9149b5f 100644 --- a/include/linux/blkdev.h +++ b/include/linux/blkdev.h | |||
@@ -926,6 +926,7 @@ extern void blk_queue_alignment_offset(struct request_queue *q, | |||
926 | unsigned int alignment); | 926 | unsigned int alignment); |
927 | extern void blk_queue_io_min(struct request_queue *q, unsigned int min); | 927 | extern void blk_queue_io_min(struct request_queue *q, unsigned int min); |
928 | extern void blk_queue_io_opt(struct request_queue *q, unsigned int opt); | 928 | extern void blk_queue_io_opt(struct request_queue *q, unsigned int opt); |
929 | extern void blk_set_default_limits(struct queue_limits *lim); | ||
929 | extern int blk_stack_limits(struct queue_limits *t, struct queue_limits *b, | 930 | extern int blk_stack_limits(struct queue_limits *t, struct queue_limits *b, |
930 | sector_t offset); | 931 | sector_t offset); |
931 | extern void disk_stack_limits(struct gendisk *disk, struct block_device *bdev, | 932 | extern void disk_stack_limits(struct gendisk *disk, struct block_device *bdev, |
diff --git a/include/linux/mg_disk.h b/include/linux/mg_disk.h new file mode 100644 index 000000000000..e11f4d9f1c2e --- /dev/null +++ b/include/linux/mg_disk.h | |||
@@ -0,0 +1,45 @@ | |||
1 | /* | ||
2 | * include/linux/mg_disk.c | ||
3 | * | ||
4 | * Private data for mflash platform driver | ||
5 | * | ||
6 | * (c) 2008 mGine Co.,LTD | ||
7 | * (c) 2008 unsik Kim <donari75@gmail.com> | ||
8 | * | ||
9 | * This program is free software; you can redistribute it and/or modify | ||
10 | * it under the terms of the GNU General Public License version 2 as | ||
11 | * published by the Free Software Foundation. | ||
12 | */ | ||
13 | |||
14 | #ifndef __MG_DISK_H__ | ||
15 | #define __MG_DISK_H__ | ||
16 | |||
17 | /* name for platform device */ | ||
18 | #define MG_DEV_NAME "mg_disk" | ||
19 | |||
20 | /* names of GPIO resource */ | ||
21 | #define MG_RST_PIN "mg_rst" | ||
22 | /* except MG_BOOT_DEV, reset-out pin should be assigned */ | ||
23 | #define MG_RSTOUT_PIN "mg_rstout" | ||
24 | |||
25 | /* device attribution */ | ||
26 | /* use mflash as boot device */ | ||
27 | #define MG_BOOT_DEV (1 << 0) | ||
28 | /* use mflash as storage device */ | ||
29 | #define MG_STORAGE_DEV (1 << 1) | ||
30 | /* same as MG_STORAGE_DEV, but bootloader already done reset sequence */ | ||
31 | #define MG_STORAGE_DEV_SKIP_RST (1 << 2) | ||
32 | |||
33 | /* private driver data */ | ||
34 | struct mg_drv_data { | ||
35 | /* disk resource */ | ||
36 | u32 use_polling; | ||
37 | |||
38 | /* device attribution */ | ||
39 | u32 dev_attr; | ||
40 | |||
41 | /* internally used */ | ||
42 | void *host; | ||
43 | }; | ||
44 | |||
45 | #endif | ||
diff --git a/mm/bounce.c b/mm/bounce.c index 4ebe3ea83795..a2b76a588e34 100644 --- a/mm/bounce.c +++ b/mm/bounce.c | |||
@@ -13,7 +13,6 @@ | |||
13 | #include <linux/init.h> | 13 | #include <linux/init.h> |
14 | #include <linux/hash.h> | 14 | #include <linux/hash.h> |
15 | #include <linux/highmem.h> | 15 | #include <linux/highmem.h> |
16 | #include <linux/blktrace_api.h> | ||
17 | #include <asm/tlbflush.h> | 16 | #include <asm/tlbflush.h> |
18 | 17 | ||
19 | #include <trace/events/block.h> | 18 | #include <trace/events/block.h> |
diff --git a/mm/highmem.c b/mm/highmem.c index 68eb1d9b63fa..25878cc49daa 100644 --- a/mm/highmem.c +++ b/mm/highmem.c | |||
@@ -26,7 +26,6 @@ | |||
26 | #include <linux/init.h> | 26 | #include <linux/init.h> |
27 | #include <linux/hash.h> | 27 | #include <linux/hash.h> |
28 | #include <linux/highmem.h> | 28 | #include <linux/highmem.h> |
29 | #include <linux/blktrace_api.h> | ||
30 | #include <asm/tlbflush.h> | 29 | #include <asm/tlbflush.h> |
31 | 30 | ||
32 | /* | 31 | /* |