Received: by 2002:a05:6a10:1287:0:0:0:0 with SMTP id d7csp3033637pxv; Sun, 18 Jul 2021 08:44:35 -0700 (PDT) X-Google-Smtp-Source: ABdhPJwve3l4jbe2AN/bgnS9Iea+HAbcOIp/GMcyvtJMlLsuzdQk8JF/1eymRPmWrEWe9l/N5lz0 X-Received: by 2002:a05:6402:4cb:: with SMTP id n11mr28960162edw.292.1626623075406; Sun, 18 Jul 2021 08:44:35 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1626623075; cv=none; d=google.com; s=arc-20160816; b=wjESfdzPEzPlAxWFWrkECeoRN9i1jZ9V+XJZzk8TocfrmhmJw9bafUibAF96Cse/Kx BXCLkAl0T13kiPQQrox2T43JpKIJ3+8bBX2dbh92dMlCR0Hi/ayGe1Nzs7L4aGYWgw4O xLdSthqCpSzDxLFN5vn4ku6u993LXavuGuLDmkhdPjjo+LglVG/OshjBr+whVlOC9yRx DSxLNsn14eOUyDnPB5l3w9COwqDF1Wm+o9tuh3Gu0XTZXw98PXCUxldgK4S23RKj/iaS Ybb8bVHGIa0A0DpYb3DQwdau3BSDf3hAFI2Wh5sQBkykRczulPVVYjegpeVmVIiYPQFo fvAg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :user-agent:references:in-reply-to:date:cc:to:from:subject :message-id:dkim-signature; bh=GyhVIWizpQsTQ5L9mM/tGvbUQIK8oUcYgnxXX/Q/1/E=; b=ySpHapspGs3GxxqOz8eBXXAK78zQbYZCHA8+marrNCKBiuXbFexf0alyg33cxh0xc7 HIEwXGSJXD8GD6ExTCHW4UbGE+/Jm26MtjaBzfg3hVKOuvrXskedr/tEw3Q9aFqMsbsF +qxaS+wT6e2nPtYHG5zV/htnE2aqvP6A5er+vg0GUEXwgjMdXmN/WSrN4y1b3XtmnuFt NflhyaZlijj+bS6RIr6USEnzq2JKNaYtvSKriS7B1XMJer3zSOeVUChhg6N/kVMrAkHU iiadpdi9jwLefLfvMVcODNdVKbDdObkvd5bawz8tdWc28gdcfaR8Y6BHeL6R60BiY17Y YiVQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmx.net header.s=badeba3b8450 header.b=ImynfnIp; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmx.de Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id j23si19388015edr.110.2021.07.18.08.44.12; Sun, 18 Jul 2021 08:44:35 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@gmx.net header.s=badeba3b8450 header.b=ImynfnIp; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=gmx.de Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S234042AbhGRPqQ (ORCPT + 99 others); Sun, 18 Jul 2021 11:46:16 -0400 Received: from mout.gmx.net ([212.227.17.20]:56665 "EHLO mout.gmx.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232895AbhGRPqP (ORCPT ); Sun, 18 Jul 2021 11:46:15 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=gmx.net; s=badeba3b8450; t=1626622986; bh=a+VvLRIxhM4HpYMb3aSKVzaKVRxoB06CViB/BbBakoI=; h=X-UI-Sender-Class:Subject:From:To:Cc:Date:In-Reply-To:References; b=ImynfnIpUFmhlBzlUzYKMdRUnM1qgiFmW0x45GUJpFov/xNjPCsHaUqhLtBcUAn9W PiaMAJ1pdClM751DHET5hXhoLlFJTSJpd181sHiV6lwLyXLyBxxHXWi6dS2BXVB1Gm fZWHQUf7GgRCk/DZlSNJcuMsmPgNPnT0pWX4Bpmk= X-UI-Sender-Class: 01bb95c1-4bf8-414a-932a-4f6e2808ef9c Received: from homer.fritz.box ([185.221.148.250]) by mail.gmx.net (mrgmx104 [212.227.17.168]) with ESMTPSA (Nemesis) id 1MkYXm-1lOxRU0Axy-00m5bA; Sun, 18 Jul 2021 17:43:06 +0200 Message-ID: Subject: Re: [patch] v2 mm/slub: restore/expand unfreeze_partials() local exclusion scope From: Mike Galbraith To: Thomas Gleixner , LKML Cc: linux-rt-users@vger.kernel.org, Mel Gorman , Vlastimil Babka , Sebastian Andrzej Siewior Date: Sun, 18 Jul 2021 17:43:05 +0200 In-Reply-To: <476d147ab6eec386a1e8b8e11cb09708377f8c3e.camel@gmx.de> References: <87tul5p2fa.ffs@nanos.tec.linutronix.de> <8c0e0c486056b5185b58998f2cce62619ed3f05c.camel@gmx.de> <878s2fnv79.ffs@nanos.tec.linutronix.de> <6c0e20dd84084036d5068e445746c3ed7e82ec4b.camel@gmx.de> <7431ceb9761c566cf2d1f6f263247acd8d38c4b5.camel@gmx.de> <476d147ab6eec386a1e8b8e11cb09708377f8c3e.camel@gmx.de> Content-Type: text/plain; charset="UTF-8" User-Agent: Evolution 3.34.4 MIME-Version: 1.0 Content-Transfer-Encoding: quoted-printable X-Provags-ID: V03:K1:r16f4cB0F6DSMRY35FPrWtAmuhXmjMyXaD80Tug0wlWZeLA/shA gbSnrzuyxOMuQT5Xqm9jzmEZpgp39LttxGh5qUJidYNpBnkunaRa/fZS5MxA8/ua5vwNgaA NJ/vRdkaxWTAlldWuylcQznU2xRY1q+EFRJTUWTDLkZOCRh7ovdVDC7EjizpVdyIzMzJezm XjoJTcGkcRypmTLxKkAlA== X-Spam-Flag: NO X-UI-Out-Filterresults: notjunk:1;V03:K0:IfIZN4BWmn8=:EQJILZUQNjelhPj94JRUlw eoZhFT2lUk+a8lQMeARAQ31IN8USPAZjEcbqoaTbZoHQBN1RAWinSVZrXfLaM2yoCqLuF08tU WbBH08kRe86RxJVbnB3NeN/TWrhFpi8To0fq52E+YayFv8cnOmFdUSHCig+BcDA1/xJbE6iZD KTut94TfY/gVm5V2sfXZy78zrN5hiUexeef0ujRNF6wmrzawc64577GyNM0XhcmDtD5iNikIH bMNRAlqObE0GiDhWYqsvyoL2uveaYLPSl1xbmYoePDjJdgs9zTccTQhFpgBimdT4rdh1cjQfj e3Q/cureqHYsUQ6/6M7JtFfg0VCjNBwhPwHX4QQx29EKx02uCvW/nCXOiwuhKZHKOltMsTwww BiZe9p7KMWJqT6SjASHN21VWaUjUj4KlkkPHtWQhAjcewoEuqTD65AbgJbdmeBHyvfcqFH3lr xsuIMdet1OM2kH20NpUDQAcO9MLHQSOdeVkIhLSCQsRTyJr0CIARC68t6xzWuMiTyF106nHLt 4CK5MB/WpWSdXhPYdE5kj/1OK6J8e6k8OMLYLBoEulvSjnJgCmXmAJHcxhP6Dk15wHQjbL+75 7VXa8vqC3JrtdfZJnrPze4xRLiLSVXGy1jzMHJQDE6AoqKGdAZU9smgwM+tll/EJBP52WwC8s M5ImoL15HysJnmv+gB8IkU78FFOXF0elB5YE6Qy5smrFLVVjLcrBlx+1WKuW/qpQJgXNeAkFD Rxf8a9EGcZPpHxFgEpOLFD3uIPTfiJNBOzkYKYuSyf5pulHk3+YKPU4VuW0y4n2w03hsOfwqF jSkeTPMaRE65oqOQ+XjGOeKkbQOk/mK/AbqzRWSm9Dy8PwGHuHnEg9h2lzhzkNpXlLLlpAi+o 2fKzV18D3R5P/rlfGn/F7cujW2dTLNV/YbmU5flQsZ+AomOM2aBHIW7Xdav440QPkikPBffZq PzIQ/Tyb/CO8IKQnuTbiUADiIqQbbA1iFkk1DnXSZhuBB8oZzg99QwTxlK7v5Nxq+5kFKuKTs 5r6mkS6VjVtVrU9yInKoFV4lu4b8cveoBl3LlOy1pBHc2/4Nihsft95vrkFfUAzOr+K+4LAnx m+rgnXIAbcTDOnxBtCDJdXHtu6SywdzU2u4 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org It's moot, but for the record... @@ -2418,6 +2418,17 @@ static void __unfreeze_partials(struct k > if (n) > spin_unlock_irqrestore(&n->list_lock, flags); > > + /* > + * If we got here via __slab_free() -> put_cpu_partial(), > + * memcg_free_page_obj_cgroups() ->kfree() may send us > + * back to __slab_free() -> put_cpu_partial() for an > + * unfortunate second encounter with cpu_slab->lock. > + */ > + if (IS_ENABLED(CONFIG_PREEMPT_RT) && memcg_kmem_enabled()) { > + lockdep_assert_held(this_cpu_ptr(&s->cpu_slab.lock.lock)); ...that assert needs to hide behind something less transparent. -Mike