From mboxrd@z Thu Jan 1 00:00:00 1970 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 kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id C5ADAC77B75 for ; Tue, 23 May 2023 01:51:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1E52E900002; Mon, 22 May 2023 21:51:52 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 195C36B0074; Mon, 22 May 2023 21:51:52 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 05D62900002; Mon, 22 May 2023 21:51:52 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id E7A4C6B0072 for ; Mon, 22 May 2023 21:51:51 -0400 (EDT) Received: from smtpin26.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id AD2C914058C for ; Tue, 23 May 2023 01:51:51 +0000 (UTC) X-FDA: 80819843622.26.131B0E2 Received: from mail-ed1-f42.google.com (mail-ed1-f42.google.com [209.85.208.42]) by imf15.hostedemail.com (Postfix) with ESMTP id D1F30A000A for ; Tue, 23 May 2023 01:51:48 +0000 (UTC) Authentication-Results: imf15.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=XQXFPk9o; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf15.hostedemail.com: domain of yosryahmed@google.com designates 209.85.208.42 as permitted sender) smtp.mailfrom=yosryahmed@google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1684806708; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=Hs7tg2jdqzr5NGkltllPirVALS3mHNLc1Hpq69tUjGE=; b=kM+HWOl2xonOGp9ddsiAFRbk/5ULir0OrBGrcqReDlnEIUwLhJKiEfzW3lKaAjK25DIMGy xfh6cOd+TMc3dLgHAqVSW7MZCqNDBTQ3fsrs/QKKhKCnPyKWbmb5n5Lqs1qXCZJkhZU2Ik 2for+GMPtqjog6v2yd/Y8Z0g8ByfhoM= ARC-Authentication-Results: i=1; imf15.hostedemail.com; dkim=pass header.d=google.com header.s=20221208 header.b=XQXFPk9o; dmarc=pass (policy=reject) header.from=google.com; spf=pass (imf15.hostedemail.com: domain of yosryahmed@google.com designates 209.85.208.42 as permitted sender) smtp.mailfrom=yosryahmed@google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1684806708; a=rsa-sha256; cv=none; b=h6VqAY9kRNn5185aDNv0jkv71Ihh6Nv/LG3x61LwudMgUYcbnlp2WQmafBoyGvtl4TuO5h AZL1OKTDsvsyM5ro5R4gpgPOn+Yu0ZOBtCuHzxyLLZyzewToW+bhiRkd3JlU3kpj5g9Gof gVRRJ94/ELjHGoZjRo8kwkGqZoOr5YU= Received: by mail-ed1-f42.google.com with SMTP id 4fb4d7f45d1cf-510eb980ce2so454930a12.2 for ; Mon, 22 May 2023 18:51:48 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20221208; t=1684806707; x=1687398707; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=Hs7tg2jdqzr5NGkltllPirVALS3mHNLc1Hpq69tUjGE=; b=XQXFPk9o6s/r0/yeMiG5RLms940VlSGR/JhHVMgkf2YWwh/laKdVFHaKXQqpawiQIL rBZxwNInosp3sp2dH+etUhALzyiksgBpjUAx54d6xJ1gaq1QZaEZZBiI0VqHQT2t2b/O 0hsjpNZOyZWsubXNUo6YRsJ50/VRdIDLPKUh7rv7CioKwp29k2bgP3IaudWxDeej7orx 2SGs2SrOfHVsmFbs2HwMu/9ATEJy0Oq7lrewqwUrjR6fZOUNVdsmF7FLA9CkqU/sYIL0 wJ1F0nBvZpwAcoGqlW3Z7hdqj7zKPXC+o/VGf7Zz4cGnbPEXzyM4zQk5iaBK4Y5FO29/ Z2pA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1684806707; x=1687398707; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=Hs7tg2jdqzr5NGkltllPirVALS3mHNLc1Hpq69tUjGE=; b=WOEb85noISrT0rStpyt5OhEqyWblqGmVKKTZLUORMcisoqU3CsD1r2J7X12tLJVMvl d0RIvJKt2anOwayz9nTV31YtKUvFCxTvxB3RE7H8k0TVavCYX1igvQXjykVDRxHxhkZA c9YV1gkIS7bYg9/2phBR7x/NjUv66OWXoaaLEFM/nZKaJWk1NoC94/Mp7lW8ch2cuOQN lBMdJjwncTVx34EffhqxIiuIhW/UBSPQMrbjLUW1zf0UQxy6cmoXHbqJ3WWTuzxtLYgI NMyc8KttVHLiKzF43SBjh5hhggvN5Ok4EnXwxLrE91u1cgYjQP6ck2O5fmEjSGbwx90P T4dg== X-Gm-Message-State: AC+VfDwiXDd0LA0eYtd6eiwJhEPQPG/Z/HEkHsmR6eWbL7l6EpV48c4c NuX8UiOS/wr6QTHg2iHOFwEFDHKCuAn4u9qMwTA0EQ== X-Google-Smtp-Source: ACHHUZ77abnn8KR+G76CdbPatTKmqLAf2PTmyQGrpcgTzQoltjr8/iNKku8pzldM5XoRWUFur/0WFDzfjxBAZOllaRE= X-Received: by 2002:a17:907:709:b0:965:6075:d0e1 with SMTP id xb9-20020a170907070900b009656075d0e1mr11522851ejb.72.1684806707390; Mon, 22 May 2023 18:51:47 -0700 (PDT) MIME-Version: 1.0 References: <20230522070905.16773-1-ying.huang@intel.com> <20230522070905.16773-2-ying.huang@intel.com> <877cszyg2m.fsf@yhuang6-desk2.ccr.corp.intel.com> In-Reply-To: <877cszyg2m.fsf@yhuang6-desk2.ccr.corp.intel.com> From: Yosry Ahmed Date: Mon, 22 May 2023 18:51:10 -0700 Message-ID: Subject: Re: [PATCH -V2 1/5] swap: Remove get/put_swap_device() in __swap_count() To: "Huang, Ying" Cc: Andrew Morton , linux-mm@kvack.org, linux-kernel@vger.kernel.org, David Hildenbrand , Hugh Dickins , Johannes Weiner , Matthew Wilcox , Michal Hocko , Minchan Kim , Tim Chen , Yang Shi , Yu Zhao Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Server: rspam12 X-Rspamd-Queue-Id: D1F30A000A X-Stat-Signature: c9dnrfsnyq6q1fker1q5oxt4cx1ierhf X-HE-Tag: 1684806708-183513 X-HE-Meta: U2FsdGVkX1/YyX5NNmJ40W7b+vIawpqq8WPREK6Edc10W9tyOn79xEeNWP/d9XFs1NoH/XZ0Ep4/01jCTGq2maZkUhRD6UMJU8RQ4gmKDwtQVOsRF5ZasMdsepFn/+P93N4kwh6csBjY5fJyMI5HC9+YR0XUnO3iBVb/wsK42hy025qnRfMqNYmAQtkISvf0FIzRC4m3Zn0n/6ijNAj/Kpo0U9Rx5zMnM24m1kinxpNjaU6+I3s0i4lqNFzCKm9ODVqoe4Ag2KRB5lQhPj7IlBc58jtXsJFXutTAVVNKPAILTeTqeSI1J1YVOP2XKxJ5xJ8kTi3M4iujFylUg/gtUgo8/+kxiBeIt7pm+DLDFyeQJx7BQBXwv9XLbBjtI5PreHsg90CtXZ/I8Ld9xvFQp+xgUDXRPwmz0TqYNK61OHdu+Y/+5qlfYiOkdNAsQcCI+AGq+WyD7f94M7roC4zHqxfFr/FqaXxAEwOS0MwEBMMW7aLShDc6qN+AlwcUfy+SMkB/EzvhbCwLqp0mujBH1jdTjkjj+CVlwzot3NIf/uOE23kYXcxFPhXpaMT3aIM5MCsJcbGGNLjJishMwr7k+r/3kqLy9CL11COAVzFx4VVUFHjYxkUPhI4AWOx98yIqL63YIjnPSSUlWM+G3mCvLROa6azDlnXZTkb+hhHeKdbVDxEKGk/yOXck/kLXiHNvVZ4wYXNqQBHQSAD1hRpY6jg6/tjTfCWhKKSltic2eH2sF1fqbwNGqmshYq+cPIqlCWo7wOZiH26P7PxRqc1BONlbPOdY/Wh2wFTWX+1BQcWUPhklANvHz6WcOaVyGEhc4v1wht68ft1d/XccK9Xg2O1hTAJPLdXgMXgC33cOdm/I1svR4n+fy9lhJZyTzvu5iJ/xARDbUXPuu3vayMFw+vGk6MNHTOCw9hh9lsnPDq2sriIySJ1pA6zqRlJwEHfJc8J/IdX9V9s32iJHjGV nv+Is5f9 F9nyjNW5jo5vbVvNs+ev0Z8ImwjQE/B+OgULpdGm2S7a46FUz66/k3vlfokaRsRwMoYuOXA6ZdVOqABVw8X2RNtaCGyQIoY1ppcv797KQuhJdYcT3s0gaJ5NUs3v+FPZLOSfq8hRSeMIIovPuC/Vp4WjzWXyMKOX5Vw7z1eDsLJxCSrLWJN6j0zTIT3IAu/3nKWrM8rFWjkdU7x1Vx1rvnDOTTGoEt7i7tS786F0uzpuXaFcvWgY5EE01z12LADc5FDg6ZspX+ULeMKiLkJZO8sxMEam4DVgJnxcAnzHoh/vzAHg5TFVvX2uFnW3PB3ngzg2xINiw3t+Rg8AHB8l2pyfy/1wr2bmYS+tpQs2u6QaGReH1/n1KIrdscqSZEEe/aQjzzMwYLpHnU21ba0PPTktwBSA4zEzFmDM9Nw8CeiTNeNdQHbdkbTOwqyApzn9R5DimtcImSNheojyUJ0JkN01snIzBr6RnixuKqPLZgIsF9ZRpsjoIGuSXfFtxRcAVVWMzckQv7xVTJVsjeZwLaZEi6leVIQKgyQiuRAHEFYmT88DbsYbDpwZLBDS92YzSjjeS7EXrWU8RQh9mP3ER3Vx1i9JOMNnmGlv8 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Mon, May 22, 2023 at 6:48=E2=80=AFPM Huang, Ying = wrote: > > Yosry Ahmed writes: > > > On Mon, May 22, 2023 at 12:09=E2=80=AFAM Huang Ying wrote: > >> > >> __swap_count() is called in do_swap_page() only, which encloses the > >> call site with get/put_swap_device() already. > >> > >> Signed-off-by: "Huang, Ying" > >> Cc: David Hildenbrand > >> Cc: Hugh Dickins > >> Cc: Johannes Weiner > >> Cc: Matthew Wilcox > >> Cc: Michal Hocko > >> Cc: Minchan Kim > >> Cc: Tim Chen > >> Cc: Yang Shi > >> Cc: Yu Zhao > >> --- > >> mm/swapfile.c | 10 ++-------- > >> 1 file changed, 2 insertions(+), 8 deletions(-) > >> > >> diff --git a/mm/swapfile.c b/mm/swapfile.c > >> index 274bbf797480..8419cba9c192 100644 > >> --- a/mm/swapfile.c > >> +++ b/mm/swapfile.c > >> @@ -1432,16 +1432,10 @@ void swapcache_free_entries(swp_entry_t *entri= es, int n) > >> > > > > nit: I would add a comment here that the caller needs get/put_swap_devi= ce(). > > It's default behavior to call get/put_swap_device() in the caller for > all almost all swap functions. I would rather comment the swap > functions needn't to do that, as the comments for > read_swap_cache_async() in [2/5]. Fair enough. The comment that you added above get_swap_device() states that all swap-related functions should have some sort of protection against swapoff, so I guess that's sufficient. My concern is that sometimes people don't know where to look, and having a comment above the function might be helpful. I do agree though that having a comment above ~all swap-related functions pointing to the comment above get_swap_device() is too much. > > > Reviewed-by: Yosry Ahmed > > Thanks! > > >> int __swap_count(swp_entry_t entry) > >> { > >> - struct swap_info_struct *si; > >> + struct swap_info_struct *si =3D swp_swap_info(entry); > >> pgoff_t offset =3D swp_offset(entry); > >> - int count =3D 0; > >> > >> - si =3D get_swap_device(entry); > >> - if (si) { > >> - count =3D swap_count(si->swap_map[offset]); > >> - put_swap_device(si); > >> - } > >> - return count; > >> + return swap_count(si->swap_map[offset]); > >> } > >> > >> /* > > Best Regards, > Huang, Ying