From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752330AbbCXKQq (ORCPT ); Tue, 24 Mar 2015 06:16:46 -0400 Received: from mx1.redhat.com ([209.132.183.28]:58667 "EHLO mx1.redhat.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751713AbbCXKQg (ORCPT ); Tue, 24 Mar 2015 06:16:36 -0400 From: Fam Zheng To: linux-kernel@vger.kernel.org Cc: Jens Axboe , "James E.J. Bottomley" , linux-scsi@vger.kernel.org, famz@redhat.com Subject: [PATCH 3/3] sd: Return -EIO if read capacity failed Date: Tue, 24 Mar 2015 18:16:15 +0800 Message-Id: <1427192175-23802-4-git-send-email-famz@redhat.com> In-Reply-To: <1427192175-23802-1-git-send-email-famz@redhat.com> References: <1427192175-23802-1-git-send-email-famz@redhat.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org This improves the error code if BLKRRPART ioctl failed due to connection issue. Before: $ blockdev --rereadpt /dev/sda BLKRRPART: Invalid argument After: $ blockdev --rereadpt /dev/sda BLKRRPART: Input/output error Signed-off-by: Fam Zheng --- drivers/scsi/sd.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c index 7e5ca3b..bb0e38d 100644 --- a/drivers/scsi/sd.c +++ b/drivers/scsi/sd.c @@ -2019,7 +2019,7 @@ static int read_capacity_16(struct scsi_disk *sdkp, struct scsi_device *sdp, if (the_result) { sd_print_result(sdkp, "Read Capacity(16) failed", the_result); read_capacity_error(sdkp, sdp, &sshdr, sense_valid, the_result); - return -EINVAL; + return -EIO; } sector_size = get_unaligned_be32(&buffer[8]); @@ -2101,7 +2101,7 @@ static int read_capacity_10(struct scsi_disk *sdkp, struct scsi_device *sdp, if (the_result) { sd_print_result(sdkp, "Read Capacity(10) failed", the_result); read_capacity_error(sdkp, sdp, &sshdr, sense_valid, the_result); - return -EINVAL; + return -EIO; } sector_size = get_unaligned_be32(&buffer[4]); -- 1.9.3