Skip to content

Commit

Permalink
block: kill blk_end_request_callback()
Browse files Browse the repository at this point in the history
With recent IDE updates, blk_end_request_callback() doesn't have any
user now.  Kill it.

[ Impact: removal of unused convoluted interface ]

Signed-off-by: Tejun Heo <tj@kernel.org>
  • Loading branch information
Tejun Heo authored and Jens Axboe committed Apr 28, 2009
1 parent 158dbda commit 0b302d5
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 48 deletions.
48 changes: 3 additions & 45 deletions block/blk-core.c
Original file line number Diff line number Diff line change
Expand Up @@ -1971,10 +1971,6 @@ static void end_that_request_last(struct request *req, int error)
* @error: %0 for success, < %0 for error
* @nr_bytes: number of bytes to complete @rq
* @bidi_bytes: number of bytes to complete @rq->next_rq
* @drv_callback: function called between completion of bios in the request
* and completion of the request.
* If the callback returns non %0, this helper returns without
* completion of the request.
*
* Description:
* Ends I/O on a number of bytes attached to @rq and @rq->next_rq.
Expand All @@ -1985,19 +1981,14 @@ static void end_that_request_last(struct request *req, int error)
* %1 - this request is not freed yet, it still has pending buffers.
**/
static int blk_end_io(struct request *rq, int error, unsigned int nr_bytes,
unsigned int bidi_bytes,
int (drv_callback)(struct request *))
unsigned int bidi_bytes)
{
struct request_queue *q = rq->q;
unsigned long flags = 0UL;

if (end_that_request_data(rq, error, nr_bytes, bidi_bytes))
return 1;

/* Special feature for tricky drivers */
if (drv_callback && drv_callback(rq))
return 1;

add_disk_randomness(rq->rq_disk);

spin_lock_irqsave(q->queue_lock, flags);
Expand All @@ -2023,7 +2014,7 @@ static int blk_end_io(struct request *rq, int error, unsigned int nr_bytes,
**/
int blk_end_request(struct request *rq, int error, unsigned int nr_bytes)
{
return blk_end_io(rq, error, nr_bytes, 0, NULL);
return blk_end_io(rq, error, nr_bytes, 0);
}
EXPORT_SYMBOL_GPL(blk_end_request);

Expand Down Expand Up @@ -2070,7 +2061,7 @@ EXPORT_SYMBOL_GPL(__blk_end_request);
int blk_end_bidi_request(struct request *rq, int error, unsigned int nr_bytes,
unsigned int bidi_bytes)
{
return blk_end_io(rq, error, nr_bytes, bidi_bytes, NULL);
return blk_end_io(rq, error, nr_bytes, bidi_bytes);
}
EXPORT_SYMBOL_GPL(blk_end_bidi_request);

Expand Down Expand Up @@ -2131,39 +2122,6 @@ void blk_update_request(struct request *rq, int error, unsigned int nr_bytes)
}
EXPORT_SYMBOL_GPL(blk_update_request);

/**
* blk_end_request_callback - Special helper function for tricky drivers
* @rq: the request being processed
* @error: %0 for success, < %0 for error
* @nr_bytes: number of bytes to complete
* @drv_callback: function called between completion of bios in the request
* and completion of the request.
* If the callback returns non %0, this helper returns without
* completion of the request.
*
* Description:
* Ends I/O on a number of bytes attached to @rq.
* If @rq has leftover, sets it up for the next range of segments.
*
* This special helper function is used only for existing tricky drivers.
* (e.g. cdrom_newpc_intr() of ide-cd)
* This interface will be removed when such drivers are rewritten.
* Don't use this interface in other places anymore.
*
* Return:
* %0 - we are done with this request
* %1 - this request is not freed yet.
* this request still has pending buffers or
* the driver doesn't want to finish this request yet.
**/
int blk_end_request_callback(struct request *rq, int error,
unsigned int nr_bytes,
int (drv_callback)(struct request *))
{
return blk_end_io(rq, error, nr_bytes, 0, drv_callback);
}
EXPORT_SYMBOL_GPL(blk_end_request_callback);

void blk_rq_bio_prep(struct request_queue *q, struct request *rq,
struct bio *bio)
{
Expand Down
3 changes: 0 additions & 3 deletions include/linux/blkdev.h
Original file line number Diff line number Diff line change
Expand Up @@ -855,9 +855,6 @@ extern int __blk_end_request(struct request *rq, int error,
extern int blk_end_bidi_request(struct request *rq, int error,
unsigned int nr_bytes, unsigned int bidi_bytes);
extern void end_request(struct request *, int);
extern int blk_end_request_callback(struct request *rq, int error,
unsigned int nr_bytes,
int (drv_callback)(struct request *));
extern void blk_complete_request(struct request *);
extern void __blk_complete_request(struct request *);
extern void blk_abort_request(struct request *);
Expand Down

0 comments on commit 0b302d5

Please sign in to comment.