From nobody Tue Dec 2 00:46:07 2025 Received: from mail-pg1-f171.google.com (mail-pg1-f171.google.com [209.85.215.171]) (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 C5D2D313E0F for ; Mon, 24 Nov 2025 23:48:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.215.171 ARC-Seal: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764028110; cv=none; b=ZHKGwhGp37XjOMsa4bVqBdP+v2pr2l037aY8lqYB1YjK4aL75erZKoUXksdHoJvJ4Ia8TO0Po49gX5Jb6I53llAa7DP7SwSjY+rhdnDpB+pf/iObpLUmE5oxHzmTFnOsddcMM6alGaVhjMZ2h/CtxuDHeQAmtMkZKlC5P0Equ10= ARC-Message-Signature: i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1764028110; c=relaxed/simple; bh=AU6gZMWoUejzxWtNerSxKMr0ZxfAoqmaTtwAxnvaFgQ=; h=From:To:Cc:Subject:Date:Message-Id:In-Reply-To:References: MIME-Version; b=dhrF5tlXA5vUBGZ7hXfTcQwqxtwXj3Jg/UiH3rkokko2rWexTdz5UPUY526Hipubhc9vZkYseL960Y8mxCEEPS4RYmxAkaiohsL6YLNnogzy2TdkD3PNpewG+amflbl7a+hjeOBfmyEUv92/tVy6L5NLulbSTPPor0ahb9+p5VE= 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=lq6ugxMm; arc=none smtp.client-ip=209.85.215.171 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="lq6ugxMm" Received: by mail-pg1-f171.google.com with SMTP id 41be03b00d2f7-bc8198fbaf8so4418556a12.1 for ; Mon, 24 Nov 2025 15:48:27 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1764028107; x=1764632907; 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=KD9mOy62HqGMPaOYo+qJ4jLF6S4k7Y6n0q2fK45fvpw=; b=lq6ugxMmUsfcFcfrN2hI2q5uo3qKC0lcYsCcmMVQlglmNFMZsZRxQws1LIAEQ9d4uR Tcq2enPC5f2a7pXnih0YZW2TCZ70XI3wUfkMuTfGib69MOF1JzD6Fs6/LIU5vH/d4+Ch ag08aC00IeRf+xW32sBk5KEYF8m+h61nwsZ+/7bcxsYi+ssrYvgeM1IEqKzclY1OpKQ2 6UiFw7foQTpFGzCqj5bJD24hwUyzhCoOZkRfXW/xL6M6YXRlHXdGNKSFJVoIflMnPM+Q 8s+3cLIZa+ljYHSQ0HeJqVyMMK5yi1YdC9xLId/M2CrxGewIQJ2b+ufHsNxGMIDiP4wa 0K4Q== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1764028107; x=1764632907; 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=KD9mOy62HqGMPaOYo+qJ4jLF6S4k7Y6n0q2fK45fvpw=; b=Du0jPRsd167NMPAYCMiJhZVQVKeyv+Mmqel6eX52ikHzK1DSWxaZbGNdT9RG8TJJ2k kIcZUjwoMCQMg+nmBWQMcI6+qC8iOkzlki5U7L7ERCPrbLp9bQTvBZ7h/8xUM86cDPyi TIZ2FVgziLfEwx/a//laMG7qA2IWmT5FyS2iaOb4+496PyxqTUHBNm/3UfLnou5WPnPl mtW2dd51TXxNz4EqQVrhbAgcgXHNhm9UGOn2KXGjmcvZfjkxcwsGao1BiU/AR/XNCRCe f2Yl1OC03Uyz2Ns1Q0AnpXgAUcdPrTiQpC34tx/OFXWRwbKulrBnYaTL/41XzW+UQuwG yHaw== X-Forwarded-Encrypted: i=1; AJvYcCWAJaCCi+lhfMRRwD5crwD8gI3MxNR35TeiTsLywy+pzCenbac9jUVT4jfKSOy60XENGD64vqljYYT+Z9o=@vger.kernel.org X-Gm-Message-State: AOJu0Yy9YynL941GChMSn3cW0vd7p8ehM26FxB+42HxyUJ2CtsDiZh1Q fw6TlZmaVwEcaZW+FoYg75L9JWRz248HRYcy2WT9q/CKO3hNHPOynlZp X-Gm-Gg: ASbGncv3ewYTA+LC8S2Mzk9aTzu+0Ao5N27MnLrKEESRfErA0TK81yLK3UgtPzui5rK FmU5nLo2gdrkSsPYc95mBhZqilADfxcQh3STS1NFc5HIPUn73JmEaEbfAJzdjn5EpYFc+GwGNK8 oO+OR8zExNuAMtgHYbJAKx26RX/OHp76k6IPFTiv92SBup8b1j7Vt0uDfkFZELI6VC0Cq9ISWLC heo8qvflqRNUaAt3d0BpL+xPJzc8AJSNZPm8CXnPvCrTFpsxrrnV0Mx86A1s3m04PNSAkI5kvMS BzZhfyaWe87EfZGN4Wr0j1cC/r1K/8P98svikqFvxKZEXVWBkWFZ/O+IP3RrEi4GtzA/8qhdcii Ss1SWzSTPf1qmRJRs7wy1vTgh2PZ/eU/XbRrD+uP7Vt2XlP+CjehszR0z+cQ4Rihauzu6TSROd7 qGOLbf2bmHhAe0mdtKeD1RDDE3YVwAIR2pAzNY5jq0LAQs1lc= X-Google-Smtp-Source: AGHT+IGqGWPp3dbaz9P/oMvxkH8tM768OBnx1ym9H6OndIwxHy5XjYnjyPQDBtMIVrKtoM7S3ehYMw== X-Received: by 2002:a05:693c:810c:b0:2a4:3593:9697 with SMTP id 5a478bee46e88-2a719279965mr8848102eec.20.1764028106837; Mon, 24 Nov 2025 15:48:26 -0800 (PST) Received: from localhost (ip70-175-132-216.oc.oc.cox.net. [70.175.132.216]) by smtp.gmail.com with ESMTPSA id 5a478bee46e88-2a6fc5b122dsm56253333eec.5.2025.11.24.15.48.26 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 24 Nov 2025 15:48:26 -0800 (PST) From: Chaitanya Kulkarni To: axboe@kernel.dk, agk@redhat.com, snitzer@kernel.org, mpatocka@redhat.com, song@kernel.org, yukuai@fnnas.com, hch@lst.de, sagi@grimberg.me, kch@nvidia.com, jaegeuk@kernel.org, chao@kernel.org, cem@kernel.org Cc: linux-block@vger.kernel.org, linux-kernel@vger.kernel.org, dm-devel@lists.linux.dev, linux-raid@vger.kernel.org, linux-nvme@lists.infradead.org, linux-f2fs-devel@lists.sourceforge.net, linux-xfs@vger.kernel.org, bpf@vger.kernel.org, Chaitanya Kulkarni , "Martin K . Petersen" , Johannes Thumshirn Subject: [PATCH V3 4/6] nvmet: ignore discard return value Date: Mon, 24 Nov 2025 15:48:04 -0800 Message-Id: <20251124234806.75216-5-ckulkarnilinux@gmail.com> X-Mailer: git-send-email 2.40.0 In-Reply-To: <20251124234806.75216-1-ckulkarnilinux@gmail.com> References: <20251124234806.75216-1-ckulkarnilinux@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" __blkdev_issue_discard() always returns 0, making the error checking in nvmet_bdev_discard_range() dead code. Kill the function nvmet_bdev_discard_range() and call __blkdev_issue_discard() directly from nvmet_bdev_execute_discard(), since no error handling is needed anymore for __blkdev_issue_discard() call. Reviewed-by: Martin K. Petersen Reviewed-by: Johannes Thumshirn Reviewed-by: Christoph Hellwig Signed-off-by: Chaitanya Kulkarni --- drivers/nvme/target/io-cmd-bdev.c | 28 +++++++--------------------- 1 file changed, 7 insertions(+), 21 deletions(-) diff --git a/drivers/nvme/target/io-cmd-bdev.c b/drivers/nvme/target/io-cmd= -bdev.c index 8d246b8ca604..ca7731048940 100644 --- a/drivers/nvme/target/io-cmd-bdev.c +++ b/drivers/nvme/target/io-cmd-bdev.c @@ -362,29 +362,14 @@ u16 nvmet_bdev_flush(struct nvmet_req *req) return 0; } =20 -static u16 nvmet_bdev_discard_range(struct nvmet_req *req, - struct nvme_dsm_range *range, struct bio **bio) -{ - struct nvmet_ns *ns =3D req->ns; - int ret; - - ret =3D __blkdev_issue_discard(ns->bdev, - nvmet_lba_to_sect(ns, range->slba), - le32_to_cpu(range->nlb) << (ns->blksize_shift - 9), - GFP_KERNEL, bio); - if (ret && ret !=3D -EOPNOTSUPP) { - req->error_slba =3D le64_to_cpu(range->slba); - return errno_to_nvme_status(req, ret); - } - return NVME_SC_SUCCESS; -} - static void nvmet_bdev_execute_discard(struct nvmet_req *req) { + struct nvmet_ns *ns =3D req->ns; struct nvme_dsm_range range; struct bio *bio =3D NULL; + sector_t nr_sects; int i; - u16 status; + u16 status =3D NVME_SC_SUCCESS; =20 for (i =3D 0; i <=3D le32_to_cpu(req->cmd->dsm.nr); i++) { status =3D nvmet_copy_from_sgl(req, i * sizeof(range), &range, @@ -392,9 +377,10 @@ static void nvmet_bdev_execute_discard(struct nvmet_re= q *req) if (status) break; =20 - status =3D nvmet_bdev_discard_range(req, &range, &bio); - if (status) - break; + nr_sects =3D le32_to_cpu(range.nlb) << (ns->blksize_shift - 9); + __blkdev_issue_discard(ns->bdev, + nvmet_lba_to_sect(ns, range.slba), nr_sects, + GFP_KERNEL, &bio); } =20 if (bio) { --=20 2.40.0