From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from out-180.mta1.migadu.com (out-180.mta1.migadu.com [95.215.58.180]) (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 826773F4DDB for ; Fri, 17 Jul 2026 11:33:27 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=95.215.58.180 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784288010; cv=none; b=d3Ytyd7Rfol9eu/b6YE3P8tJnTKZfuSEDuafbT163LA2ADr0av3tTY+lS8IscYWRuLkalxCJEhHgvhUjgUX5xhEU9XoSkY+j6KId+gVFJvut3Q/69kb4M4V/86WyBIRxJcX9ci7j5zThoz6XBiihHE0cQEc6DL8P8+O7PWItQdw= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1784288010; c=relaxed/simple; bh=nLuqUK0sbTvfL8OGOFdaCzqhhGQQT//F1DJd/PaLzv8=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=T3vk5fq5nUcFSMrFOkD6KRHA0GnKdOsRp4fVMhRxdTi4JmnHGauFNhzNFwdl3Y+bMjqNbzbFjWRA+flcOx5EYJppm8dzimrZs3eFELq/GY650IAIgKubc5pqIbJD/r6zXxHIxGQq9FCia0A/D7ZVunzcwuGw2ETnoC2JGsoJtaY= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev; spf=pass smtp.mailfrom=linux.dev; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b=CsnofhRS; arc=none smtp.client-ip=95.215.58.180 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=linux.dev Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=linux.dev Authentication-Results: smtp.subspace.kernel.org; dkim=pass (1024-bit key) header.d=linux.dev header.i=@linux.dev header.b="CsnofhRS" X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1784288005; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc:mime-version:mime-version: content-transfer-encoding:content-transfer-encoding; bh=PBL58QZGJ3P6JkW4MwCZe+tFhVByrQY+kTt7AXRjL18=; b=CsnofhRSB/Wlebf7+k3pTR3BB5Vv+ImRNGIdnH136aysKH1IESOJnP02wKROkaZI/W26kd HBA0iiL6CI8DwmV90onT2hhPjy6bvipqFJui1JUsr/tZSlwRWB3+O5iNwX1IFLUkgx9Gqb VdTEBCSI0N87HIQHbRG7mszvD07BY6Y= From: Ridong To: Andrew Morton , Johannes Weiner Cc: Kairui Song , Qi Zheng , Shakeel Butt , Barry Song , Axel Rasmussen , Yuanchu Xie , Wei Xu , David Hildenbrand , Michal Hocko , Lorenzo Stoakes , Zhongkun He , Muchun Song , Davidlohr Bueso , Roman Gushchin , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Ridong Chen , Ridong Chen Subject: [PATCH 0/3] mm/vmscan: fix swappiness=max and clean up per-node proactive reclaim Date: Fri, 17 Jul 2026 19:32:57 +0800 Message-Id: <20260717113300.214717-1-ridong.chen@linux.dev> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT From: Ridong Chen Two fixes and one cleanup. Patch 1 fixes "swappiness=max": the anon-only test in get_scan_count() sat after the "cannot reclaim anon" check, so when no anon was reclaimable the request fell back to SCAN_FILE and evicted page cache instead. Patch 2 fixes reclaim_store() collapsing every error into -EAGAIN, so callers can no longer tell an invalid argument from a busy interface; propagate the real error code, matching the memcg path. Patch 3 drops the now-unused gfp_mask parameter from __node_reclaim(). Ridong Chen (3): mm/vmscan: fix anon-only reclaim evicting file pages when swappiness=max mm: vmscan: propagate real error code from per-node proactive reclaim mm: vmscan: drop unused gfp_mask parameter from __node_reclaim() mm/vmscan.c | 29 ++++++++++++++++------------- 1 file changed, 16 insertions(+), 13 deletions(-) -- 2.34.1