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 243B9C54E67 for ; Wed, 27 Mar 2024 17:22:05 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 8E3506B00A0; Wed, 27 Mar 2024 13:22:04 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 893F06B00A1; Wed, 27 Mar 2024 13:22:04 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 75B016B00A2; Wed, 27 Mar 2024 13:22:04 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id 57DF66B00A0 for ; Wed, 27 Mar 2024 13:22:04 -0400 (EDT) Received: from smtpin28.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay02.hostedemail.com (Postfix) with ESMTP id 14CC7120E56 for ; Wed, 27 Mar 2024 17:22:04 +0000 (UTC) X-FDA: 81943486968.28.C479503 Received: from mail-pf1-f170.google.com (mail-pf1-f170.google.com [209.85.210.170]) by imf19.hostedemail.com (Postfix) with ESMTP id 036DD1A0007 for ; Wed, 27 Mar 2024 17:22:01 +0000 (UTC) Authentication-Results: imf19.hostedemail.com; dkim=pass header.d=kernel-dk.20230601.gappssmtp.com header.s=20230601 header.b=o4AqFmpJ; dmarc=none; spf=pass (imf19.hostedemail.com: domain of axboe@kernel.dk designates 209.85.210.170 as permitted sender) smtp.mailfrom=axboe@kernel.dk ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1711560122; a=rsa-sha256; cv=none; b=YUa7yzW1ngeK5UkAUYOnQruSRCsxWSI9ohkdW8+Ita7THYD4rlu9yhd0M4haBRJCLlqW1O tnG36m+D+uQw6tDBvBeW5+BVaOGnFaoGBpURKNbbQrxxuZj0GsyAwg4mWDCgsQU/26Il7w MhbkjnD584C6Ar6Tj/1ukQAWyg9lcxc= ARC-Authentication-Results: i=1; imf19.hostedemail.com; dkim=pass header.d=kernel-dk.20230601.gappssmtp.com header.s=20230601 header.b=o4AqFmpJ; dmarc=none; spf=pass (imf19.hostedemail.com: domain of axboe@kernel.dk designates 209.85.210.170 as permitted sender) smtp.mailfrom=axboe@kernel.dk ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1711560122; 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=mPmS0IbKRo4kJN1wsgPR6gHl0O+6+V38odllMaOa1qU=; b=nGk8vWrmbvVP8e8j0foUEjRzvaqBzHe4zygB3IuqgtnbG4IcTsOoGSPBNV4PTSUY/H6HRD dIprpF8TQ2cHyNHkCTOg739gSM1cM+RynXzsbQphG4jttjZk2dbSiw+B/+vCnUP73kc5QY vKJ5Gov7hpsbf/y10vTgG21BsFzyiXU= Received: by mail-pf1-f170.google.com with SMTP id d2e1a72fcca58-6ea7b38f773so24892b3a.0 for ; Wed, 27 Mar 2024 10:22:01 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=kernel-dk.20230601.gappssmtp.com; s=20230601; t=1711560121; x=1712164921; darn=kvack.org; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=mPmS0IbKRo4kJN1wsgPR6gHl0O+6+V38odllMaOa1qU=; b=o4AqFmpJA9SstFpuUHx+zmdBaMwOqtEPfoxmFI8SQQEKjUXBi3yZrVnKdUWOoWmHFf G7JlM7iXoaRvdU/KpCzzM0j3WwyDYI4pMQM8qwmhtamDGdakOJX6X3zN1PIu1Cbfad3B n9MIqoMx+A8uyzlJSnkAW9RwBgR8kelYch0l3w0eOr5skOOO64UeSn81OQ6qE3m+Gcaq EcEjEBTvpgfwV5FWDZ297DibLHpVtd1K8h8Ak+Y7LSyIMgO3yLX0+qo5hN9aojijPeoh Zzapznxpw7nP5ehZcJmgz9hO0RW6qsIgk0uvF/uDLLaM/aDGCYhBLMnTMtvsnFkhcUXa 3Oqg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1711560121; x=1712164921; h=content-transfer-encoding:in-reply-to:from:references:cc:to :content-language:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=mPmS0IbKRo4kJN1wsgPR6gHl0O+6+V38odllMaOa1qU=; b=uE74D0apq2B91V30HqqlFIMJBmJ1io+lNaLmITjFMEHqBRe9ZN3ybt6y95FDfrYx8D rRI3T1dJgUHzfgejjMc0HKmwqGmz8bTjBLLF7WVXPQ38rV95a7YmQyHdTSGjdtkVxx66 pk9BJfzrdX/zw2EepfF3cTBzLkirYc96Y4odOElcvg+n10zbKjHAj9UgOtTp4W8vZv6J 8PKx4cRyGIw83RO+JJngDIEPrrBBMfCVLJDLw+qrbQYHTwXmlRR5LH2gqL+4guQTZELw wBfk5613k6VH1cIqdPYVjGpmKF5BukcwRbs3o9STNT1UJ/FoSHVyxSjI+NJO4Ow3Uj2Y AlsA== X-Gm-Message-State: AOJu0YwpkczYdxqbEJbNn69OuaQRG0D6zcau0JPFQANs9EH+WKos0VOo dlYPHzYUyGo66cIZGwDJCxtQzw7+Fq1wnZXvsrv6UxPyEoXeDic5Uv3dSrZtrNs= X-Google-Smtp-Source: AGHT+IHP5UhV+ei4EvBWllhLpC0ock51Q6wJ/qF/Ak9c4rCQra7KceP3Q40GCEBe/6XvKul6veW7qA== X-Received: by 2002:a05:6a00:4f96:b0:6e7:7bd3:f69a with SMTP id ld22-20020a056a004f9600b006e77bd3f69amr515884pfb.2.1711560120643; Wed, 27 Mar 2024 10:22:00 -0700 (PDT) Received: from ?IPV6:2620:10d:c096:122::1:2343? ([2620:10d:c090:600::1:bb1e]) by smtp.gmail.com with ESMTPSA id ka30-20020a056a00939e00b006e6686effd7sm8100685pfb.76.2024.03.27.10.21.59 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Wed, 27 Mar 2024 10:22:00 -0700 (PDT) Message-ID: Date: Wed, 27 Mar 2024 11:21:59 -0600 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [PATCH] mm: vmalloc: annotate find_vmap_area_exceed_addr_lock() for lockdep Content-Language: en-US To: Uladzislau Rezki , Omar Sandoval Cc: Linux-MM , Andrew Morton References: <86cb4eaa-2ef3-47e6-87f8-96b15895a7ce@kernel.dk> From: Jens Axboe In-Reply-To: Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 7bit X-Rspam-User: X-Rspamd-Server: rspam06 X-Rspamd-Queue-Id: 036DD1A0007 X-Stat-Signature: arprud4sh7ts4w9bgazp3fn859icyirr X-HE-Tag: 1711560121-320671 X-HE-Meta: U2FsdGVkX18GQjMii4ZQCncd04SgGkgj7eqm9v8JqvJJE8q2290QKu+W3wiNbBHZSjf38czxh4ScgxgIKoaOIJBErIQV70joYC7SzGv7XX1T/MQ/Q2VFaODHCbIH8n2ulmsaOtJH/fffzx6exIlYxx3vuxhP+yNq+sZPKY4qiqAFYn+xTQ9IwQUO5ALzmy0ZCcOlaXgM6deN0B75wIhubFnlvXJTt+geKM/863rJoMBYUHdKJVPf6WsVqgXjsZp9ULwOHH2SNqVoKMBM9a3tAz5+Ma/stnsggjYB6qdlxTDwck0kzlMEeLSVjuLSFfQQLhKZsAZB0durSovaFZqlaUikfoYfZ4CuWoaVcWqGEn3IXOMriRpQfZAUzTL7P00UVkj6jQ/XPZCYn/ib2x6D94iglbEpkKO6c9bH+EonWiTxuxsRZ2F0Led+HJH2uS867paST940OTESucAeUbkX9OxTp82ZCwaiDWHM8vucTrAuodepJBiPD259WGnIY3rKvmdm7MLE58UOIuc+Sfj8IUktV5kFPEscMepGodoye2bhGiozvpU0u7Ss4exQaBOfdkj6BlBJf6wQgJ/jdf+zmXci485NklOc08c1LenqIH4ILI1UcDVALLAEWzX3o6UtuU6Z+LtrX852KugKtAPAWv1WXQzGyjQ1kJwDbUrxLKBnE91JvKwE4b+wldNI40UsEx7NMIauaF6oSyRBGczGAw/z15BnkP4QL8Af+G2ggDFRqoV5ic4b8lG66BTe4rMfJ4VSKdXR7PFrf3sXc1p7Rn25s8EwZvEN7NMpuMIVTsQC9I8vEdMtUOuwPDHi0ybdbRQ/oiIaAm/uiOCMItOxkf9URnaqlhIEc9sCgfeHfiMfEhmEbD9ePLIAJoMyGpBvsITEQml4p6anPB+ePIQKUguIC3x/h4m0mJxRujKFvlVCnhyc+9ZddwoxgPxe2kiOCDw7eY78n8fhbFUq2PN fhOqo3Wl tQjMuBR9thnyQTrOJpPu+ufNLa2bTrCXKi/Qfw3bRTJ9d3H4lFS5HS5MKKfVUeL3lu5GNCJy7mO0uiWqWoj4fqSgWWRk52Mfm4nbCv1a8J0r9DKTBhZ48PspetMfl5fYY0duQ+z/ag2Jqau/4jKjc9VS087cJXMt7GJ0VpSC1iZK40vqUzYEbCLtyVwduNiYnO7vlMGBe9F+jJgsT57syLumVF1AaUPEz530WX+3j1byX3t9fn1oo/xjCU0xcosIZNUAaz48+DVhAbAFhmmtty3xwu90YdCqRojXqZ8NqoYW2bv/nRJih1t9hcCN22T+TTIv4fa7DVZMhYqfXqUSA/0vWtTom/cyk13j342BLxDFaB440fwbo+MulFSmmxtcETREGVWYa8BKMqYsR9o6+QN2b/rTJ3nCWxak2/tNLw9c4+ES+UTzlu11LB7Bdcj5tgKDYVf/PelEgYjjb6S64pAENvZnHpE/yHxjUpct+yIOXQpmFGcBPFvTMzgHoNRG3Lm70HHj6iyWIAqW9cpR6MfGIpFXV1H2WKwBb5cgSdwLXngc= X-Bogosity: Ham, tests=bogofilter, spamicity=0.000070, 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 3/27/24 11:04 AM, Uladzislau Rezki wrote: > Hello, Jens, Omar! > >> On Tue, Mar 26, 2024 at 04:24:01PM -0600, Jens Axboe wrote: >>> On 3/26/24 3:25 PM, Jens Axboe wrote: >>>> diff --git a/mm/vmalloc.c b/mm/vmalloc.c >>>> index 22aa63f4ef63..26a69fa6809c 100644 >>>> --- a/mm/vmalloc.c >>>> +++ b/mm/vmalloc.c >>>> @@ -1032,7 +1032,7 @@ find_vmap_area_exceed_addr_lock(unsigned long addr, struct vmap_area **va) >>>> for (i = 0; i < nr_vmap_nodes; i++) { >>>> vn = &vmap_nodes[i]; >>>> >>>> - spin_lock(&vn->busy.lock); >>>> + spin_lock_nested(&vn->busy.lock, i); >>>> va_lowest = __find_vmap_area_exceed_addr(addr, &vn->busy.root); >>>> if (va_lowest) { >>>> if (!va_node || va_lowest->va_start < (*va)->va_start) { >>> >>> Omar said he tested this and ran into lockdep complaining as it only >>> supports 8 subclasses. So this patch can't work, but that still leaves >>> the current kernel code buggy... >>> >> It is a bit tricky. Let me rewrite it so a lockdep does not complain. >> >> Thank you for your report. >> > > Could you please check and test below? It is based on latest 6.9-rc1 tip. > I have reworked it a bit and now it does not hold two locks so the lockdep > should not complain. Works for me: Tested-by: Jens Axboe -- Jens Axboe