From patchwork Mon Feb 22 16:25:46 2021 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: "Jason A. Donenfeld" X-Patchwork-Id: 385812 Delivered-To: patch@linaro.org Received: by 2002:a02:290e:0:0:0:0:0 with SMTP id p14csp1418307jap; Mon, 22 Feb 2021 08:29:46 -0800 (PST) X-Google-Smtp-Source: ABdhPJwqdoZXdNUpfVqRkA6QPPOS1QpiZgaGvyqQUTa2huZX7BkfyNPbcrwMj4+ZoSc3u25mTaCx X-Received: by 2002:a17:906:1992:: with SMTP id g18mr14644759ejd.44.1614011386433; Mon, 22 Feb 2021 08:29:46 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1614011386; cv=none; d=google.com; s=arc-20160816; b=uenRDlxS+F0o4pkdtjTnH1huHcrclIL1icoT37ZiKtg/Yp+JIxYkBvFQrNa55nZVu0 KOzk5zDP0dMmml8fKMVYgXOE4VNTNfIjfBfIEYURA/UAdWZ15TwJ4V5k6VJ5gav9thPN kt6mBh1EnFs2ucwYnXxg+zZaxj/tYnV8vqnrnvGiYJuRlBUdz1go8kR6ZGyxlcaqdD2h Bbyl4jY15wZWQdDBtJ5QUiftO7DQLUU3Occ/AShUZDJ5r7E45kdA9Fr/cv29QK1bvQ9U UmRZIObGjKchcIL+d35GiWvqIHbHWj7AY3Aj21NBTvmQEOrAt0Nyk5roBXPaw1Rqlsc5 Ef+A== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:to:from :dkim-signature; bh=2C+KauK5gZ/RdommxEl+TrbuudLez7C1bij2S/qAJFQ=; b=wGcIYd5Tj3Mk6tkbcl/reNGX4W8vMEvMnE1gZAHwAP84aEEF/zFqf58eYw87KnVn/C sgf6FEldSj25w1glQrXds7CJd5ftwbPJfpc3nZohb11GoocQ2pjR7O/HXM8yAsdCha8e lcAY4OGf8SF/K0PUoOPnIG+p/imDF3MlIjs+X5j6wyEpZLX8Su/w4zO8WJ8PCN52qiiV XK8kkEz5kDrLTci78AT03k5z7L+2dSjaKPXdsjZK0r8YQokjwoLJrHPF88ERb1P2UVqQ 2GVrniWDcRRrzq8zFS9NQZcemZj0MKAPwK0sdfbw6SPQPbk8uWgyGP2jc6LxhI6UseCB Z7dg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@zx2c4.com header.s=20210105 header.b=WSTNHYz5; spf=pass (google.com: domain of netdev-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=netdev-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=zx2c4.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id ld19si11583137ejb.273.2021.02.22.08.29.46; Mon, 22 Feb 2021 08:29:46 -0800 (PST) Received-SPF: pass (google.com: domain of netdev-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@zx2c4.com header.s=20210105 header.b=WSTNHYz5; spf=pass (google.com: domain of netdev-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=netdev-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=zx2c4.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S231947AbhBVQ3T (ORCPT + 9 others); Mon, 22 Feb 2021 11:29:19 -0500 Received: from mail.zx2c4.com ([104.131.123.232]:32820 "EHLO mail.zx2c4.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231725AbhBVQ1n (ORCPT ); Mon, 22 Feb 2021 11:27:43 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=zx2c4.com; s=20210105; t=1614011160; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references; bh=2C+KauK5gZ/RdommxEl+TrbuudLez7C1bij2S/qAJFQ=; b=WSTNHYz5s6qt/MiVwYbz6488DMw5CRymJM0KgYA2LlXXh5MsNl1h35lSw/9aC19cmVPPDi jLHYqdTiWR9egrLqCLiZdFmZYmwrr1ZFk0LDUS1fJZ1r8thGY99mlSCrg9VEfzO7exJM0t JCFMHB7OdpOBQPJgy2tf6KzwVl/aYmM= Received: by mail.zx2c4.com (ZX2C4 Mail Server) with ESMTPSA id ace57776 (TLSv1.3:AEAD-AES256-GCM-SHA384:256:NO); Mon, 22 Feb 2021 16:26:00 +0000 (UTC) From: "Jason A. Donenfeld" To: netdev@vger.kernel.org, davem@davemloft.net Subject: [PATCH net 4/7] wireguard: peer: put frequently used members above cache lines Date: Mon, 22 Feb 2021 17:25:46 +0100 Message-Id: <20210222162549.3252778-5-Jason@zx2c4.com> In-Reply-To: <20210222162549.3252778-1-Jason@zx2c4.com> References: <20210222162549.3252778-1-Jason@zx2c4.com> MIME-Version: 1.0 Precedence: bulk List-ID: X-Mailing-List: netdev@vger.kernel.org The is_dead boolean is checked for every single packet, while the internal_id member is used basically only for pr_debug messages. So it makes sense to hoist up is_dead into some space formerly unused by a struct hole, while demoting internal_api to below the lowest struct cache line. Fixes: e7096c131e51 ("net: WireGuard secure network tunnel") Signed-off-by: Jason A. Donenfeld --- drivers/net/wireguard/peer.h | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) -- 2.30.1 diff --git a/drivers/net/wireguard/peer.h b/drivers/net/wireguard/peer.h index 23af40922997..aaff8de6e34b 100644 --- a/drivers/net/wireguard/peer.h +++ b/drivers/net/wireguard/peer.h @@ -39,6 +39,7 @@ struct wg_peer { struct crypt_queue tx_queue, rx_queue; struct sk_buff_head staged_packet_queue; int serial_work_cpu; + bool is_dead; struct noise_keypairs keypairs; struct endpoint endpoint; struct dst_cache endpoint_cache; @@ -61,9 +62,8 @@ struct wg_peer { struct rcu_head rcu; struct list_head peer_list; struct list_head allowedips_list; - u64 internal_id; struct napi_struct napi; - bool is_dead; + u64 internal_id; }; struct wg_peer *wg_peer_create(struct wg_device *wg,