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 043B3C83F1D for ; Thu, 10 Jul 2025 12:43:31 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 3CDA06B008A; Thu, 10 Jul 2025 08:43:31 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 3A57A6B0092; Thu, 10 Jul 2025 08:43:31 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 2E2346B0093; Thu, 10 Jul 2025 08:43:31 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id 1E01B6B008A for ; Thu, 10 Jul 2025 08:43:31 -0400 (EDT) Received: from smtpin16.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay06.hostedemail.com (Postfix) with ESMTP id 9D4DA10A3E2 for ; Thu, 10 Jul 2025 12:43:30 +0000 (UTC) X-FDA: 83648320980.16.99A7E93 Received: from mail-wm1-f48.google.com (mail-wm1-f48.google.com [209.85.128.48]) by imf16.hostedemail.com (Postfix) with ESMTP id 9FFF818000F for ; Thu, 10 Jul 2025 12:43:28 +0000 (UTC) Authentication-Results: imf16.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=LT3mrSsf; spf=pass (imf16.hostedemail.com: domain of andreyknvl@gmail.com designates 209.85.128.48 as permitted sender) smtp.mailfrom=andreyknvl@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1752151408; a=rsa-sha256; cv=none; b=aM0I0PfJ+5ZKAF51fpE9Au27ercOiMyenaymSidHUC5FIZPOPS9c+EBT0E7GeE3smN7PFE 0A9ZbP+w8f+3SjSTd/wuwsyZf7o+oRwm8YJcy6vZqLB4Lgsw0rwxujcv16WQs681Utk9U2 oxjxOleU4y7hmUk4YCY5XLqUsAQRh14= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1752151408; 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=RLZ3wT/zIcTlhpVZ66G+GThU9XAAh1rTUV/NBZEfAJw=; b=O5ClDMWaf0AuUILSOZd5mZdLsxOFqBI6TMCStoB8gooyW4vkpq6F5D3mDgx98PYPsejNDt xS8p8RD4/zMvgSNz6SB6RiUdMPlyIfXq55PE7zCFelJAKLr5NgnXWTlMbkRrDPM+FdIjjp gLBfFc4ADeIE2nMJ/AF0t55cdFe+yGc= ARC-Authentication-Results: i=1; imf16.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=LT3mrSsf; spf=pass (imf16.hostedemail.com: domain of andreyknvl@gmail.com designates 209.85.128.48 as permitted sender) smtp.mailfrom=andreyknvl@gmail.com; dmarc=pass (policy=none) header.from=gmail.com Received: by mail-wm1-f48.google.com with SMTP id 5b1f17b1804b1-454ac069223so11125055e9.1 for ; Thu, 10 Jul 2025 05:43:28 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1752151407; x=1752756207; darn=kvack.org; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:from:to:cc:subject:date :message-id:reply-to; bh=RLZ3wT/zIcTlhpVZ66G+GThU9XAAh1rTUV/NBZEfAJw=; b=LT3mrSsfq3abx+zMgyrNmJS4KlQlbbOS1TLWXizUgriAaz7MxCONIMSgC4IsJ5dYmJ c5pL/StKP6bFrK2lGgOq9KiB6SwcsrhhyVkomaGkFi+1N7FVDLMx/f4N39+6WH0vIElB GfP5fqefS7NqQ3CmwBDOHyGETL/Naw08cghaUfKo1u0W7mo6FTO72uz1XaNTzWUlJl6N kkxyCNOdexwvMUOrMJvrlm74omRU4D9EYeEp8EJiGKGTlK3LQLnHVEjnL5rdKoLE0SpC /Ru1vJP+K2UJFfU+5Fxbbkxc9AplS4EZxXri5RJUnTgzflH/IqwMYLLihJ4mlOKwEzfk 3hpQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1752151407; x=1752756207; h=content-transfer-encoding:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=RLZ3wT/zIcTlhpVZ66G+GThU9XAAh1rTUV/NBZEfAJw=; b=NQMBN/VO1FKE7xJpfY2nsCmiu0qJ7r3pijC09v2amu6ZwBA7lbg4CUcHuvY3e1x4ZA wJ27M6zCRrzlam5wVlsckweBUCB3ppL2zuMqFRI1wK7WeJpZRh+thGF3FFwckZOk8CnS urR+w0LXVlm76kmqsmxqQC+s/0ao6q0Uurq/XQIpKvEphKEsNuHeG8MpmIoimwbdc2h2 oijYEb6Vz+EpHD2evGCEownB9Pv4A0Mpdu/h1Qqzy50zb6XoSvUv7qnup9aqO/+xfmd8 mQhXVv6GgfW99W0gR9/MaQriO4uJM4OOEJBpFB8WS0z+IfvmmisRAA+EW5DHFKWhIv82 SKfw== X-Forwarded-Encrypted: i=1; AJvYcCVQETv3a3meBzQaXKNNaWbisADhl/NRQHYru4p7weTddyqlKADCTpiZgMpWNwQ4y1RWFeMabIccHQ==@kvack.org X-Gm-Message-State: AOJu0Yx6t5WjAMBAvqn62sUGhETm7KkQMfeFjDHH0SRGTJDx7xRaVHGt GQFf+oW9rSl20MYcn2xsokeU71pRAaqTifU3zv3/+jWa/MQcBBkDJUTDAvJMOTatD++O30qx7B1 62lNsEApinicM5xobDEHEIXCIOHzMAuM= X-Gm-Gg: ASbGncvi6D4IMqtNu1LeRLA8GMJ9gC7i3C4s0e6NWD1qw6qjiW6aLHGz465sgw7He7r C66D3Ysy/TmNcKpiHEyPx+0eMLMRvZzXCRPuuH4jEdoMhGcap9SS4UP+Q7QJxip/X1qsKKr7mi6 LioZ005vz/OswKQXSFyaJW00gdCr5PNt7QlJTPZYuN3dVXnw== X-Google-Smtp-Source: AGHT+IEnLv+M1cm1e41yBczHzCqcGvBz2LxWly+f89XFFbMNN8WbM3UxVWoFEfEmHMVnnkn6nxf6P78yVudOGfXKEXQ= X-Received: by 2002:a05:6000:22c3:b0:3b5:e07f:9442 with SMTP id ffacd0b85a97d-3b5e7f34672mr2613771f8f.19.1752151406804; Thu, 10 Jul 2025 05:43:26 -0700 (PDT) MIME-Version: 1.0 References: <20250703181018.580833-1-yeoreum.yun@arm.com> In-Reply-To: <20250703181018.580833-1-yeoreum.yun@arm.com> From: Andrey Konovalov Date: Thu, 10 Jul 2025 14:43:15 +0200 X-Gm-Features: Ac12FXxkeNT4SbQnhPymL-kgefhQmsJ3o4VsRU7W2osYTS5GaGgeUo2hYTeE0yw Message-ID: Subject: Re: [PATCH v2] kasan: remove kasan_find_vm_area() to prevent possible deadlock To: Yeoreum Yun , akpm@linux-foundation.org Cc: glider@google.com, dvyukov@google.com, vincenzo.frascino@arm.com, bigeasy@linutronix.de, clrkwllms@kernel.org, rostedt@goodmis.org, byungchul@sk.com, max.byungchul.park@gmail.com, ysk@kzalloc.com, kasan-dev@googlegroups.com, linux-mm@kvack.org, linux-kernel@vger.kernel.org, linux-rt-devel@lists.linux.dev Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable X-Rspam-User: X-Rspamd-Server: rspam05 X-Rspamd-Queue-Id: 9FFF818000F X-Stat-Signature: 8owy39uzgd5i5wbjsmhah684dkd3yknj X-HE-Tag: 1752151408-642996 X-HE-Meta: U2FsdGVkX1+rqoZ5SxYwl3NMaxi3uMEsob7hKYkMwd8NaZ3tjPIVY7AtoRcrw/PjSTNlZoENADLvxzG53FJeIdQOVknzX0RrIRE+skO8oW5bq7MjkbI7QqS+QVwA3+r3yf9HaWUwy2AydDZyXS2mq1U/TJzBJTValcCu5lBfuB6nMmAQ/9Jw1/DTv1QHsLi19+jy6yyrfl4S//cp/m4OLBsIYj1SVUCGmhPAYv76PBPiLP+Tg1g/nAnQVM8Tj1jfSu3Thpg9j3lo94jzMsRDNczKRfrq1hjS4YUgI+AdQ8LAqyvnNme5TzHYgG/B4MYPIp72M0g10srHSfkuoMirQE6KZiEzK1iFFxIVZEicvo4Nr0T4o4wNTxwiT9jTS55m/72opj0SOaii72ClLcm5Y1MallrKdgqFSbmdeXjruvgHNpQQ7CrTmwpg9fs3CZ579QYFdStVR+NOcAHFaupX0ww44iG9r8WWlDtD6NCbk0CxpQZ1WKOGp0xWZo16b1NbE7CZYwQXzh8P2z0uQNdDhhrofn44/jFABLYgcu09BqRDi+bPLx9RZLgqVXnF8D9hPlc6WqP3c9isd4Jn2v11DfBL8nrmaV+xUhBCh6prh9pJcfKPOsAzkmfeYrL1owJ46mGJAcXWPj1SLn7OFLmCJ4CNl4aqMTtCCqHqIpENxRwmDv1bz3dXp8y+zTBa7yXjpdnT1O5jFKKococa9AAHf/FelLnRQb+OmQuQY20xxxqzbFBAQKApoGlwRN5alDoGi5K+Lu+N0oVkNSZ7ngTHqqbWzyDbTcWWsKN+/eu9YtL3EDhzxqsXqpESvR0wJPCinf+lYMFg0dTokuc5XCfGEqObaDJlxInra/ulW89tiZI4n0EFjspMO2zGQ4wJtJBkjz4VwlnYQei4iP4D+9BSsZcKfrywHCq3/a7HQ0/D3DZ6p08N9NcMVfFcpRLdVsEwfWpQYckATmUv32hxF41 9IpDVnpo wv2NoE77aPvXsSbNkIaHP6JbCgfidSdrXbgZ/FbbQ1vsrkROkMyreRaGtQyC82IMsxBi8Eze5pBsrIjxfNfp+imYN75KHGBsOD19fU/NXnu1eus0MWjN1y4E/nQQyo2AXCWH9Lr/lN9I0hI1A0tRGNh2c06VV5NfBcCPrndI6oME9nl4fVa6CgkyGpJOie9N1Q4FdJsreNBP6O2uYVx+a0fWhOoHXWuqFcr62Ln4gNzTQWsoukbwF9HTKM1pAIeAFuAwTayjx13bWe/jVtpYPDKsAD10TExDoyHa3XINLAqUWUXYDnnlKo73gA9RhrvvBpW9jEBkzF7hUUHVykit+F352PIvkkuFCwaWvRvFD4urIr/5erWnrH5z4jflu2ScNiE+l+dHNzaQDylEbvFo+eFENxNd2hVFAs+EkymGvzscHnGtAhEfq3lmOdAvlIHNWJorjAAvVTqMG7idd0TxsB29G6/uVcqQ2d5/0RgkSDOUNvWIIZV5IdqVzGopFLcddlIfTDG6sW4ejcMvh3QEK2GsPtMO/iPVZLlMVtOpj0u07/ggqgYEQ+aB3HtimbQFr78J2dEQ2lX7O3YH5wyZIBgqXs+2AmzedJDnd 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 Thu, Jul 3, 2025 at 8:10=E2=80=AFPM Yeoreum Yun wr= ote: > > find_vm_area() couldn't be called in atomic_context. > If find_vm_area() is called to reports vm area information, > kasan can trigger deadlock like: > > CPU0 CPU1 > vmalloc(); > alloc_vmap_area(); > spin_lock(&vn->busy.lock) > spin_lock_bh(&some_lock); > > > spin_lock(&some_lock); > > kasan_report(); > print_report(); > print_address_description(); > kasan_find_vm_area(); > find_vm_area(); > spin_lock(&vn->busy.lock) // dea= dlock! > > To prevent possible deadlock while kasan reports, remove kasan_find_vm_ar= ea(). > > Fixes: c056a364e954 ("kasan: print virtual mapping info in reports") > Reported-by: Yunseong Kim > Signed-off-by: Yeoreum Yun As a fix: Acked-by: Andrey Konovalov But it would be great to figure out a way to eventually restore this functionality; I'll file a bug for this once this patch lands. The virtual mapping info helps with real issues: e.g. just recently it helped me to quickly see the issue that caused a false-positive report [1]. [1] https://lore.kernel.org/all/CA+fCnZfzHOFjVo43UZK8H6h3j=3DOHjfF13oFJvT0P= -SM84Oc4qQ@mail.gmail.com/