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 CFCF6C48BD7 for ; Wed, 15 Nov 2023 14:17:16 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5E7EE6B0313; Wed, 15 Nov 2023 09:17:16 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 598116B031A; Wed, 15 Nov 2023 09:17:16 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 460BB6B035E; Wed, 15 Nov 2023 09:17:16 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0017.hostedemail.com [216.40.44.17]) by kanga.kvack.org (Postfix) with ESMTP id 363886B0313 for ; Wed, 15 Nov 2023 09:17:16 -0500 (EST) Received: from smtpin12.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id E601B1A0280 for ; Wed, 15 Nov 2023 14:17:15 +0000 (UTC) X-FDA: 81460390830.12.0BB4617 Received: from sin.source.kernel.org (sin.source.kernel.org [145.40.73.55]) by imf09.hostedemail.com (Postfix) with ESMTP id D32B9140021 for ; Wed, 15 Nov 2023 14:17:12 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=arm.com (policy=none); spf=pass (imf09.hostedemail.com: domain of cmarinas@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=cmarinas@kernel.org ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1700057833; a=rsa-sha256; cv=none; b=t6iFxGVwDb5rI6j8ZlEjPIiorAoouSEF0GehWv6vYq1MlQ1XKVllNfM4xVu388rQx5Y2ik VyRGuJC0qEy3EhQ3BH/LQ591Csqjxim0cZ7BzA7PG9uTTrk0WUIKRT3FIAStoCCWf2IdaH wEiy7q7r42mwhlKVvTgffkJLfpG4cx4= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=none; dmarc=fail reason="SPF not aligned (relaxed), No valid DKIM" header.from=arm.com (policy=none); spf=pass (imf09.hostedemail.com: domain of cmarinas@kernel.org designates 145.40.73.55 as permitted sender) smtp.mailfrom=cmarinas@kernel.org ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1700057833; 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; bh=5sLaSjO/bDXkTZ+Mb6ydElrYL4+3Iqlr9HsXL3Mhicg=; b=cgmYOJhD9Pm6Ia81DBsdl28aWE0DDyGehH4OExBAuYYf6PU2SmghzaLl1y/qMcf9kr63Yu KON3ssaFj9vy4yktYLqDM++0tig84j6Dkeh3eRmuFsIloxJwx/Ot7VO++33upTQVVKbAmT /HeM5JO/uuoUVNagdEpeHbqypi65lhA= Received: from smtp.kernel.org (transwarp.subspace.kernel.org [100.75.92.58]) by sin.source.kernel.org (Postfix) with ESMTP id 6EEC3CE1D73; Wed, 15 Nov 2023 14:17:09 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id DE9D1C433C8; Wed, 15 Nov 2023 14:17:06 +0000 (UTC) Date: Wed, 15 Nov 2023 14:17:04 +0000 From: Catalin Marinas To: Liu Shixin Cc: Geert Uytterhoeven , Patrick Wang , Andrew Morton , Kefeng Wang , linux-mm@kvack.org, linux-kernel@vger.kernel.org, Linux-Renesas Subject: Re: [PATCH 1/2] Revert "mm/kmemleak: move the initialisation of object to __link_object" Message-ID: References: <20231115082138.2649870-1-liushixin2@huawei.com> <20231115082138.2649870-2-liushixin2@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20231115082138.2649870-2-liushixin2@huawei.com> X-Rspamd-Server: rspam08 X-Rspamd-Queue-Id: D32B9140021 X-Stat-Signature: wesuytefbt1cixkd1mmd7sky6x4gir68 X-Rspam-User: X-HE-Tag: 1700057832-296407 X-HE-Meta: U2FsdGVkX1+EPjuYcV7iCswdwAF2Ez/+kTNRokx+HBlfCVDyS5NFHrNZIBarWziujWOCMzzYrhncrAj9e6kcZJizOUEtPMNGweosZHy9LZpAWTrTy1hnNUrXBKsn/LGtd1o/YMmQ4TjMqIpqQNv0iIkBucwa+XT1Pq9hz8M5yx+f83H/G0cH8GublojTczRqgTsAxV4NvkjgR+e0GRKrKKlxXHxmgoLVjzX66TVL6KdTL2VbxpcvaKtYVwr+3lGhWMX0CjcGAN5VQj7MLXZVUr/zepAAaMXrTaTClI6kFsQTM5YY1+RIb5nFdLdx31PZNNhyoUHA0N+l1AbKH+Z1vaXnZAbgCgHCprzVTIdpQFIvw5h3PZyT3dEGFVGfEsSjDXgLneRHqktqUzGSHooxkyfF4E96qLLblHPLln1I+1xJDGK0HC6pnNyxoNcnI6+0xznzj0smS8gL2EbrCSgM/5a0nlSASsTzAt5JuWkhBom+8aI8t1IWQFJA5YE44UdyYOwHh3NxK5psiVovhB7E3oztWH0vfvbk8uz1Ngc6oAM28VAumKK2Yb4erBkboyQIxlv4Eg8/NnursYxb4WW3eKrRS+trVotclxBhaOJrqqpOKsEkMmKoy+CXkXylxtpMslrXHHMqF1Tp5b2HUIZWkAuwM8NldvE8KKSucxAFshFBAmO3ljahU3xdMNjHgMMgMau+DMcrQyrWDldkCkCC9jPohYXcJYIfypCorD2f9fZ6eExzFvsaMqcD9zPVWRnEcl6YJ9DDT6xDx8PTrxW0SBz/o2oxP4XYDyUYvq3ql7sLvBoZMABUvesr8dUGZEvpiE6z7XfdY4gQOnoqRjTD8NyE6R9zpTg1ui9ZVN83IyJaN/xAMBcWhLS7wBZDOX+tbft91x2Il4eVzsFN1/XrKtTsqBKv3w4R3jNLBTADqstlgzG5CfixMQNTk6kYggSAFFttzzo0rwiypqTXz1b akAy1Q9N Z1YfSscBVl7BDrIVRneAn+AHWqmBP6P/5NmHtZB28lZPYEAfshxTCNyLMV5Xyag07rxfjqLEty5HW094PyCMqaw/N8LjOrF1i6zLXtlkfJ6S1HjOsdOHOemgJuwW3Rhg+TAK4UOKF+XbOvA1zdSKbBhJIBYg6uqY7+7x/MtsgB2HWqKj3S/rBYM1VvSorue+dL+1Hhc5s5icxBVWR6glz4SgQ0HQ6rICbf9OFVeW/ckv+YDswTMCjRDxZb2tXtoN1KhNPS6Ubn/QkU+mW7M40VPYzW/wgvqXvX06EdU+zRjrJRkvWdpdXk2+ispVFcQphCPi/hiIzq/FppYvniS0LioK6CABtBTu3W5x6ojT3eWm/f088gCNdtKCpmPNHTQz26D894zWW1nhB4gVG7vi/w1XKCtNHwWDmd/txf7PKtZ81uHniR5ojKfeORKhqyF8cKNwAuBuSyz66HnfxAqdpY/wnV9ICjg70xeOXKexjWzEBQBGYYeFQ19zAEvuZjNUc1ctU81+Ge6P/SuEbriGDQ0MdwoEC+qjdfo1p8Y03m+BV7dNDf3h9HUE+rQ== 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 Wed, Nov 15, 2023 at 04:21:37PM +0800, Liu Shixin wrote: > Move the initialisation of object back to__alloc_object() because > set_track_prepare() attempt to acquire zone->lock(spinlocks) while > __link_object is holding kmemleak_lock(raw_spinlocks). This is not > right for RT mode. > > This reverts commit 245245c2fffd0050772a3f30ba50e2be92537a32. > > Signed-off-by: Liu Shixin You can also add: Fixes: 245245c2fffd ("mm/kmemleak: move the initialisation of object to __link_object") Acked-by: Catalin Marinas I now realised that we update the object allocation stack trace via the delete_object_part() when we shouldn't. I'd say __alloc_object() can take a trace_handle as argument and if it's !0, set it directly whithout calling set_track_prepare() (as a separate patch). -- Catalin