From nobody Fri Feb 13 17:32:33 2026 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by smtp.lore.kernel.org (Postfix) with ESMTP id A0137CD4F41 for ; Fri, 22 Sep 2023 09:30:55 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233257AbjIVJa7 (ORCPT ); Fri, 22 Sep 2023 05:30:59 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:44550 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233080AbjIVJ34 (ORCPT ); Fri, 22 Sep 2023 05:29:56 -0400 Received: from szxga01-in.huawei.com (szxga01-in.huawei.com [45.249.212.187]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 64A51CF9; Fri, 22 Sep 2023 02:29:41 -0700 (PDT) Received: from kwepemm000012.china.huawei.com (unknown [172.30.72.53]) by szxga01-in.huawei.com (SkyGuard) with ESMTP id 4RsRkV0DkDzrSTM; Fri, 22 Sep 2023 17:27:30 +0800 (CST) Received: from build.huawei.com (10.175.101.6) by kwepemm000012.china.huawei.com (7.193.23.142) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256) id 15.1.2507.31; Fri, 22 Sep 2023 17:29:38 +0800 From: Wenchao Hao To: "James E . J . Bottomley" , "Martin K . Petersen" , Douglas Gilbert , , CC: , , Wenchao Hao Subject: [PATCH v5 10/10] scsi: scsi_debug: Add param to control sdev's allow_restart Date: Fri, 22 Sep 2023 17:29:06 +0800 Message-ID: <20230922092906.2645265-11-haowenchao2@huawei.com> X-Mailer: git-send-email 2.32.0 In-Reply-To: <20230922092906.2645265-1-haowenchao2@huawei.com> References: <20230922092906.2645265-1-haowenchao2@huawei.com> MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Originating-IP: [10.175.101.6] X-ClientProxiedBy: dggems703-chm.china.huawei.com (10.3.19.180) To kwepemm000012.china.huawei.com (7.193.23.142) X-CFilter-Loop: Reflected Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Type: text/plain; charset="utf-8" Add new module param "allow_restart" to control if setup scsi_device's allow_restart flag. This is used to test scsi command finished with sense_key 0x6, asc 0x4 and ascq 0x2 Signed-off-by: Wenchao Hao Tested-by: Douglas Gilbert --- drivers/scsi/scsi_debug.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c index ab4a6f7de1ef..52a9ddea57d3 100644 --- a/drivers/scsi/scsi_debug.c +++ b/drivers/scsi/scsi_debug.c @@ -843,6 +843,7 @@ static bool have_dif_prot; static bool write_since_sync; static bool sdebug_statistics =3D DEF_STATISTICS; static bool sdebug_wp; +static bool sdebug_allow_restart; /* Following enum: 0: no zbc, def; 1: host aware; 2: host managed */ static enum blk_zoned_model sdeb_zbc_model =3D BLK_ZONED_NONE; static char *sdeb_zbc_model_s; @@ -5469,6 +5470,9 @@ static int scsi_debug_slave_configure(struct scsi_dev= ice *sdp) sdp->no_uld_attach =3D 1; config_cdb_len(sdp); =20 + if (sdebug_allow_restart) + sdp->allow_restart =3D 1; + devip->debugfs_entry =3D debugfs_create_dir(dev_name(&sdp->sdev_dev), sdebug_debugfs_root); debugfs_create_file("error", 0600, devip->debugfs_entry, sdp, @@ -6186,6 +6190,7 @@ module_param_named(zone_cap_mb, sdeb_zbc_zone_cap_mb,= int, S_IRUGO); module_param_named(zone_max_open, sdeb_zbc_max_open, int, S_IRUGO); module_param_named(zone_nr_conv, sdeb_zbc_nr_conv, int, S_IRUGO); module_param_named(zone_size_mb, sdeb_zbc_zone_size_mb, int, S_IRUGO); +module_param_named(allow_restart, sdebug_allow_restart, bool, S_IRUGO | S_= IWUSR); =20 MODULE_AUTHOR("Eric Youngdale + Douglas Gilbert"); MODULE_DESCRIPTION("SCSI debug adapter driver"); @@ -6258,6 +6263,7 @@ MODULE_PARM_DESC(zone_cap_mb, "Zone capacity in MiB (= def=3Dzone size)"); MODULE_PARM_DESC(zone_max_open, "Maximum number of open zones; [0] for no = limit (def=3Dauto)"); MODULE_PARM_DESC(zone_nr_conv, "Number of conventional zones (def=3D1)"); MODULE_PARM_DESC(zone_size_mb, "Zone size in MiB (def=3Dauto)"); +MODULE_PARM_DESC(allow_restart, "Set scsi_device's allow_restart flag(def= =3D0)"); =20 #define SDEBUG_INFO_LEN 256 static char sdebug_info[SDEBUG_INFO_LEN]; --=20 2.32.0