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 687B5CD1288 for ; Sat, 30 Mar 2024 19:39:23 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id ADB606B007B; Sat, 30 Mar 2024 15:39:22 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id A8B836B0083; Sat, 30 Mar 2024 15:39:22 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 92B946B0085; Sat, 30 Mar 2024 15:39:22 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 75E496B007B for ; Sat, 30 Mar 2024 15:39:22 -0400 (EDT) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 339BEA01B0 for ; Sat, 30 Mar 2024 19:39:22 +0000 (UTC) X-FDA: 81954719364.07.EB70D4B Received: from mail-lj1-f173.google.com (mail-lj1-f173.google.com [209.85.208.173]) by imf20.hostedemail.com (Postfix) with ESMTP id 39B281C001D for ; Sat, 30 Mar 2024 19:39:19 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="mugGQH/3"; spf=pass (imf20.hostedemail.com: domain of urezki@gmail.com designates 209.85.208.173 as permitted sender) smtp.mailfrom=urezki@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711827560; 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=MfqmjI1cfzebWVmfdkyu+Zmzi/f2gz4T/5BjRLTJnd0=; b=7dk/PfYx7xFAJRui9/WdF51NP+cSXpVRuYWjMa3PSXF5uF4dPc7e+OerUGmL/53D2JpcXW hrDYDM8DvjM686ZrURW+Y451jo1fSQt8QP3UyhZeHqIVKrVDKDWNXrXFelgSmOksM9ZwPj dPbJETd0fh5AKXFtVY967mWod5QaYXU= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711827560; a=rsa-sha256; cv=none; b=c1foQjPVwd+e4TYVGiPfD7EBhhPcKPnd3YA41aWVInmFOnvY416N9tRsMeWUYDcVUwfUp4 9mVd1t1n9rR/tGHJuEO6BSfQE9kLhqauZq+MjF4sgclGYQb2ITCg/MW4AdyD5vnG9wsxWn dSWWmvVLcpVr+cv/jnF63D7CUqA31O4= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b="mugGQH/3"; spf=pass (imf20.hostedemail.com: domain of urezki@gmail.com designates 209.85.208.173 as permitted sender) smtp.mailfrom=urezki@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-lj1-f173.google.com with SMTP id 38308e7fff4ca-2d476d7972aso42390161fa.1 for ; Sat, 30 Mar 2024 12:39:19 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1711827558; x=1712432358; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:from:to:cc:subject:date:message-id:reply-to; bh=MfqmjI1cfzebWVmfdkyu+Zmzi/f2gz4T/5BjRLTJnd0=; b=mugGQH/3rQR4zdMMPRjduRRThP1UJkPgjHIOEuZITZWLZmXe4yy1lsNL0ly/Eqbh/t x9tw8npig1+DtasfEOypHEuMAFg7LiTjP8HjTWdftIZi8lxaYK7KTat4nVN6J9anCLwK uShg/8ssccQ6ENsEmoZUAal5MU0a1sLURTodbZvfs6qPu4rxpxC6X3xI88IMeiB0o6DE hQ1wxe0Wk1xlDmkOCKxju0EhOmhKwUdeyinXCh9hLDQ3gAymjpEYCdd+Vwsvl4ZMv9GX JuGej06uNVWblzN/KpjwZHDyx2y+8ycXW5wOmnw9bEDQv4/Jm7eSov9gWvhYhYGEKzpb /sUg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711827558; x=1712432358; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=MfqmjI1cfzebWVmfdkyu+Zmzi/f2gz4T/5BjRLTJnd0=; b=LuN+LNcZv/rnVo4SmgtfWBez4jbaGl4XY3VfF7pfwbmtrkGG/k8UiRuQHvx+K2X4pK tSkGVNvqFHXCTO+xt0VSjGOSFMDh4zvhNRzvXaLHQ+BUntzFaLjSVCWiqM4bvCaodnuQ KNts1J/36JPIczPk5FgoUKLFemgmcV33WkWKfY8ld6yO1PW7Kv+w4az01OeKAorYKL6G Tp2mlRCuZBWj6E9s8KVRoDqtKWfOUPFxpt5Jk8nNryWKmodIs0neivd2DpeaL1Qa/K5U RtTRefgMWCIKeM2YBtrsBNuZltIQwXwmlHz/9t2zN/xzS8mQ27H7u5ZPZEmgf52V0muO WwOQ== X-Forwarded-Encrypted: i=1; AJvYcCVhL9VW7VceVb+vbc203VmVcuV3OxoIaTRS/cWsgOQVpE2Ph2LlkdXChtB6CONbUSJ9Z3ARML+FNoD5VfQgw+nryFQ= X-Gm-Message-State: AOJu0YyOh2uJJakCoZ+Az+2wn6vIUB3sdVyyYQ6giqtjmNo/ZjOcCeuK DqDeM3Tv8V04FVZrW/uQ8oQ3A0mHdvp2FIiiCc5/UhC0Fd8SP2hT X-Google-Smtp-Source: AGHT+IFhnItMWxn2ItV5z5c2F+sbduQ0MtA/HZITX2UNX+2G0rYtt4HyqR+OkWaY2mHXuGP3RQPjGg== X-Received: by 2002:a2e:8699:0:b0:2d4:6815:fc6f with SMTP id l25-20020a2e8699000000b002d46815fc6fmr3242166lji.30.1711827558055; Sat, 30 Mar 2024 12:39:18 -0700 (PDT) Received: from pc638.lan (host-185-121-47-193.sydskane.nu. [185.121.47.193]) by smtp.gmail.com with ESMTPSA id q12-20020a05651c054c00b002d437894f49sm925306ljp.100.2024.03.30.12.39.17 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 30 Mar 2024 12:39:17 -0700 (PDT) From: Uladzislau Rezki X-Google-Original-From: Uladzislau Rezki Date: Sat, 30 Mar 2024 20:39:15 +0100 To: Baoquan He Cc: Uladzislau Rezki , linux-mm@kvack.org, Andrew Morton , LKML , Lorenzo Stoakes , Christoph Hellwig , Matthew Wilcox , Dave Chinner , Oleksiy Avramchenko , Jens Axboe , Omar Sandoval Subject: Re: [PATCH 1/1] mm: vmalloc: Fix lockdep warning Message-ID: References: <20240328140330.4747-1-urezki@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-Stat-Signature: 5gktecuja9rixjgnjjtmjrfxnt9sjnqg X-Rspamd-Server: rspam10 X-Rspamd-Queue-Id: 39B281C001D X-Rspam-User: X-HE-Tag: 1711827559-897466 X-HE-Meta: U2FsdGVkX1+MZuWrloQ/qt+zKkUeL8dg/+2MtNg8fkOuW1XRHeTrt7Zcb0u2jnjhphSNBvnPci6A3VUPh05M0yrzWkUaRTN8efWnNVrGMqOHYYR97LWOSFhvdPuaWm3M1Q0RCnEQ/+1EMXC6Y2c5hnA4ugGlnJPyT72v7TuexfvH8NbeZPsGeTFLrry0lPhOAhm4PBx0IHrYTc1ap9BFBsLPzXPH24GFSu+lZozSVRMMZKJaKDcxkShe2QwMGDgWDmNVndVvvk/V7OSRqD+W5IYKxMeFWScIBIdysbZOuFaBTgX6IS65+J/m2lC/mngCfYCP5BG2/u/96RsRrB1QWwyBesswyFESSQqjN1NB3mnmyZNXjO8x+jyNDvnvzzhUxWJFEy8kPQG3N1Ck9OEoYJs6x0dHuF/fZ18z3eT+zt3chyN6VL9XNyd6o4gi+cSAzvlKYNTgRnmhiDbFdW3EM7/HCMF6ezjOHv8epJnbC2W5h94+5+aN0W+8sv56rBBZ4koWgc34k2GuJArIHS3bEmGQEerczTqwxTmIsyI0FFoda25MhS7SmDuDVEVYYI8b7tWb3jr8DEbO/4iAQ7KJka2z0S+VoMHbLHbDEj1BjNrgTb9XXgjUwiAn5NZVY0NfUcqP0vSG7PBduXS1QCsWBr+QMbpztleiG3M0udyaEg+U3kg8hhDE4Nxg5z83t3PZxGxaJHH+mN0GA2EJEUG4wwIDHDZhvVFSk4TCWL6qO5swy3g78Ag8O3PvrhDBpMDFxfxbEXfY107xAOclsHBMWpqAdjmPOE9LpGfeqfE9xSNzRiitvZ3bX/aI2Gnm9xi3e191omaTuslSEfCrnRWS8tXpDvek97dPYSoNGdZxCX6/uYQyntt6wdxn+ljaffvcHoPcMMg/B2Tn3q4RyGVH992cJyxLsqJ+aKFnpp8BB539oRvEGgq8NzA3cm5oiXaObAjCrJbNKnqlT1iDcwM GSk5vSvh /EX+SzE+a3thrNmfgoIdMCyQDaYbn4mZfS4weuZfdwQgWKzspZuwXnS65GOtHkl5FKyZRXro/LKfpY5aNY0r5IOEL3klfzyCfoOm7eebawvqn+hLG3vnOkJUfPe7DD4Q45ugQMKtArZ+Omez47u1VRV+VNb7namKsFg2+98ebmNIstiAQEc7Yb9UVScyQfLwv4ilbb9Xmse1uKEBdvQCFPmQlglODPGdKw8SYoEiyJ0WozNAkMrFsxyIgj80/KSB8S6h2PLBofaqs4HYNr0D41zTy85FEo9KdMxf2yEbM28QaMI3aJ4Cflu0JCV+wctDMatpnCAnu52Fbw3jNk2zE4slaeVg9cZY8ETB6SJUE826nqyNiaxePyN0ozfJuDXRm8BtbgaUcxs7rNZE= 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: List-Subscribe: List-Unsubscribe: On Sat, Mar 30, 2024 at 09:21:25PM +0800, Baoquan He wrote: > On 03/30/24 at 01:55pm, Uladzislau Rezki wrote: > > On Fri, Mar 29, 2024 at 03:44:40PM +0800, Baoquan He wrote: > > > On 03/28/24 at 03:03pm, Uladzislau Rezki (Sony) wrote: > ......snip > > > How about below change about va_start_lowest? Personal preference, not > > > strong opinion. > > > > > > diff --git a/mm/vmalloc.c b/mm/vmalloc.c > > > index 9b1a41e12d70..bd6a66c54ad2 100644 > > > --- a/mm/vmalloc.c > > > +++ b/mm/vmalloc.c > > > @@ -1046,19 +1046,19 @@ __find_vmap_area_exceed_addr(unsigned long addr, struct rb_root *root) > > > static struct vmap_node * > > > find_vmap_area_exceed_addr_lock(unsigned long addr, struct vmap_area **va) > > > { > > > - unsigned long va_start_lowest; > > > + unsigned long va_start_lowest = ULONG_MAX; > > > struct vmap_node *vn; > > > int i; > > > > > > repeat: > > > - for (i = 0, va_start_lowest = 0; i < nr_vmap_nodes; i++) { > > > + for (i = 0; i < nr_vmap_nodes; i++) { > > > vn = &vmap_nodes[i]; > > > > > > spin_lock(&vn->busy.lock); > > > *va = __find_vmap_area_exceed_addr(addr, &vn->busy.root); > > > > > > if (*va) > > > - if (!va_start_lowest || (*va)->va_start < va_start_lowest) > > > + if ((*va)->va_start < va_start_lowest) > > > va_start_lowest = (*va)->va_start; > > > spin_unlock(&vn->busy.lock); > > > } > > > @@ -1069,7 +1069,7 @@ find_vmap_area_exceed_addr_lock(unsigned long addr, struct vmap_area **va) > > > * been removed concurrently thus we need to proceed > > > * with next one what is a rare case. > > > */ > > > - if (va_start_lowest) { > > > + if (va_start_lowest != ULONG_MAX) { > > > vn = addr_to_node(va_start_lowest); > > > > > > spin_lock(&vn->busy.lock); > > > > > > > > To me it looks as incomplete. The "va_start_lowest" should be initialized > > when repeat. Otherwise we can end up with an infinite repeating because > > va_start_lowest != ULONG_MAX. > > You are right. Anyway, it's just a suggestion from a different code > style, please feel free to adjust it in or leave the patch as is. > > > OK! Thank you. -- Uladzislau Rezki