From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) (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 28CCC3DC87A for ; Mon, 20 Jul 2026 15:54:15 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=170.10.133.124 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784562857; cv=none; b=GgMkNhNo5yhJ7TwmZGZcJjac9xiVdPH92mqLvSUQxfmMVT5c+1I6FaSf1RHd4LlwdYHCllcTmUEKCqGV271DelDQbAjpsd0x8qu8fKzxIgC9hQCUTnIdCumMU2ctQhpEA1EW9X8G9CvKdVAutPSjeSbrsRapYGgOwO4KhXqxtSw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784562857; c=relaxed/simple; bh=E0TIIn3A5LRpTltsVzdQTDjKV9Cuxph/zXvI7Si6cC4=; h=Message-ID:Date:MIME-Version:Subject:To:Cc:References:From: In-Reply-To:Content-Type; b=nTelfrUv3YvDmQhesnvGweLw1mSay5nueeLEpheH5cfjcqn3K83CcfkQPGn/voqUxWXJ9ms0Pxo2wrSzr70WpG1GuVfIiz7pcIruibgyxInWbRybTzM4dFOcwVJB2miUTZ2H2OsGbPmmnjt/gABSWKbak+aTvMXQgpxlMGDMkYg= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com; spf=pass smtp.mailfrom=redhat.com; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b=D5iGmyHM; arc=none smtp.client-ip=170.10.133.124 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=redhat.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=redhat.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="D5iGmyHM" DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1784562855; h=from:from: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; bh=8dKvZsK9bN0vSKT1EWr07IiR1IRjCYgsoqnq/4PrwdE=; b=D5iGmyHMBoovZOVDwFzRYEldoLpkiX7lJWt2BFtS/ha4q3sGjNmsZNHzO7KcYm4IBwLfom fCK2heUq7IBzBGutF0awA4pZga9/Z/PBwpKYg7fMf0WYwKYFNdsZrKytJEVpbqwh2YImnV Pv2+cfUziDHmJI7qB9vqKX5Y2Q2aKhU= Received: from mail-qt1-f200.google.com (mail-qt1-f200.google.com [209.85.160.200]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-634-_s6OF9YDNKeoRSJ5STStjA-1; Mon, 20 Jul 2026 11:54:13 -0400 X-MC-Unique: _s6OF9YDNKeoRSJ5STStjA-1 X-Mimecast-MFC-AGG-ID: _s6OF9YDNKeoRSJ5STStjA_1784562853 Received: by mail-qt1-f200.google.com with SMTP id d75a77b69052e-51c21c01cf3so152557781cf.2 for ; Mon, 20 Jul 2026 08:54:13 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1784562853; x=1785167653; h=content-transfer-encoding:content-type:in-reply-to:from :content-language:references:cc:to:subject:user-agent:mime-version :date:message-id:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to:content-type; bh=8dKvZsK9bN0vSKT1EWr07IiR1IRjCYgsoqnq/4PrwdE=; b=nhPRJHw96j+Ita75RjNjZO4G0/6y304r+IlliviMY6pWRNN1HH2OxijM5qm65bLzhb ZwLyKC3QBBgPdSfjNBTlIeMUcbyptu/pI31aVL2TniPNmGVH3uyAsDRBG35cIQDrIRKt kvvaz5BCIfvEEkZ4iKtUzI8KFIrg9If17yQPaXtdquSyULZg6KCjMr4C193tTy6COvN2 SKPqSh1BbfzUi6fp5UgG7rgsfOWU+yywiDGKEwgZLvzXkFw8gNeo6/Lv7VnBrh6mxUQS JiJnuchwWwEHlMtXxf+7TcE0vMT53yYt4HxaNS2ILjPj/dFpZr8rtS4xO1um4M0lNGsA xiNA== X-Forwarded-Encrypted: i=1; AHgh+RocOYY21I2RXbmsi/RkMS11AAbwlLKdHd7jDj2XFD6iPlXwgaM5Z382TNl1wRenk3v9hS7iuvXRfld7Z3M=@vger.kernel.org X-Gm-Message-State: AOJu0Yz4gsCTWLUMQRfYZD16bNrnS7EY+8SPOKmseZcPNGjIzQVn/wtK MLDmGtbaKy3gjt3gjP5sVRY0kHUnLZgk7JzPNLTuvKyWf9onPsiDf+1yzG+2GXSW8Ws00Hx7ClB gSv+b3YfVavNe2nKNViPz3JtWJwZ2E8jHlCLOtPR3SMykibtxIluZ3Fa6LN81vBRoYA== X-Gm-Gg: AfdE7cmHp0EuaN24Pu9RVkmydwwW5h5Ch7oQT11MO31yamnmWUMUD429U3vmIXxJ185 WYJHqhbAy8Km983MZL252jSGdBBzxeTzdhscvynOGWfzYvo4Tw7rbjpmrgIIZui++7xz/omKtIb pjP2FqhlazEV5sCXwxzHNGyJ0ts/2inaRXqZiFsqoHxpjt/UXt+akdDoNfCShfOCVjST+i/lps7 1PalVBaJv19WPXcBvbSOaMAiTLuwwyAMawYHtOqEl+YaeK7jcrxypDAmrlncLQNANSUHcYqqfzs CE8SEXjDAYb+ybNOtlcZXadU+c6tEmeZkvxzS5bu+Zx682PQNthBoVr0L5zPvCnm13EJh/GdhW6 R X-Received: by 2002:ac8:7d07:0:b0:51a:6feb:dc8f with SMTP id d75a77b69052e-5213d2b65a7mr137422941cf.9.1784562851608; Mon, 20 Jul 2026 08:54:11 -0700 (PDT) X-Received: by 2002:ac8:7d07:0:b0:51a:6feb:dc8f with SMTP id d75a77b69052e-5213d2b65a7mr137422281cf.9.1784562850813; Mon, 20 Jul 2026 08:54:10 -0700 (PDT) Received: from [192.168.2.110] ([70.49.81.60]) by smtp.gmail.com with ESMTPSA id d75a77b69052e-5214cda7dbfsm75357561cf.9.2026.07.20.08.54.10 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 20 Jul 2026 08:54:10 -0700 (PDT) Message-ID: Date: Mon, 20 Jul 2026 11:54:07 -0400 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH 2/4] mm, swap: Move setup_swap_clusters_info() after SWP_SOLIDSTATE initialization To: Kemeng Shi , chrisl@kernel.org, kasong@tencent.com, nphamcs@gmail.com, baoquan.he@linux.dev, baohua@kernel.org, youngjun.park@lge.com Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org References: <20260720071342.50742-1-shikemeng@huaweicloud.com> <20260720071342.50742-3-shikemeng@huaweicloud.com> Content-Language: en-US, en-CA From: Luiz Capitulino In-Reply-To: <20260720071342.50742-3-shikemeng@huaweicloud.com> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit On 2026-07-20 03:13, Kemeng Shi wrote: > In setup_swap_clusters_info(), SWP_SOLIDSTATE is used to decide > global_cluster allocation. Move setup_swap_clusters_info() after > SWP_SOLIDSTATE initialization to avoid unneeded global_cluster > allocation. > > Fixes: 451c6326105b2 ("mm, swap: clean up swapon process and locking") > Signed-off-by: Kemeng Shi I was about to send the same fix :) (one nit below) > --- > mm/swapfile.c | 13 ++++++++----- > 1 file changed, 8 insertions(+), 5 deletions(-) > > diff --git a/mm/swapfile.c b/mm/swapfile.c > index d29062d9c3cd..81c4040912be 100644 > --- a/mm/swapfile.c > +++ b/mm/swapfile.c > @@ -3607,11 +3607,6 @@ SYSCALL_DEFINE2(swapon, const char __user *, specialfile, int, swap_flags) > > maxpages = si->max; > > - /* Set up the swap cluster info */ > - error = setup_swap_clusters_info(si, swap_header, maxpages); > - if (error) > - goto bad_swap_unlock_inode; > - > if (si->bdev && bdev_stable_writes(si->bdev)) > si->flags |= SWP_STABLE_WRITES; > > @@ -3625,6 +3620,14 @@ SYSCALL_DEFINE2(swapon, const char __user *, specialfile, int, swap_flags) > inced_nr_rotate_swap = true; > } > > + /* > + * Set up the swap cluster info. SWP_SOLIDSTATE is used for > + * global_cluster allocation > + */ Maybe something like: /* * Set up the swap cluster info after SWP_ flags handling as * setup_swap_clusters_info() checks SWP_SOLIDSTATE. */ As it's minor: Reviewed-by: Luiz Capitulino > + error = setup_swap_clusters_info(si, swap_header, maxpages); > + if (error) > + goto bad_swap_unlock_inode; > + > if ((swap_flags & SWAP_FLAG_DISCARD) && > si->bdev && bdev_max_discard_sectors(si->bdev)) { > /*