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 B1F0BC77B75 for ; Mon, 22 May 2023 12:02:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id F07D16B0074; Mon, 22 May 2023 08:02:53 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id EB6F9900003; Mon, 22 May 2023 08:02:53 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D7F19900002; Mon, 22 May 2023 08:02:53 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id C9A236B0074 for ; Mon, 22 May 2023 08:02:53 -0400 (EDT) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 94119A023F for ; Mon, 22 May 2023 12:02:53 +0000 (UTC) X-FDA: 80817754626.21.D929DF5 Received: from galois.linutronix.de (Galois.linutronix.de [193.142.43.55]) by imf09.hostedemail.com (Postfix) with ESMTP id F0A7D14002C for ; Mon, 22 May 2023 12:02:37 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=AwCs12zV; dkim=pass header.d=linutronix.de header.s=2020e header.b=v5hehTzC; spf=pass (imf09.hostedemail.com: domain of tglx@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=tglx@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1684756958; 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: in-reply-to:in-reply-to:references:references:dkim-signature; bh=HQlsnkvA0G7irewFZs9pxY/2SgSS+BIPR8tcb6RMmjQ=; b=GQzLzDb5c0CbIKZBFsEqQiKOIdGN3A+m0sw/ufeRtfWrqXEdGZ+lvcuEQVx/3SHNYr+2P0 oNMP+wERWDUolqWlL3CPl0WCMID92W/56CTSpPwbVgRI9EJ2iqV+BHLRJ66/+A95+Lz9ey ekEyPJfLJCFyPZq/ZqfnY8jqWa/LtS4= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1684756958; a=rsa-sha256; cv=none; b=zZ34eushDh4KWJfo+euQvEZDa/NtP0DwcQAyRurEjb/UuGDwQx6eWCnxDiARBeeZCcYQyg 3RYvB0G9OFPXn8o244MRNB9EIg7ED2rFpHy4H70O7u5ZnlzXs4KVlg49fspMl1lzYrwn8H ACPDmMoGQoZc8HR7m5pP/vy9vjvLWl8= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=linutronix.de header.s=2020 header.b=AwCs12zV; dkim=pass header.d=linutronix.de header.s=2020e header.b=v5hehTzC; spf=pass (imf09.hostedemail.com: domain of tglx@linutronix.de designates 193.142.43.55 as permitted sender) smtp.mailfrom=tglx@linutronix.de; dmarc=pass (policy=none) header.from=linutronix.de From: Thomas Gleixner DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020; t=1684756955; 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: in-reply-to:in-reply-to:references:references; bh=HQlsnkvA0G7irewFZs9pxY/2SgSS+BIPR8tcb6RMmjQ=; b=AwCs12zVlrTz1t4fPRKVfDggTDWY1puDnQJlnZzKz/khQlbb7zkKGnPd4wQveM+58o52Fm Fr9+kigpj5OFLD7mH+xEoL4tT6NDrvxMqdEx2061DaMFgnAOxF+ATreMZcnPd8FfXJmIl1 NUweHk930rS5+QrpHLQ4XWriPmBKEMlNaLi42RcXRuaYI10qBjDQFeM5FEeOAiqG1Vr4Lx HJE/sMCL0eiqOv6L9/3ueOz3gINzGKEn19+UXMUcP5ouz+U2sBRXprHaWaQ5DE4Jww0hkT /4sgOhbyiUpZAx2W2qrPW4i8MjwTFLJaS286q4Mu1qmh/YML0rW0ptGaSkw9Hg== DKIM-Signature: v=1; a=ed25519-sha256; c=relaxed/relaxed; d=linutronix.de; s=2020e; t=1684756955; 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: in-reply-to:in-reply-to:references:references; bh=HQlsnkvA0G7irewFZs9pxY/2SgSS+BIPR8tcb6RMmjQ=; b=v5hehTzCLd/aWsBvYqi38NM+lOqJX93fIHOXOqAXLB1InQUzFvWz+IdnFzCS5fJfsZwf3q Oyw7ZkNzDdwKwKBA== To: Baoquan He Cc: "Russell King (Oracle)" , Andrew Morton , linux-mm@kvack.org, Christoph Hellwig , Uladzislau Rezki , Lorenzo Stoakes , Peter Zijlstra , John Ogness , linux-arm-kernel@lists.infradead.org, Mark Rutland , Marc Zyngier , x86@kernel.org, Nadav Amit Subject: Re: [RFC PATCH 3/3] mm/vmalloc.c: change _vm_unmap_aliases() to do purge firstly In-Reply-To: References: <87fs7w8z6y.ffs@tglx> <874joc8x7d.ffs@tglx> <87r0rg73wp.ffs@tglx> <87edng6qu8.ffs@tglx> <87cz2w415t.ffs@tglx> <87jzx1xou9.ffs@tglx> Date: Mon, 22 May 2023 14:02:34 +0200 Message-ID: <87wn10wp45.ffs@tglx> MIME-Version: 1.0 Content-Type: text/plain X-Stat-Signature: kf3f9naihofx6ot4okkqyniby7gjg3hs X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: F0A7D14002C X-Rspam-User: X-HE-Tag: 1684756957-823049 X-HE-Meta: U2FsdGVkX189OOazyIWJ0WZPbOVBIh4QXigTXD/7yUbJmXVDNPFPShiNnY8mO3JJa2huOElToAVHzFZ80DBIUWo/nWiQk3i5JsPdVl6bovmVOMukSLXMWxqK1mt0EOyYcbvx9AsfG37R8T69grrS9AXHShRajxllSIC4ueytENHWpprs0SxvOL6LUszusquMz2YOvJkMOqbTEFf6L8bJwqCyNezmbrIMeVIr1CHEWCfzllcCrAvJ94I2Uq93v5hXCQmso9lZsLIyE9XFe1O1+n58UfrSOsUt1+v5U3v6x/mTHzhPUYptMg7NM8RXTnt1XIxMDW907oAeJM9L/w7KN/0R2aIRLQROei0Op6exJtWtYOJEY3suhtbR4Oh97uzN6hxeBEdlubZ8cjveNilB0peovRerX3hNgK3LMttNKrCyjccbwZ6wPTS8bvRAcCSr4lSM9bdu3H12+lRQury79AMlQfaHH1R1BbhrZbRxaqB6D3c/GYUDbONWTEVeUzZOMcdgWZ6GOjTpk7kLJifF0ilF0PtXxL5hGZKlLVouvg8LcxoqYHzjmyrlOP1HT0zIXQ7rkSL/fKTG9wm2QBuT0k6F7fQR0lx25gf0RsBZbuXHSOv94CQA3piqbRWy2SSJR/BxbogwV5eDY7KmAC4mpVw3x5IgN+WzJVikJwHUYSSlNS4TmdxTXjFZf63weDdTobCEje2RVFmSJEAUv+ykpJzVTMboATMaRemXJtUvTqWElE92+pUx9Q+fCb3wJD9CLX5Xwuc86/JT20FgJ+ZDo0dnFLZIAmsr6RSgJA38wABmSKCEdb4xBPUiBFr8kd+xJTgUiOUSSFo3MDpIoaHaGKpnhQvIcN3u/3XWAQT0JNpWLB20FcS6tFkuydxLKPfFU51oCjynDeWqNAXNYNPCgY/sw9d65qYUq8B92tJDPYoSuSeL/HytHl00GBkYNsQgARLyRU5bOJ2eTuIQsbQ sbGBxgvJ 7HMCeoTD274s2Z9gI8EOkKnTjaN39nv7EKFpYSIsZZ6/XARO8JOqnBg1cc8q9BMjFSd4DoTCK6lekj/tK/tT88q9wWWvoBh3gPtj7tknUhH2+CUpMR7Z/ocFVf4vTjais+s5h2STM+J0mM3CTA6e9VG2Q7lMXPsaLw1k/ 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 19:21, Baoquan He wrote: > On 05/22/23 at 01:10am, Thomas Gleixner wrote: > > diff --git a/mm/vmalloc.c b/mm/vmalloc.c > index 5ca55b357148..4b11a32df49d 100644 > --- a/mm/vmalloc.c > +++ b/mm/vmalloc.c > @@ -1728,6 +1728,7 @@ static bool __purge_vmap_area_lazy(unsigned long start, unsigned long end) > unsigned int num_purged_areas = 0; > struct list_head local_purge_list; > struct vmap_area *va, *n_va; > + struct vmap_block vb; > > lockdep_assert_held(&vmap_purge_lock); > > @@ -1736,6 +1737,14 @@ static bool __purge_vmap_area_lazy(unsigned long start, unsigned long end) > list_replace_init(&purge_vmap_area_list, &local_purge_list); > spin_unlock(&purge_vmap_area_lock); > > + vb = container_of(va, struct vmap_block, va); This cannot work vmap_area is not embedded in vmap_block. vmap_block::va is a pointer. vmap_area does not link back to vmap_block, so there is no way to find it based on a vmap_area. Aside of that va is not initialized here :)