[BLOCK] Kill blk_attempt_remerge()

It's a broken interface, it's done way too late. And apparently it triggers
slab problems in recent kernels as well (most likely after the generic dispatch
code was merged). So kill it, ide-cd is the only user of it.

Signed-off-by: Jens Axboe <axboe@suse.de>

-35
-24
block/ll_rw_blk.c
··· 2734 return 0; 2735 } 2736 2737 - /** 2738 - * blk_attempt_remerge - attempt to remerge active head with next request 2739 - * @q: The &request_queue_t belonging to the device 2740 - * @rq: The head request (usually) 2741 - * 2742 - * Description: 2743 - * For head-active devices, the queue can easily be unplugged so quickly 2744 - * that proper merging is not done on the front request. This may hurt 2745 - * performance greatly for some devices. The block layer cannot safely 2746 - * do merging on that first request for these queues, but the driver can 2747 - * call this function and make it happen any way. Only the driver knows 2748 - * when it is safe to do so. 2749 - **/ 2750 - void blk_attempt_remerge(request_queue_t *q, struct request *rq) 2751 - { 2752 - unsigned long flags; 2753 - 2754 - spin_lock_irqsave(q->queue_lock, flags); 2755 - attempt_back_merge(q, rq); 2756 - spin_unlock_irqrestore(q->queue_lock, flags); 2757 - } 2758 - 2759 - EXPORT_SYMBOL(blk_attempt_remerge); 2760 - 2761 static void init_request_from_bio(struct request *req, struct bio *bio) 2762 { 2763 req->flags |= REQ_CMD;
··· 2734 return 0; 2735 } 2736 2737 static void init_request_from_bio(struct request *req, struct bio *bio) 2738 { 2739 req->flags |= REQ_CMD;
-10
drivers/ide/ide-cd.c
··· 1332 if (cdrom_read_from_buffer(drive)) 1333 return ide_stopped; 1334 1335 - blk_attempt_remerge(drive->queue, rq); 1336 - 1337 /* Clear the local sector buffer. */ 1338 info->nsectors_buffered = 0; 1339 ··· 1871 cdrom_end_request(drive, 0); 1872 return ide_stopped; 1873 } 1874 - 1875 - /* 1876 - * for dvd-ram and such media, it's a really big deal to get 1877 - * big writes all the time. so scour the queue and attempt to 1878 - * remerge requests, often the plugging will not have had time 1879 - * to do this properly 1880 - */ 1881 - blk_attempt_remerge(drive->queue, rq); 1882 1883 info->nsectors_buffered = 0; 1884
··· 1332 if (cdrom_read_from_buffer(drive)) 1333 return ide_stopped; 1334 1335 /* Clear the local sector buffer. */ 1336 info->nsectors_buffered = 0; 1337 ··· 1873 cdrom_end_request(drive, 0); 1874 return ide_stopped; 1875 } 1876 1877 info->nsectors_buffered = 0; 1878
-1
include/linux/blkdev.h
··· 592 extern void blk_put_request(struct request *); 593 extern void __blk_put_request(request_queue_t *, struct request *); 594 extern void blk_end_sync_rq(struct request *rq, int error); 595 - extern void blk_attempt_remerge(request_queue_t *, struct request *); 596 extern struct request *blk_get_request(request_queue_t *, int, gfp_t); 597 extern void blk_insert_request(request_queue_t *, struct request *, int, void *); 598 extern void blk_requeue_request(request_queue_t *, struct request *);
··· 592 extern void blk_put_request(struct request *); 593 extern void __blk_put_request(request_queue_t *, struct request *); 594 extern void blk_end_sync_rq(struct request *rq, int error); 595 extern struct request *blk_get_request(request_queue_t *, int, gfp_t); 596 extern void blk_insert_request(request_queue_t *, struct request *, int, void *); 597 extern void blk_requeue_request(request_queue_t *, struct request *);