Received: by 2002:ab2:3b09:0:b0:1ed:14ea:9113 with SMTP id b9csp151163lqc; Thu, 29 Feb 2024 13:03:40 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCVL8cY9GXBSCH6qfirIQfa5wuBqDmWGIM6aTnkV7wZdFARG8pD2UTQGqeLFDZFbdny0vlsnK+1bRlheUPhnjOCjPU5N9u/C1Z4UygMRxQ== X-Google-Smtp-Source: AGHT+IE57hlQaviFpugiAmvqOpdYvPfxIreC/iPqHlIZYwbwYgGxyJNBpPDPGczY2XoZzs4jG2iU X-Received: by 2002:a05:6358:591d:b0:17b:eedd:e107 with SMTP id g29-20020a056358591d00b0017beedde107mr1511923rwf.14.1709240620056; Thu, 29 Feb 2024 13:03:40 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1709240620; cv=pass; d=google.com; s=arc-20160816; b=V+3mBMp/STSxi3ynZT+34RxgkjFqB3DwrI1ium6ZNd+u3nZ3X/yBd6NyMkl6XbDZVH OrZtcbflmV8J8shfy/eBVEeW+lkp8d0tK1VG+zugEqkAMvex+AlLpuqeBMEw3eZF0kfG Zz2GWzUEd56uYpmCXlDrIsNb8e0BbPug5oXsZxox755WBi7TnV0ADhhUcE57zqNk46M4 cQj14zORt9a2/of6mUKQYutpbpDDCn87Lo+fU3nafsjYMCirOu/hkP+Co3IVelFyld92 MShiHZssRnScL/b73e+58xKcoWkKmMSN3Xv24hMvU9/FwuWpwEktkHGIKrXqbuPA+B6s NGIw== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=content-transfer-encoding:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:in-reply-to:message-id :date:subject:cc:to:from:dkim-signature; bh=LckYe8KKntZSVc8YZqVUparUFJpmsPrKVN4HmVkW6a0=; fh=lbcQL7oIYf/a0JavtqwyVBzHnxY9BvZg7G8H0sf1jLw=; b=Bn/7Y3ktAK7oc8PI/ffs+UEnejJsGjnRzyImqJ1Mnkh4uq0aYp+/I+kyFAPMwfbx3u KctxBvWMnV7KlOaGDTdr54z3Nw2FPRSh4sOaxBRPaukm0VIV60R9Hp7JfKPm6ZiXDwRU 2i+2STIiDWuKOjAY3ZNmxFozF6N2S/ZbkLxpQ1BD0U5Q9k99A9O9sg3OYzFs1uB2fz7K SaPrv3wbXjZpQS1R0cZY+e+LNPye1A/JqaNsCD0og1OO9OztLVXK3JDYAo6mdL03TweJ PYaLKB1s6Wi2MvycwF1rJ+VzJFeLhJv7GsMaTwBmtufYL6N1xepTRMMV4VNjnU5Ys4ZQ OJ5g==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=HQkzByet; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-87525-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-87525-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from ny.mirrors.kernel.org (ny.mirrors.kernel.org. [2604:1380:45d1:ec00::1]) by mx.google.com with ESMTPS id 11-20020ac8570b000000b0042e7a518058si2290701qtw.500.2024.02.29.13.03.39 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 29 Feb 2024 13:03:40 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-87525-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) client-ip=2604:1380:45d1:ec00::1; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=HQkzByet; arc=pass (i=1 dkim=pass dkdomain=kernel.org); spf=pass (google.com: domain of linux-kernel+bounces-87525-linux.lists.archive=gmail.com@vger.kernel.org designates 2604:1380:45d1:ec00::1 as permitted sender) smtp.mailfrom="linux-kernel+bounces-87525-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: from smtp.subspace.kernel.org (wormhole.subspace.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ny.mirrors.kernel.org (Postfix) with ESMTPS id C2A3E1C225B2 for ; Thu, 29 Feb 2024 21:03:39 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id B18B216FF4A; Thu, 29 Feb 2024 20:42:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b="HQkzByet" Received: from smtp.kernel.org (aws-us-west-2-korg-mail-1.web.codeaurora.org [10.30.226.201]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id D742716FF2F; Thu, 29 Feb 2024 20:42:14 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=10.30.226.201 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1709239334; cv=none; b=MFymk+pfHUdgrPLnVkczgM2qxWfd/nIP21F6OXo0QBMQbIuUZRG3J7lFXAvmHNF2QgEn5HcmyU8nbz+3vpFfz4hTwIGaUpe6lf99U/rL6nwXLpnxRfpV+G6IBcGBTTfXu6xJaME0NthQrMqiOCdIDfMbIfZWk1G+lCcEEbvb2sY= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1709239334; c=relaxed/simple; bh=TPoEWdsLsO5MgKxk/CGhcQr3scilYGPhI2nKziaOJO0=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=tuc9uJ9OtfLjm7Vshw/0qngaK/xcmwy7M/B7ZvANZiO9AY3/LzQfhBQ1KRGZjqckWy9MWBHQCuzvidGao5wa417SZouwekLDb4/U4+4UZZxnpdR+o8YD2Z1COsrbV+gaFAhpUPBdoe8sfbRbPCqYbi0n0dTm5hDpoXxLAcHsa8c= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=kernel.org header.i=@kernel.org header.b=HQkzByet; arc=none smtp.client-ip=10.30.226.201 Received: by smtp.kernel.org (Postfix) with ESMTPSA id C9119C43394; Thu, 29 Feb 2024 20:42:13 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1709239334; bh=TPoEWdsLsO5MgKxk/CGhcQr3scilYGPhI2nKziaOJO0=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=HQkzByetWDnsoa4ofUfqBbGY4lzFaPJpAQe1ixKn8HCJjXaYXgvITzEGBFaUtc3CJ GCil8vEFz9IcSV8WtpQ0hNAuYJpCZtC87dTB/9dXIW0b4Cz7qKfs7h+UeAhEzIdf1i MF3HOcxs9PBvcC+reKZg+7yOs6T50ocUFkEWBOkpJ+5wW7s40Vk1Q5ijFSLgliOpt8 gyxfV8+x1Uz/LJR036EwC8DXwvMasPXS2+YDXIIDhkn1oq1GpycqHvTmASofRVZW2c iqpYAzqsRJlH1gmVwl/MWZNZw5rch/wIwQUg0g+g52db4dmUYw6jHVXGSZSbpArLOn IqXizZ1ksRRcA== From: Sasha Levin To: linux-kernel@vger.kernel.org, stable@vger.kernel.org Cc: Mikulas Patocka , Mike Snitzer , Sasha Levin , agk@redhat.com, dm-devel@lists.linux.dev Subject: [PATCH AUTOSEL 4.19 4/4] dm-verity, dm-crypt: align "struct bvec_iter" correctly Date: Thu, 29 Feb 2024 15:42:04 -0500 Message-ID: <20240229204208.2862333-4-sashal@kernel.org> X-Mailer: git-send-email 2.43.0 In-Reply-To: <20240229204208.2862333-1-sashal@kernel.org> References: <20240229204208.2862333-1-sashal@kernel.org> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 X-stable: review X-Patchwork-Hint: Ignore X-stable-base: Linux 4.19.307 Content-Transfer-Encoding: 8bit From: Mikulas Patocka [ Upstream commit 787f1b2800464aa277236a66eb3c279535edd460 ] "struct bvec_iter" is defined with the __packed attribute, so it is aligned on a single byte. On X86 (and on other architectures that support unaligned addresses in hardware), "struct bvec_iter" is accessed using the 8-byte and 4-byte memory instructions, however these instructions are less efficient if they operate on unaligned addresses. (on RISC machines that don't have unaligned access in hardware, GCC generates byte-by-byte accesses that are very inefficient - see [1]) This commit reorders the entries in "struct dm_verity_io" and "struct convert_context", so that "struct bvec_iter" is aligned on 8 bytes. [1] https://lore.kernel.org/all/ZcLuWUNRZadJr0tQ@fedora/T/ Signed-off-by: Mikulas Patocka Signed-off-by: Mike Snitzer Signed-off-by: Sasha Levin --- drivers/md/dm-crypt.c | 4 ++-- drivers/md/dm-verity.h | 4 ++-- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/drivers/md/dm-crypt.c b/drivers/md/dm-crypt.c index 908bf07688275..d094dd274c461 100644 --- a/drivers/md/dm-crypt.c +++ b/drivers/md/dm-crypt.c @@ -46,11 +46,11 @@ struct convert_context { struct completion restart; struct bio *bio_in; - struct bio *bio_out; struct bvec_iter iter_in; + struct bio *bio_out; struct bvec_iter iter_out; - u64 cc_sector; atomic_t cc_pending; + u64 cc_sector; union { struct skcipher_request *req; struct aead_request *req_aead; diff --git a/drivers/md/dm-verity.h b/drivers/md/dm-verity.h index 6e65ec0e627a6..04ef89e318564 100644 --- a/drivers/md/dm-verity.h +++ b/drivers/md/dm-verity.h @@ -72,11 +72,11 @@ struct dm_verity_io { /* original value of bio->bi_end_io */ bio_end_io_t *orig_bi_end_io; + struct bvec_iter iter; + sector_t block; unsigned n_blocks; - struct bvec_iter iter; - struct work_struct work; /* -- 2.43.0