Received: by 2002:a6b:fb09:0:0:0:0:0 with SMTP id h9csp2759536iog; Mon, 27 Jun 2022 02:16:27 -0700 (PDT) X-Google-Smtp-Source: AGRyM1sQyYbdqGcqqD2eiI822hJSbTPI/M3mot4c28C9KjTFwU/1rqtJ5uIaYB1lifnkzlnhHLWS X-Received: by 2002:a65:4587:0:b0:40d:2136:8690 with SMTP id o7-20020a654587000000b0040d21368690mr11757217pgq.402.1656321386772; Mon, 27 Jun 2022 02:16:26 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1656321386; cv=none; d=google.com; s=arc-20160816; b=ausHGtX4a+9eVvHJItxDbWjBUfOO+qlX5d7LIb5FKQIhcm7kZLaupXfwBVcuFbpuOH /xf8SPhMwFroRjuu2fa9HLQRvDucT3JxM6pVT+6xJ2h87/asWpIGkho7Dp7pRhz0/cdO LJu2yNYgbg1O0+oPHWj8Pg9LB52AEZ9eKByG5647D5whSx80CL3KrSUFwQ5muTsTL/PB cW7qfsg2npXH/ITBXMhlaKI7mMpkjcDTd9wnNvGV+l4+VkdDudIwLyHmjRDrW/vt+UKE NVHvw9OW1bj8c0CP1708Wm/F14ABM/oKMyqbh343QcT69bVNK/4zki1DgTzu2Wu0YMAl MPvw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:sender:dkim-signature; bh=szaOjwym60f/8LOXYqQ6hITRb/YVPZeOicD4V048pqo=; b=KMxKYUI/GsJ9T26n3rbDgL91vQscOKooyFpKKwJ3gP/qKdiPK8aOAoAT647G0CyE1+ 8/b4L4FpheQO+KPHSRfNt+RbOCN6VNON3Agfedaq4p75klu0bZo6r3ei9snoXM/SmS3e 0K9I+kP/3Y1ErKsd4Jf0TbK8GCrGVzVZr26PjwX2UpcRA35p/IlSLN7zdwSisOou9Fcu ufefyRJSxn4CVr/cfs00fk9EMKHi6W4m0MzM4Y+4pjHt4JJbwVZQd+xp/LjXzBqO0hWp kqkRsDbwWBkQKWoZqCyXJrefeZuWDGB33ADd95VxvM2WdYrfXUdqeizpHNLa7vsEQN7F RsNA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=NJafOd4q; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id b4-20020a170903228400b0015cbb6e943fsi18091875plh.299.2022.06.27.02.16.15; Mon, 27 Jun 2022 02:16:26 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=NJafOd4q; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232824AbiF0IcM (ORCPT + 99 others); Mon, 27 Jun 2022 04:32:12 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59824 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232630AbiF0IcL (ORCPT ); Mon, 27 Jun 2022 04:32:11 -0400 Received: from mail-pj1-x102d.google.com (mail-pj1-x102d.google.com [IPv6:2607:f8b0:4864:20::102d]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 9801C6260; Mon, 27 Jun 2022 01:32:10 -0700 (PDT) Received: by mail-pj1-x102d.google.com with SMTP id g20-20020a17090a579400b001ed52939d72so3257096pji.4; Mon, 27 Jun 2022 01:32:10 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=sender:date:from:to:cc:subject:message-id:references:mime-version :content-disposition:in-reply-to; bh=szaOjwym60f/8LOXYqQ6hITRb/YVPZeOicD4V048pqo=; b=NJafOd4qjIKqtOlocUHdmBBRJMZTiIDE9Gy+KP+BfbC2M2gFw1riyA4lEBuE/dAWix WhPNkbovuagZbKm0nCuWosFUIsHnS9h/OpK2eCNetrkuNknRM/DvtwyF/voZgdmOMYBV wVmEcUjC2IzelVFnbDfH6uj/hrEK2lANiE7wxTkS+2R/C801GBOeMZttPJXx24mKNx+h domxFmIBXvWRVrN+OlIQgm+jRLZn1quwrObi1sECH07N1mCqNXEQ1QoKgHQ4NoC4CKnG ZDEAQp69z2lDMPLiVFfvnL6g/xd6NjDKSB7WJE1xfF3WqXeJjCeNUIZTF+aSdhdG5b7Y QLBQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:sender:date:from:to:cc:subject:message-id :references:mime-version:content-disposition:in-reply-to; bh=szaOjwym60f/8LOXYqQ6hITRb/YVPZeOicD4V048pqo=; b=f9lkKoXTyyNGYdg0JzZDMDJDZwb2hAvjJOYgwvvgTAt1oQ+vQ/XnehtPqOn9J6fENT nVSNdfi/+7QG+OxTTot72ZGchVgZYJCjr7juXVW3IPdYskCdWdGVYQq/wTDTt0dPDGea lRx4oYVxcopIdwr98wPtEFu2+9svLuHKFZ0y+ItdW/PisGKAEYo9zwlQkTBW6oFSz2pb cEQ/fcZaerVG/P0BAzv89MzJsGFab9YRdUyUYJcfyRubexD1ptLq3LhbdD5v8WSxqaMb qfwLiPKzn5zofTCSJ6cu+sJFxUG8AWhIFpZx7HCHNa5LIwctnn9RTlqhTRcI0+SkAvCy N9yA== X-Gm-Message-State: AJIora8bhnDTTGmmNRpORRakZJ1x5oUDPG6dvCjluVHoNpI0p6g6+GUO yxQfD2GX8conIzv4z96hdZw= X-Received: by 2002:a17:902:a505:b0:16b:7c53:9f02 with SMTP id s5-20020a170902a50500b0016b7c539f02mr4700268plq.19.1656318729985; Mon, 27 Jun 2022 01:32:09 -0700 (PDT) Received: from localhost ([121.167.227.144]) by smtp.gmail.com with ESMTPSA id u7-20020a17090a3fc700b001ecd3034b66sm8743744pjm.54.2022.06.27.01.32.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 27 Jun 2022 01:32:08 -0700 (PDT) Sender: Tejun Heo Date: Mon, 27 Jun 2022 17:32:06 +0900 From: Tejun Heo To: Zhang Qiao Cc: mingo@redhat.com, peterz@infradead.org, Juri Lelli , Vincent Guittot , lizefan.x@bytedance.com, hannes@cmpxchg.org, cgroups@vger.kernel.org, lkml , vschneid@redhat.com, dietmar.eggemann@arm.com, bristot@redhat.com, bsegall@google.com, Steven Rostedt , mgorman@suse.de Subject: Re: [Question] The system may be stuck if there is a cpu cgroup cpu.cfs_quato_us is very low Message-ID: References: <5987be34-b527-4ff5-a17d-5f6f0dc94d6d@huawei.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <5987be34-b527-4ff5-a17d-5f6f0dc94d6d@huawei.com> X-Spam-Status: No, score=-1.5 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_EF,FREEMAIL_FORGED_FROMDOMAIN,FREEMAIL_FROM, HEADER_FROM_DIFFERENT_DOMAINS,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE, SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hello, On Mon, Jun 27, 2022 at 02:50:25PM +0800, Zhang Qiao wrote: > Becuase the task cgroup's cpu.cfs_quota_us is very small and > test_fork's load is very heavy, the test_fork may be throttled long > time, therefore, the cgroup_threadgroup_rw_sem read lock is held for > a long time, other processes will get stuck waiting for the lock: Yeah, this is a known problem and can happen with other locks too. The solution prolly is only throttling while in or when about to return to userspace. There is one really important and wide-spread assumption in the kernel: If things get blocked on some shared resource, whatever is holding the resource ends up using more of the system to exit the critical section faster and thus unblocks others ASAP. IOW, things running in kernel are work-conserving. The cpu bw controller gives the userspace a rather easy way to break this assumption and thus is rather fundamentally broken. This is basically the same problem we had with the old cgroup freezer implementation which trapped threads in random locations in the kernel. So, right now, it's rather broken and can easily be used as an dos attack vector. Thanks. -- tejun