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 X-Spam-Level: X-Spam-Status: No, score=-0.9 required=3.0 tests=DKIMWL_WL_HIGH,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id A8732C83003 for ; Mon, 27 Apr 2020 23:56:50 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id 767D4208FE for ; Mon, 27 Apr 2020 23:56:50 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (1024-bit key) header.d=redhat.com header.i=@redhat.com header.b="fgb9lB1Q" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726396AbgD0X4t (ORCPT ); Mon, 27 Apr 2020 19:56:49 -0400 Received: from us-smtp-1.mimecast.com ([207.211.31.81]:60628 "EHLO us-smtp-delivery-1.mimecast.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726253AbgD0X4t (ORCPT ); Mon, 27 Apr 2020 19:56:49 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1588031808; h=from:from:reply-to:subject:subject:date:date:message-id:message-id: to:to:cc:cc; bh=xqSYkkiN5zo6A8A9R6SrdTZLgFG5Vtd3h0pL6NAIaDM=; b=fgb9lB1QQNEMwkcUFnXDzgRvoRAfWRK/iBUfLwBhGt3j5X6xnfvCop8JS6A7+C5vkvfyfe HMh4jtH9av+fLOj0VdGBe7xtpvVhDeearTgP78q+wg+HsybkT/snufRIy5NPtHiitcP3aR xFIcIKJKn4P3xbvo/eoXtbUoqIpDXCI= Received: from mimecast-mx01.redhat.com (mimecast-mx01.redhat.com [209.132.183.4]) (Using TLS) by relay.mimecast.com with ESMTP id us-mta-23-YS63Xv_VM8-Rn4F-pZDCCA-1; Mon, 27 Apr 2020 19:56:44 -0400 X-MC-Unique: YS63Xv_VM8-Rn4F-pZDCCA-1 Received: from smtp.corp.redhat.com (int-mx02.intmail.prod.int.phx2.redhat.com [10.5.11.12]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by mimecast-mx01.redhat.com (Postfix) with ESMTPS id 1BEC6107ACCA; Mon, 27 Apr 2020 23:56:42 +0000 (UTC) Received: from llong.com (ovpn-112-176.rdu2.redhat.com [10.10.112.176]) by smtp.corp.redhat.com (Postfix) with ESMTP id 56F7760BE2; Mon, 27 Apr 2020 23:56:33 +0000 (UTC) From: Waiman Long To: Andrew Morton , Christoph Lameter , Pekka Enberg , David Rientjes , Joonsoo Kim , Johannes Weiner , Michal Hocko , Vladimir Davydov Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, cgroups@vger.kernel.org, Juri Lelli , Qian Cai , Waiman Long Subject: [PATCH v2 0/4] mm/slub: Fix sysfs circular locking dependency Date: Mon, 27 Apr 2020 19:56:17 -0400 Message-Id: <20200427235621.7823-1-longman@redhat.com> X-Scanned-By: MIMEDefang 2.79 on 10.5.11.12 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org v2: - Use regular cmpxchg() instead of x86-only try_cmpxchg() in patch 2. - Add patches 3 and 4 to fix circular locking dependency showing up at shutdown time. With lockdep enabled, issuing the following command to the slub sysfs files will cause splat about circular locking dependency to show up either immediately afterwards or at shutdown time. # echo 1 > validate # echo 1 > shrink This patchset fixes these lockdep splats by replacing slab_mutex with memcg_cache_ids_sem as well as changing some of the lock operations with trylock. Waiman Long (4): mm, slab: Revert "extend slab/shrink to shrink all memcg caches" mm/slub: Fix slab_mutex circular locking problem in slab_attr_store() mm/slub: Fix another circular locking dependency in slab_attr_store() mm/slub: Fix sysfs shrink circular locking dependency include/linux/memcontrol.h | 1 + include/linux/memory_hotplug.h | 2 + mm/memcontrol.c | 5 ++ mm/memory_hotplug.c | 5 ++ mm/slab.h | 1 - mm/slab_common.c | 37 ------------- mm/slub.c | 98 +++++++++++++++++++++++++++++----- 7 files changed, 99 insertions(+), 50 deletions(-) -- 2.18.1