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 ECBD4EE4993 for ; Tue, 22 Aug 2023 07:54:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 6C20F940029; Tue, 22 Aug 2023 03:54:31 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 6738B94000D; Tue, 22 Aug 2023 03:54:31 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 56131940029; Tue, 22 Aug 2023 03:54:31 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id 43F8194000D for ; Tue, 22 Aug 2023 03:54:31 -0400 (EDT) Received: from smtpin24.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 0B18EA0170 for ; Tue, 22 Aug 2023 07:54:31 +0000 (UTC) X-FDA: 81150978342.24.D071F37 Received: from out-54.mta0.migadu.com (out-54.mta0.migadu.com [91.218.175.54]) by imf09.hostedemail.com (Postfix) with ESMTP id 110A814002A for ; Tue, 22 Aug 2023 07:54:28 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=XYndpGqF; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf09.hostedemail.com: domain of yanjun.zhu@linux.dev designates 91.218.175.54 as permitted sender) smtp.mailfrom=yanjun.zhu@linux.dev ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1692690869; 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=+O4si5w/E2/akKLW5SoU9zs6iDaWmx/D6iWPQnxzVds=; b=YpZUkEaWpzoWEN8mIw+1Sj+J6goUtydO7yfOUbf7KgUA32fnbgPosfTbobHqdW7ma5CjFL vzYXVHIhqbyWZw4iXDBwe51QkCUisESLiDRw3CXKKWTfyMpqsqsaAJ7Ff1y8ADKl4OdRfY SFBttBL1IVe4VurHRcUEAc6oCHqbpZ8= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=linux.dev header.s=key1 header.b=XYndpGqF; dmarc=pass (policy=none) header.from=linux.dev; spf=pass (imf09.hostedemail.com: domain of yanjun.zhu@linux.dev designates 91.218.175.54 as permitted sender) smtp.mailfrom=yanjun.zhu@linux.dev ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1692690869; a=rsa-sha256; cv=none; b=Z2bhLwTjbNQ47jdaq1ubK3wz2Mo+vWZvYhX5IY6aAiI/8dX5isTaUjt+8JyS1TkD+/6v25 rjlbeWYwU17Z2JMptTEuCDaCy7KMj/bDiGwotnnxzUW0NXbucw8JOlK0/35Dh4WxP2pgNe HzYIpkpjTHCXvIfjtyp9qbL4fdA0lYQ= Message-ID: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linux.dev; s=key1; t=1692690866; 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=+O4si5w/E2/akKLW5SoU9zs6iDaWmx/D6iWPQnxzVds=; b=XYndpGqF8frJwSvaa1p+E3hZ19j/ot0to+7OlDpYIDalXVRVklTSvRGk/FDPExA/vSHkQF +Uxye/vKrWGQ6NidKsTTtkOS/V2lUeesjtJkfRBw5jIj2cihm5w8tYQUFzOlBGJ+2xy5RI /sSeWLcAiX08EMJH0pR1O7tOsxlZ7Rw= Date: Tue, 22 Aug 2023 15:54:17 +0800 MIME-Version: 1.0 Subject: Re: [RFC PATCH 3/4] perf: Use vmalloc_to_folio() To: "Matthew Wilcox (Oracle)" , linux-mm@kvack.org Cc: linux-perf-users@vger.kernel.org, peterz@infradead.org, mingo@redhat.com, acme@kernel.org, urezki@gmail.com, hch@infradead.org, lstoakes@gmail.com References: <20230821202016.2910321-1-willy@infradead.org> <20230821202016.2910321-4-willy@infradead.org> X-Report-Abuse: Please report any abuse attempt to abuse@migadu.com and include these headers. From: Zhu Yanjun In-Reply-To: <20230821202016.2910321-4-willy@infradead.org> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 8bit X-Migadu-Flow: FLOW_OUT X-Rspamd-Queue-Id: 110A814002A X-Rspam-User: X-Rspamd-Server: rspam02 X-Stat-Signature: hf4xnjjisb5e4gfq1ex46y6jbg6quhcp X-HE-Tag: 1692690868-513963 X-HE-Meta: U2FsdGVkX1+Azui4Vb0tAt9gpbMQ0R2nIwhx2ed/u6pdbKvjLhihOJti2xuJBqijRalplsfuaTyZx2XUVyIlVZO1i08DY+k14QOAwbXM5HIOeRLmcZKGDdI1A7PPYEyH2WgvtEBqWjpVBE9z+idb0SpdhBi+wH0M3pRzsyYgp/p0j95cguQY/e6p6V00vXN7kkeLeUelF5OKHtugLyPO61DDBG5r9nEOJSS9aoQb6yj1CCZb0JBESCczfO5c50j4Dl8KaA+YJtqADUUP+ngAGqqQiMm1QZcTih+ipjrkCrPmIs6dxClOP+473uXfgEVCsNLw6QPXghGky2VPOFjyJVnfPpGKWFmlaffqlV9zNkOt+gPRIN74TvtG/WMNrs2SdHvuHruGIu8Cplx/cpJupxcmUlKNqcvE/RjArhTQ2kw0brjffDXDj9vOnMONw6zhw4yvbGGiNGBDNacEQxLB+XzPx7kyLhWbLsOoP1+4nyFpEIFMnKeEmONaEjBkqo4EbZUJFTUUl0SFjW4aUgrFAarEPDSwv2rn1Q7PbEkMFQHYlGVEZbYcig+x3n6LwT4+7vD6lTA3zfHIcKNFslfn64CRtptk+8uRiIuw7sl/aGmPzDbCL1jCgB9E5KsfMXPPDC3n/yRrIwqCxOtO2Y0BGPvWXX05Ah93E36PFzVOOei7kOJGsMMMottJCjzk4sWtRkb/7jvt4NE87Voum99eMbajoIFk3MmEV1JqceUo9MR8Td4EUuLcnAE6gbfgzeM6y5+zNOxkNLeXm7QaXVj+dcZ13oQc+9zOvO0G3KgDSQScek8PhiVffyeomqIFP0YyMegLejOY9byG0wlhQg5ef3JpwqQJeLmEzIGujJyT3BcCqYQwaxwbgh5zqSp6vnpLvKmp66gE/Hh5rgnRs57EiXloi3mm0au68+9ZX4tMt2OT1jkaddFJBYVRU4X9AUOUi9RYx5Pv4kwP6ycnlKk zZ6MlHvI BPyneLyqo6G5IMnThvKBfSriPGRIucBr5Ml3AQJI3C3Wwj3dmpNTlkWsDITDaWruW/x7SBOIjUHWZLmMQzDSzARBA/ZnnBmrxTjdXtzLQo4WdrquH1m22MfzVYgA/2AaFYCi5xA9l8FZIl/zX0IBGyIPAQzctpbZ0iDlOACq/tObHjVs147HrVJwMGs+O+J4+f5h5 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: 在 2023/8/22 4:20, Matthew Wilcox (Oracle) 写道: > Eliminate a use of page->mapping by using vmalloc_to_folio() instead. > > Signed-off-by: Matthew Wilcox (Oracle) > --- > include/linux/mm.h | 5 +++++ > kernel/events/ring_buffer.c | 4 ++-- > 2 files changed, 7 insertions(+), 2 deletions(-) > > diff --git a/include/linux/mm.h b/include/linux/mm.h > index 840bae5f23b6..7d84a2843193 100644 > --- a/include/linux/mm.h > +++ b/include/linux/mm.h > @@ -1134,6 +1134,11 @@ int region_intersects(resource_size_t offset, size_t size, unsigned long flags, > struct page *vmalloc_to_page(const void *addr); > unsigned long vmalloc_to_pfn(const void *addr); > > +static inline struct folio *vmalloc_to_folio(const void *addr) > +{ > + return page_folio(vmalloc_to_page(addr)); > +} Thanks a lot. This function is very wonderful. It is also what I need. Zhu Yanjun > + > /* > * Determine if an address is within the vmalloc range > * > diff --git a/kernel/events/ring_buffer.c b/kernel/events/ring_buffer.c > index c73add132618..56939dc3bf33 100644 > --- a/kernel/events/ring_buffer.c > +++ b/kernel/events/ring_buffer.c > @@ -873,9 +873,9 @@ __perf_mmap_to_page(struct perf_buffer *rb, unsigned long pgoff) > > static void perf_mmap_unmark_page(void *addr) > { > - struct page *page = vmalloc_to_page(addr); > + struct folio *folio = vmalloc_to_folio(addr); > > - page->mapping = NULL; > + folio->mapping = NULL; > } > > static void rb_free_work(struct work_struct *work)