unexport sg v3 helper functions
Subsystems (2)
PATCH 1/1 unexport sg v3 helper functions
blk_fill_sghdr_rq, blk_unmap_sghdr_rq, and blk_complete_sghdr_rq were exported for bsg, however bsg was changed to support only sg v4.
--- block/scsi_ioctl.c | 13 +++++-------- include/linux/blkdev.h | 5 ----- 2 files changed, 5 insertions(+), 13 deletions(-)
block/scsi_ioctl.c +5 -8
@@ -214,8 +214,8 @@ int blk_verify_command(unsigned char *cm }EXPORT_SYMBOL_GPL (blk_verify_command); -int blk_fill_sghdr_rq (request_queue_t *q,struct request *rq, -struct sg_io_hdr *hdr,int has_write_perm) +static int blk_fill_sghdr_rq (request_queue_t *q,struct request *rq, +struct sg_io_hdr *hdr,int has_write_perm) {memset (rq->cmd,0 ,BLK_MAX_CDB );/* ATAPI hates garbage after CDB */
@@ -238,22 +238,20 @@ int blk_fill_sghdr_rq(request_queue_t *qreturn 0 ; } -EXPORT_SYMBOL_GPL (blk_fill_sghdr_rq);/* * unmap a request that was previously mapped to this sg_io_hdr. handles * both sg and non-sg sg_io_hdr. */ -int blk_unmap_sghdr_rq (struct request *rq,struct sg_io_hdr *hdr) +static int blk_unmap_sghdr_rq (struct request *rq,struct sg_io_hdr *hdr) {blk_rq_unmap_user (rq->bio);blk_put_request (rq);return 0 ; } -EXPORT_SYMBOL_GPL (blk_unmap_sghdr_rq); -int blk_complete_sghdr_rq (struct request *rq,struct sg_io_hdr *hdr, -struct bio *bio) +static int blk_complete_sghdr_rq (struct request *rq,struct sg_io_hdr *hdr, +struct bio *bio) {int r, ret =0 ;
@@ -287,7 +285,6 @@ int blk_complete_sghdr_rq(struct requestreturn r; } -EXPORT_SYMBOL_GPL (blk_complete_sghdr_rq);static int sg_io (struct file *file,request_queue_t *q,struct gendisk *bd_disk,struct sg_io_hdr *hdr)
include/linux/blkdev.h +0 -5
@@ -698,11 +698,6 @@ extern int blk_execute_rq(request_queue_ struct request *, int);extern void blk_execute_rq_nowait (request_queue_t *,struct gendisk *,struct request *,int ,rq_end_io_fn *); -extern int blk_fill_sghdr_rq (request_queue_t *,struct request *, -struct sg_io_hdr *,int ); -extern int blk_unmap_sghdr_rq (struct request *,struct sg_io_hdr *); -extern int blk_complete_sghdr_rq (struct request *,struct sg_io_hdr *, -struct bio *);extern int blk_verify_command (unsigned char *,int );static inline request_queue_t *bdev_get_queue (struct block_device *bdev)
Signature · 1 line
1.4.3.2
Quoted 4 lines · FUJITA Tomonori
blk_fill_sghdr_rq,blk_unmap_sghdr_rq, andblk_complete_sghdr_rqwere exported for bsg, however bsg was changed to support only sg v4.Signed-off-by FUJITA Tomonori <[email protected]>
Signature · 1 line
Jens Axboe
Quoted 7 lines · Jens Axboe
Quoted 4 lines · FUJITA Tomonori
blk_fill_sghdr_rq,blk_unmap_sghdr_rq, andblk_complete_sghdr_rqwere exported for bsg, however bsg was changed to support only sg v4.Signed-off-by FUJITA Tomonori <[email protected]>Acked-by Jens Axboe <[email protected]>
Why?
Quoted 10 lines · Douglas Gilbert
Quoted 7 lines · Jens Axboe
Quoted 4 lines · FUJITA Tomonori
blk_fill_sghdr_rq,blk_unmap_sghdr_rq, andblk_complete_sghdr_rqwere exported for bsg, however bsg was changed to support only sg v4.Signed-off-by FUJITA Tomonori <[email protected]>Acked-by Jens Axboe <[email protected]>Why?
The reasoning is right there, a few lines up - bsg doesn't support sg v3 commands.
Signature · 1 line
Jens Axboe
Quoted 6 lines · Jens Axboe
Quoted 5 lines · Douglas Gilbert
Quoted 4 lines · Jens Axboe
Quoted 3 lines · FUJITA Tomonori
blk_fill_sghdr_rq,blk_unmap_sghdr_rq, andblk_complete_sghdr_rqwere exported for bsg, however bsg was changed to support only sg v4.
Quoted 6 lines
Quoted 3 lines
Quoted 2 lines
Quoted 1 line
Signed-off-by FUJITA Tomonori <[email protected]>Acked-by Jens Axboe <[email protected]>Why?
The reasoning is right there, a few lines up - bsg doesn't support sg v3 commands.
I can read.
Why doesn't bsg support sg v3 commands?
Quoted 7 lines · Douglas Gilbert
Quoted 6 lines · Jens Axboe
Quoted 5 lines · Douglas Gilbert
Quoted 4 lines · Jens Axboe
Quoted 3 lines · FUJITA Tomonori
blk_fill_sghdr_rq,blk_unmap_sghdr_rq, andblk_complete_sghdr_rqwere exported for bsg, however bsg was changed to support only sg v4.
Quoted 8 lines
Quoted 6 lines
Quoted 3 lines
Quoted 2 lines
Quoted 1 line
Signed-off-by FUJITA Tomonori <[email protected]>Acked-by Jens Axboe <[email protected]>Why?
The reasoning is right there, a few lines up - bsg doesn't support sg v3 commands.
I can read.
Then write better questions "Why?" isn't very useful.
Quoted 1 line
Why doesn't bsg support sg v3 commands?
You should know, the discussion on that happened at the storage summit and on linux-scsi. It was decided to drop sg v3 support from bsg, and only focus on making bsg the driver for sg v4 commands.
As you know, we already have dual paths for sg v3. For sg v4 we can get rid of that pain, and just have a single driver for handling that.
Signature · 1 line
Jens Axboe