From nobody Thu Apr 2 22:29:02 2026 Received: from mail-yw1-f177.google.com (mail-yw1-f177.google.com [209.85.128.177]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 6B95F27A904 for ; Sat, 14 Feb 2026 01:19:30 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.177 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771031971; cv=none; b=t3EMiD24bm2e5sojVAAAQGZe5bowtDsHm1Vc9M82oj/ZnR/FXjnysMArYWVfqhRwkbjfIOWfM8Gy1p995HlB6v/QX28ML9D8/RcSkCRTaC44cLNoWhuIHIHJj17fhnK+6buwWZ84/mHrcRKvOEIcjlzup9i1DKKdE0RWMEe04J0= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771031971; c=relaxed/simple; bh=pxsUPV3X+1Lx97Sg7gCRq669oEOJQ1slTn/9AXcycEo=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=Syv1GkQSHQqdpj/Bel+qoO7HZbSdh+JL1lKg172xVc/aF0HfN6oV2rmwUW8ViJNzFHNJi7ild36vT+DmsNHq2QCTEqF5I0qcCwYC3+qEcFdpZNAv2TS/1WmIgrrNeFUeN3EMT3fqziZeRCKsDjc8o4mXNRcGBPjLr6jWkY4jKTE= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=YbpPtxbK; arc=none smtp.client-ip=209.85.128.177 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="YbpPtxbK" Received: by mail-yw1-f177.google.com with SMTP id 00721157ae682-79274e0e56bso14896647b3.0 for ; Fri, 13 Feb 2026 17:19:30 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1771031969; x=1771636769; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=jHjZcdDVe5lgkEsrlgfB21xqxgW4tVK8CvZ+GE1VuYM=; b=YbpPtxbKDQdQNrvjzB5LurHvGi1LA0TPrA6qJ4lcIBFBSWJuKjlX5rham8HsNy2VLi 5AbccYgcEHgmIZTyySW+rkbSQE8BvWP7ZpOBoqeYYUk3eeb92QRlYSAJgFIkiSikxWxF xrcWVDCbSlTLfWWVhZy1q2O59XIweDox+Yt7SUdldhzkySqGsOxdPGc/ZIvXFtjUAoi0 8Lp8eAeaPIF395j2LTr1OVH89WplIBukIKHbJP56rqP81X/bBFAnE8yp3z3aHVm75MUC PO2315DMre9lr2AqzXfz9XFlAf9T8vURPJCVT2vdgJcLZx+gxr9a4rBmRwN3A/5OilDV 20Cg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1771031969; x=1771636769; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=jHjZcdDVe5lgkEsrlgfB21xqxgW4tVK8CvZ+GE1VuYM=; b=xKeTPiJGUrEKPQe9Nm+R98BDrXnhEB8Un8rhvBa0CcPuFB/oz5UrAcWDN5gCConPNA uL584u1mQQq2NZ6X6Rvst+fIFUlXjdfB291Jg5Qwf1DEXyI3Jewu/UMshbAfB0H8aKl+ si6DWPy7AQWkrSPaW936RFoPNfkWhbvrjrTQZGU2yMR1OdUKoIDWEHMXK2s7W+e7ldyD kH0LRP/0/8ahiK8iq6eEtR5rE2ajHDzzEJH7mR195G878MQLgjJIDFgo2yWUwgoul6t6 rQ17dNhnNshZs62Z1TOFkStAo8wXbV7iSlbCDfoSz723y6asXij2StVQUJrVAEfJGbGH qbtw== X-Gm-Message-State: AOJu0Yxj3IEYwXAVMN5P6CI43VWlFbr0LETlUxDzCEU3LE7k2o1aOwvN jk7GIC4+LewundqcWfOCWVWb6uHxuGWe98KEveRIGxOTzOTe0UcYUyFOB8IFmw== X-Gm-Gg: AZuq6aKUf4z67fMbqFdHFXDiIeFEWie9pTmH9XbhUGHlhp3qIXaVrZ3eefxOqKmTx1m JHWtWwW0EsN42MWdQgO05GO+TyL6oHipes1UDzSn4gyau/eM016JCYJ8bO3zHFAWYwwhS6cfJNm oC678liO+KbCGYrRRjcylWouzRbdQJ7xC3SgZbNCTZbed5uaexFL1JS/8qvRtkIYnqqiUKf5WcB IvO09Kl4ggTlgVGdhjyWhgycK5BU2qvFI5Di9JDR3QAMWOS9MA0D8AmOOuLoOz6aRYZ+x3oQ7Ai RS5tgwOxhoM6tTYJwwsZoFd2cp6zX5L7WNS4egC3XAwMNg6m/NNn/qTVGdS/5lMzY7dgM/Qy3ao bZVhMPMTjTfmu3EDsQI1FWoLu5aZBiPvxSoW5vRk0EfqaZu+8WrXWe7r5LtDrDV9b4tc3DPNG5A cOedkG7tUzMUDbglI/N0pMM2G0Cl5aetGjoBFFwcko6OpHU2s= X-Received: by 2002:a05:690c:ec5:b0:796:4f04:bbc3 with SMTP id 00721157ae682-797a0cb9269mr33087647b3.35.1771031969513; Fri, 13 Feb 2026 17:19:29 -0800 (PST) Received: from 5163NRD-SPRABHU.ssi.samsung.com ([50.205.20.42]) by smtp.gmail.com with ESMTPSA id 00721157ae682-7966c177773sm77655057b3.2.2026.02.13.17.19.27 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Feb 2026 17:19:28 -0800 (PST) From: sw.prabhu6@gmail.com To: James.Bottomley@HansenPartnership.com, martin.petersen@oracle.com, linux-scsi@vger.kernel.org Cc: linux-kernel@vger.kernel.org, mcgrof@kernel.org, pankaj.raghav@linux.dev, bvanassche@acm.org, dlemoal@kernel.org, Swarna Prabhu , Swarna Prabhu , Pankaj Raghav Subject: [PATCH v3 1/2] scsi: sd: enable sector size > PAGE_SIZE in scsi sd driver Date: Fri, 13 Feb 2026 17:18:29 -0800 Message-Id: <20260214011829.508272-2-sw.prabhu6@gmail.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20260214011829.508272-1-sw.prabhu6@gmail.com> References: <20260214011829.508272-1-sw.prabhu6@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Swarna Prabhu The WRITE SAME(16) and WRITE SAME(10) scsi commands uses a page from a dedicated mempool('sd_page_pool') for its payload. This pool was initialized to allocate single pages, which was sufficient as long as the device sector size did not exceed the PAGE_SIZE. Given that block layer now supports block size upto 64K ie beyond PAGE_SIZE, initialize large page pool in 'sd_probe()' if a higher sector device is attached ensuring atomicity. Adapt 'sd_set_special_bvec()' to use large page pool when a higher sector size device is attached. Hence enable sector sizes > PAGE_SIZE in scsi sd driver. Signed-off-by: Swarna Prabhu Co-developed-by: Pankaj Raghav Signed-off-by: Pankaj Raghav Reviewed-by: Damien Le Moal --- drivers/scsi/sd.c | 80 ++++++++++++++++++++++++++++++++++++++++------- 1 file changed, 68 insertions(+), 12 deletions(-) diff --git a/drivers/scsi/sd.c b/drivers/scsi/sd.c index d76996d6cbc9..ae6ccfed79b9 100644 --- a/drivers/scsi/sd.c +++ b/drivers/scsi/sd.c @@ -107,8 +107,11 @@ static void sd_config_write_same(struct scsi_disk *sdk= p, static void sd_revalidate_disk(struct gendisk *); =20 static DEFINE_IDA(sd_index_ida); +static DEFINE_MUTEX(sd_mutex_lock); =20 static mempool_t *sd_page_pool; +static mempool_t *sd_large_page_pool; +static atomic_t sd_large_page_pool_users =3D ATOMIC_INIT(0); static struct lock_class_key sd_bio_compl_lkclass; =20 static const char *sd_cache_types[] =3D { @@ -116,6 +119,33 @@ static const char *sd_cache_types[] =3D { "write back, no read (daft)" }; =20 +static int sd_large_pool_create_lock(void) +{ + mutex_lock(&sd_mutex_lock); + if (!sd_large_page_pool) { + sd_large_page_pool =3D mempool_create_page_pool( + SD_MEMPOOL_SIZE, get_order(BLK_MAX_BLOCK_SIZE)); + if (!sd_large_page_pool) { + printk(KERN_ERR "sd: can't create large page mempool\n"); + mutex_unlock(&sd_mutex_lock); + return -ENOMEM; + } + } + atomic_inc(&sd_large_page_pool_users); + mutex_unlock(&sd_mutex_lock); + return 0; +} + +static void sd_large_pool_destroy_lock(void) +{ + mutex_lock(&sd_mutex_lock); + if (atomic_dec_and_test(&sd_large_page_pool_users)) { + mempool_destroy(sd_large_page_pool); + sd_large_page_pool =3D NULL; + } + mutex_unlock(&sd_mutex_lock); +} + static void sd_disable_discard(struct scsi_disk *sdkp) { sdkp->provisioning_mode =3D SD_LBP_DISABLE; @@ -928,14 +958,24 @@ static unsigned char sd_setup_protect_cmnd(struct scs= i_cmnd *scmd, return protect; } =20 -static void *sd_set_special_bvec(struct request *rq, unsigned int data_len) +static void *sd_set_special_bvec(struct scsi_cmnd *cmd, unsigned int data_= len) { struct page *page; + struct request *rq =3D scsi_cmd_to_rq(cmd); + struct scsi_device *sdp =3D cmd->device; + unsigned sector_size =3D sdp->sector_size; + unsigned int nr_pages =3D DIV_ROUND_UP(sector_size, PAGE_SIZE); + int n; =20 - page =3D mempool_alloc(sd_page_pool, GFP_ATOMIC); + if (sector_size > PAGE_SIZE) + page =3D mempool_alloc(sd_large_page_pool, GFP_ATOMIC); + else + page =3D mempool_alloc(sd_page_pool, GFP_ATOMIC); if (!page) return NULL; - clear_highpage(page); + + for (n =3D 0; n < nr_pages; n++) + clear_highpage(page + n); bvec_set_page(&rq->special_vec, page, data_len, 0); rq->rq_flags |=3D RQF_SPECIAL_PAYLOAD; return bvec_virt(&rq->special_vec); @@ -951,7 +991,7 @@ static blk_status_t sd_setup_unmap_cmnd(struct scsi_cmn= d *cmd) unsigned int data_len =3D 24; char *buf; =20 - buf =3D sd_set_special_bvec(rq, data_len); + buf =3D sd_set_special_bvec(cmd, data_len); if (!buf) return BLK_STS_RESOURCE; =20 @@ -1040,7 +1080,7 @@ static blk_status_t sd_setup_write_same16_cmnd(struct= scsi_cmnd *cmd, u32 nr_blocks =3D sectors_to_logical(sdp, blk_rq_sectors(rq)); u32 data_len =3D sdp->sector_size; =20 - if (!sd_set_special_bvec(rq, data_len)) + if (!sd_set_special_bvec(cmd, data_len)) return BLK_STS_RESOURCE; =20 cmd->cmd_len =3D 16; @@ -1067,7 +1107,7 @@ static blk_status_t sd_setup_write_same10_cmnd(struct= scsi_cmnd *cmd, u32 nr_blocks =3D sectors_to_logical(sdp, blk_rq_sectors(rq)); u32 data_len =3D sdp->sector_size; =20 - if (!sd_set_special_bvec(rq, data_len)) + if (!sd_set_special_bvec(cmd, data_len)) return BLK_STS_RESOURCE; =20 cmd->cmd_len =3D 10; @@ -1513,9 +1553,15 @@ static blk_status_t sd_init_command(struct scsi_cmnd= *cmd) static void sd_uninit_command(struct scsi_cmnd *SCpnt) { struct request *rq =3D scsi_cmd_to_rq(SCpnt); + struct scsi_device *sdp =3D SCpnt->device; + unsigned sector_size =3D sdp->sector_size; =20 - if (rq->rq_flags & RQF_SPECIAL_PAYLOAD) - mempool_free(rq->special_vec.bv_page, sd_page_pool); + if (rq->rq_flags & RQF_SPECIAL_PAYLOAD) { + if (sector_size > PAGE_SIZE) + mempool_free(rq->special_vec.bv_page, sd_large_page_pool); + else + mempool_free(rq->special_vec.bv_page, sd_page_pool); + } } =20 static bool sd_need_revalidate(struct gendisk *disk, struct scsi_disk *sdk= p) @@ -2912,10 +2958,7 @@ sd_read_capacity(struct scsi_disk *sdkp, struct queu= e_limits *lim, "Sector size 0 reported, assuming 512.\n"); } =20 - if (sector_size !=3D 512 && - sector_size !=3D 1024 && - sector_size !=3D 2048 && - sector_size !=3D 4096) { + if (blk_validate_block_size(sector_size)) { sd_printk(KERN_NOTICE, sdkp, "Unsupported sector size %d.\n", sector_size); /* @@ -4043,6 +4086,12 @@ static int sd_probe(struct scsi_device *sdp) sdkp->max_medium_access_timeouts =3D SD_MAX_MEDIUM_TIMEOUTS; =20 sd_revalidate_disk(gd); + if (sdp->sector_size > PAGE_SIZE) { + if (sd_large_pool_create_lock()) { + error =3D -ENOMEM; + goto out_free_index; + } + } =20 if (sdp->removable) { gd->flags |=3D GENHD_FL_REMOVABLE; @@ -4060,6 +4109,8 @@ static int sd_probe(struct scsi_device *sdp) if (error) { device_unregister(&sdkp->disk_dev); put_disk(gd); + if (sdp->sector_size > PAGE_SIZE) + sd_large_pool_destroy_lock(); goto out; } =20 @@ -4212,6 +4263,9 @@ static void sd_remove(struct scsi_device *sdp) sd_shutdown(sdp); =20 put_disk(sdkp->disk); + + if (sdp->sector_size > PAGE_SIZE) + sd_large_pool_destroy_lock(); } =20 static inline bool sd_do_start_stop(struct scsi_device *sdev, bool runtime) @@ -4435,6 +4489,8 @@ static void __exit exit_sd(void) =20 scsi_unregister_driver(&sd_template); mempool_destroy(sd_page_pool); + if (sd_large_page_pool) + mempool_destroy(sd_large_page_pool); =20 class_unregister(&sd_disk_class); =20 --=20 2.39.5 From nobody Thu Apr 2 22:29:02 2026 Received: from mail-yw1-f170.google.com (mail-yw1-f170.google.com [209.85.128.170]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 252E9202F65 for ; Sat, 14 Feb 2026 01:19:39 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.170 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771031980; cv=none; b=HZeO/0G6qVgt+a6adDsVKMCe15K4y/PxHLlv4LXbmE6YvLpIZucHlrQ2J+6/GDst6izFzNxnfZSJBq5fLLZbDNpZz9PNTaFTbbd4BYEJ5BqhsJC1eZ3G9272eX59dGHoEdCDEC7hsWVUnoXHYCFgwK6d0Hu0oHlwr41F0qqzDIk= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1771031980; c=relaxed/simple; bh=AdiN4kJ4lWQ/oIlSgUGfi5JSCMjnnHuNZPraS5k/xuA=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=Tug+kALVf2M546ZGx/EkPng368oDWj7VWZU30f9dEDEv9IZJKBntsKzEhzK2yHkCvhdF4l/6cnsSbr6a89n2O23CeBcpXP9RoYYxCu6H2Egu+348lXc33MVuSR+n0eaO6n9gv9ywF8kAf0rmLi94hChH9XeJAsrFzw4DLAKQU0g= ARC-Authentication-Results: i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=XWBOqSNb; arc=none smtp.client-ip=209.85.128.170 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="XWBOqSNb" Received: by mail-yw1-f170.google.com with SMTP id 00721157ae682-79495b1aaa7so15796647b3.1 for ; Fri, 13 Feb 2026 17:19:38 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1771031978; x=1771636778; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=rxxDqb9sCehr4aY04ovS37dZDZh0n2wPFLedvk9CKcw=; b=XWBOqSNbTkNb0DA9RoZih0lMISTM8kaCs6XbbFuxlFopcWYl+D+FAVMwuFiSN0mI8x 8qYHxjXRydKnIt13pn4JGIF6G4Op8Sb7umNL/DCMbd8XyLgCRQHkPU9sVbQR2nOfT234 0680UWVaBjeD8LS+76vxWD8T8csuPFObUAErhVGyhrn0tcYkdP2ssvVtJVpFfrXsJm4A E5sb08xAUMQpsxzYVZcxVYhyHR4XFEi6mxvz49+yasvXUVbQnXrgewvtqeLy/KLdbEQj 24TylSJ/IELcFn9oliDroYs7TEnOHGmAQP076IeppCsKMYZpxQVjREagtIQB17cOhvvo 0poQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1771031978; x=1771636778; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=rxxDqb9sCehr4aY04ovS37dZDZh0n2wPFLedvk9CKcw=; b=mJqu7xWTB+I3k70gXPS/YFIqifIn76FPjEkS1bW5e79oL1ypAZggO84NrHH+MyEQaq Odj9YPW8o5/rhyN4dX08OZzSbQB6VqTgzZCx7hfVzDVNKbyjiV6a+iGSyE32130bZqtd A96Adrbmjap3B/+DS+hSzumWGVbkeulQdQcplXwDAeJnd7yVHSAinfF1qmWV04IESAQ9 7jbfZvPZ+A6E2sWVAI2mo0qd0ic58HOMfcsDIyXUE0nkDCDLubcHcNiFHiiwU1B2rqtC HdSACBnHWQBjSUSrx8yM9m3afykwh7V3wsMB8MaIPEhL67/ks8XgijW0/wsm/9o+sfVZ lMvA== X-Gm-Message-State: AOJu0YzD8Yu3fzRbXHk/WI8HEHuF0+nR1EC2sPduhtOa7mxfWVtAgx6t T5XYAIjAtsMcah2k5iXysxzEsd3hDsVUIbY302CFBkWVbgJ1amf28/z4 X-Gm-Gg: AZuq6aKI5fGuPn421rVbM8cEe4AJbu8zr+1Rsm2Cda13iLK4qmTpBZK7kDhiB6DUeLs G6JtQXG5j1sqjg7IoDkf7Y/I6ccbP17HJac68hwpo+YTf0gBB5TEIYmBuhRZ+bICLF1zEAb8RgU pP4Dn/yELIK/dWB2UF5O84ayYXeznKGCQ3mxmw3QVQt/REsK/uEqg4/gl7lvCOiXx0z92u7tKmP lGj3P/4hNmF54YODsdR4FGiVssR+3/LjXoUWj/bObdz0nlOSTdtsrC+xNW91VSQball9vActAFi 43TES4p/2Qx92klg7es5WiCvw5gx6j07VyNU7QNFMcrVQqN6aSNbSq8IHDhCeMSHb43qEfATc5q m6RqeL0MfpOUzv7ObEuknz2lnOC8UWWfGEko34OSZuEjAqWROslgRRil78UAenOkq+5xGYNqfF9 B9ZV6+Yb77rBSECNIpZsRRs20Y2ndMThw6Kc3mswZCvo4ckirxt8WEmiHr7A== X-Received: by 2002:a05:690c:f81:b0:796:3a4f:68e4 with SMTP id 00721157ae682-7979e7f071bmr40554807b3.17.1771031978165; Fri, 13 Feb 2026 17:19:38 -0800 (PST) Received: from 5163NRD-SPRABHU.ssi.samsung.com ([50.205.20.42]) by smtp.gmail.com with ESMTPSA id 00721157ae682-7966c177773sm77655057b3.2.2026.02.13.17.19.36 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 13 Feb 2026 17:19:37 -0800 (PST) From: sw.prabhu6@gmail.com To: James.Bottomley@HansenPartnership.com, martin.petersen@oracle.com, linux-scsi@vger.kernel.org Cc: linux-kernel@vger.kernel.org, mcgrof@kernel.org, pankaj.raghav@linux.dev, bvanassche@acm.org, dlemoal@kernel.org, Swarna Prabhu Subject: [PATCH v3 2/2] scsi: scsi_debug: enable sdebug_sector_size > PAGE_SIZE Date: Fri, 13 Feb 2026 17:18:30 -0800 Message-Id: <20260214011829.508272-3-sw.prabhu6@gmail.com> X-Mailer: git-send-email 2.39.5 In-Reply-To: <20260214011829.508272-1-sw.prabhu6@gmail.com> References: <20260214011829.508272-1-sw.prabhu6@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset="utf-8" From: Swarna Prabhu Now that block layer can support block size > PAGE_SIZE and the issue with WRITE_SAME(16) and WRITE_SAME(10) are fixed for sector sizes > PAGE_SIZE, enable sdebug_sector_size > PAGE_SIZE in scsi_debug. Signed-off-by: Swarna Prabhu Reviewed-by: Damien Le Moal Reviewed-by: Hannes Reinecke --- drivers/scsi/scsi_debug.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/drivers/scsi/scsi_debug.c b/drivers/scsi/scsi_debug.c index c947655db518..4c6feee87f05 100644 --- a/drivers/scsi/scsi_debug.c +++ b/drivers/scsi/scsi_debug.c @@ -8495,13 +8495,7 @@ static int __init scsi_debug_init(void) } else if (sdebug_ndelay > 0) sdebug_jdelay =3D JDELAY_OVERRIDDEN; =20 - switch (sdebug_sector_size) { - case 512: - case 1024: - case 2048: - case 4096: - break; - default: + if (blk_validate_block_size(sdebug_sector_size)) { pr_err("invalid sector_size %d\n", sdebug_sector_size); return -EINVAL; } --=20 2.39.5