Received: by 2002:ab2:3141:0:b0:1ed:23cc:44d1 with SMTP id i1csp698794lqg; Fri, 1 Mar 2024 20:32:38 -0800 (PST) X-Forwarded-Encrypted: i=3; AJvYcCWBxD5QpZloVUw8fnAUn0U48JQaLENfA78a8KHGBxs9BXDfxd8MzjdcMvZ1yHNjWC7y3ZOShKKyxAJYvaT7kY6rn5reAD86z+2kEwM6/w== X-Google-Smtp-Source: AGHT+IGVN9jatpAtOUymXamgf3Q5xUVvTdVQ4ytJgLCmAgz5V9VfsHtC8uvcYoEHJ9dcHd2UvWOY X-Received: by 2002:a05:6358:94a9:b0:17b:f4e9:e31d with SMTP id i41-20020a05635894a900b0017bf4e9e31dmr4517013rwb.26.1709353958724; Fri, 01 Mar 2024 20:32:38 -0800 (PST) ARC-Seal: i=2; a=rsa-sha256; t=1709353958; cv=pass; d=google.com; s=arc-20160816; b=t9dlmqsXl3XQAexap5260NIsiCqC7zfnUxzk/TS8qsub/0ZVRJbdCuq+0owDARMnii KGkc6F/D27Y7/tyW/UsT/RJeiCWXDJv3xgNSLyVCaMk42jtr34fVGOspSVjLNADVATIX 0FONJZ+wHdZQ1ROr5yo/LOBanm97+e3H/Pqz6WNqkSb+3EJvyNu5+Nr9az5GGHJZYlnQ mVYSl3KPaGLn/WpHg9DdclLI5ySaEgY9XdzHyGSZnEja70dgcGSA1Iw+1wQKvfUPE7nI iHcwymTF6Z/GIWMQvNbFAll9VC1MfmvYJdIE+klRsB/caSL8NcJWYL7Glbpao39JU8gq JpPQ== ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=in-reply-to:content-disposition:mime-version:list-unsubscribe :list-subscribe:list-id:precedence:references:message-id:subject:cc :to:from:date; bh=JLuGDC/KwqdIBkEhWb9VVx6/Agk4kkpKG9tQQIX3p84=; fh=+TEyrd+nFgaNkpmm3HcBvNUajV3eq70IJ1j60JnMa7A=; b=SOQom9GLLagFZH9Xj6ax/eMyQFs8OSFvBvnsfr6pjlg5xc5aM4C2pnpIqfuWvkw412 xYzVmT0LU0DURfv8SZ02JJhn9WYZ7R0e5FlBgqJqHfXWCDcUEpSELQliQeSpSt/5/eGt HZ69ry7900p0yDEtBjq53ht2GKc/RiEX7Ed2RFzHpF3izzjlXH+IIf91Htl/zyetZwTT DvJMF4WHolPa2RpzrMjFa473S2kUQNCI7xuy/UZxe9yaKCZvHY+sS4JiXT644TD3NVb6 oi6TiK2wIfZdaiSwycwRq5eEAJ4F/Ya42HEJchYvw5rjnP/nXNWvUOPD5h+WNKxcaskG 4DGA==; dara=google.com ARC-Authentication-Results: i=2; mx.google.com; arc=pass (i=1 spf=pass spfdomain=gondor.apana.org.au dmarc=pass fromdomain=gondor.apana.org.au); spf=pass (google.com: domain of linux-kernel+bounces-89333-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) smtp.mailfrom="linux-kernel+bounces-89333-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=fail (p=REJECT sp=QUARANTINE dis=QUARANTINE) header.from=apana.org.au Return-Path: Received: from sy.mirrors.kernel.org (sy.mirrors.kernel.org. [147.75.48.161]) by mx.google.com with ESMTPS id n6-20020a634006000000b005dbd0ff2e5dsi4794851pga.811.2024.03.01.20.32.38 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 01 Mar 2024 20:32:38 -0800 (PST) Received-SPF: pass (google.com: domain of linux-kernel+bounces-89333-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) client-ip=147.75.48.161; Authentication-Results: mx.google.com; arc=pass (i=1 spf=pass spfdomain=gondor.apana.org.au dmarc=pass fromdomain=gondor.apana.org.au); spf=pass (google.com: domain of linux-kernel+bounces-89333-linux.lists.archive=gmail.com@vger.kernel.org designates 147.75.48.161 as permitted sender) smtp.mailfrom="linux-kernel+bounces-89333-linux.lists.archive=gmail.com@vger.kernel.org"; dmarc=fail (p=REJECT sp=QUARANTINE dis=QUARANTINE) header.from=apana.org.au 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 sy.mirrors.kernel.org (Postfix) with ESMTPS id 058C7B24636 for ; Sat, 2 Mar 2024 04:32:14 +0000 (UTC) Received: from localhost.localdomain (localhost.localdomain [127.0.0.1]) by smtp.subspace.kernel.org (Postfix) with ESMTP id 3C99E64F; Sat, 2 Mar 2024 04:32:06 +0000 (UTC) Received: from abb.hmeau.com (abb.hmeau.com [144.6.53.87]) (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 D25AA138C for ; Sat, 2 Mar 2024 04:32:01 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=144.6.53.87 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1709353925; cv=none; b=l0fI1MIQe5ZVDMwzhqu7jmU4STn8OZlVZjLoXwrovuEmlagsLP0dWLKr88QW7CcepFiZvYoqQD6WcgQcvznE0ACJ43Q9x+pZkV1sHPPus9uRKvr7BcRTxzyJ2lP9c7sP7wBgzO2O+TBpw7sdYNou5sOFKrVEiOz58d5xVlsWFrI= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1709353925; c=relaxed/simple; bh=vQchi1TTL15oq4jYxRN5apV/fAD7MwpF4crsKotq5Eo=; h=Date:From:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=etEQT/jpvjNGV+haNnIpdMRdTtUnipK2Zl66yG247HHDQ2PB6ZwRcZyhsWH34Na2TUmT7EEeeWlzOsCO9DRIGet269+1aXFyGHC+wmUVKIhemacfsLfmR3x9tmwVWvcIsOCvNU3QmCe0hRaPpnGpTIwYorKZbjTenCW7vpuQU0Q= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gondor.apana.org.au; spf=pass smtp.mailfrom=gondor.apana.org.au; arc=none smtp.client-ip=144.6.53.87 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=gondor.apana.org.au Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gondor.apana.org.au Received: from loth.rohan.me.apana.org.au ([192.168.167.2]) by formenos.hmeau.com with smtp (Exim 4.94.2 #2 (Debian)) id 1rgH2N-002ZLV-N3; Sat, 02 Mar 2024 12:31:52 +0800 Received: by loth.rohan.me.apana.org.au (sSMTP sendmail emulation); Sat, 02 Mar 2024 12:32:07 +0800 Date: Sat, 2 Mar 2024 12:32:07 +0800 From: Herbert Xu To: Barry Song <21cnbao@gmail.com> Cc: viro@zeniv.linux.org.uk, akpm@linux-foundation.org, linux-kernel@vger.kernel.org, Barry Song Subject: Re: [PATCH] iov_iter: call kmap on each page even for lowmem if CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP is enabled Message-ID: References: <20240301230908.7507-1-21cnbao@gmail.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20240301230908.7507-1-21cnbao@gmail.com> On Sat, Mar 02, 2024 at 12:09:08PM +1300, Barry Song wrote: > From: Barry Song > > copy_page_from_iter_atomic() has the assumption lowmem will only > need one kmap to get start page_address() for all pages. This is > wrong if the debug option CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP is > enabled. This patch fixes it in the same way with skbuff.h by > always applying kmap one by one even for lowmem, > > static inline bool skb_frag_must_loop(struct page *p) > { > #if defined(CONFIG_HIGHMEM) > if (IS_ENABLED(CONFIG_DEBUG_KMAP_LOCAL_FORCE_MAP) || PageHighMem(p)) > return true; > #endif > return false; > } Thanks for the patch. Perhaps this could be moved into highmem.h as a helper (kmap_is_highmem)? -- Email: Herbert Xu Home Page: http://gondor.apana.org.au/~herbert/ PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt