.. | .. |
---|
182 | 182 | /* |
---|
183 | 183 | * Block device make request function. |
---|
184 | 184 | */ |
---|
185 | | -static blk_qc_t xpram_make_request(struct request_queue *q, struct bio *bio) |
---|
| 185 | +static blk_qc_t xpram_submit_bio(struct bio *bio) |
---|
186 | 186 | { |
---|
187 | 187 | xpram_device_t *xdev = bio->bi_disk->private_data; |
---|
188 | 188 | struct bio_vec bvec; |
---|
.. | .. |
---|
191 | 191 | unsigned long page_addr; |
---|
192 | 192 | unsigned long bytes; |
---|
193 | 193 | |
---|
194 | | - blk_queue_split(q, &bio); |
---|
| 194 | + blk_queue_split(&bio); |
---|
195 | 195 | |
---|
196 | 196 | if ((bio->bi_iter.bi_sector & 7) != 0 || |
---|
197 | 197 | (bio->bi_iter.bi_size & 4095) != 0) |
---|
.. | .. |
---|
250 | 250 | static const struct block_device_operations xpram_devops = |
---|
251 | 251 | { |
---|
252 | 252 | .owner = THIS_MODULE, |
---|
| 253 | + .submit_bio = xpram_submit_bio, |
---|
253 | 254 | .getgeo = xpram_getgeo, |
---|
254 | 255 | }; |
---|
255 | 256 | |
---|
.. | .. |
---|
343 | 344 | xpram_disks[i] = alloc_disk(1); |
---|
344 | 345 | if (!xpram_disks[i]) |
---|
345 | 346 | goto out; |
---|
346 | | - xpram_queues[i] = blk_alloc_queue(GFP_KERNEL); |
---|
| 347 | + xpram_queues[i] = blk_alloc_queue(NUMA_NO_NODE); |
---|
347 | 348 | if (!xpram_queues[i]) { |
---|
348 | 349 | put_disk(xpram_disks[i]); |
---|
349 | 350 | goto out; |
---|
350 | 351 | } |
---|
351 | 352 | blk_queue_flag_set(QUEUE_FLAG_NONROT, xpram_queues[i]); |
---|
352 | 353 | blk_queue_flag_clear(QUEUE_FLAG_ADD_RANDOM, xpram_queues[i]); |
---|
353 | | - blk_queue_make_request(xpram_queues[i], xpram_make_request); |
---|
354 | 354 | blk_queue_logical_block_size(xpram_queues[i], 4096); |
---|
355 | 355 | } |
---|
356 | 356 | |
---|