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 622B0C6FA8E for ; Thu, 2 Mar 2023 16:08:54 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id AF6FD6B0072; Thu, 2 Mar 2023 11:08:53 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id AA7546B0073; Thu, 2 Mar 2023 11:08:53 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 998286B0074; Thu, 2 Mar 2023 11:08:53 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0016.hostedemail.com [216.40.44.16]) by kanga.kvack.org (Postfix) with ESMTP id 8B83E6B0072 for ; Thu, 2 Mar 2023 11:08:53 -0500 (EST) Received: from smtpin22.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay03.hostedemail.com (Postfix) with ESMTP id 6369CA0953 for ; Thu, 2 Mar 2023 16:08:53 +0000 (UTC) X-FDA: 80524441746.22.8E290BB Received: from mail-yw1-f173.google.com (mail-yw1-f173.google.com [209.85.128.173]) by imf09.hostedemail.com (Postfix) with ESMTP id 95CAB14001B for ; Thu, 2 Mar 2023 16:08:50 +0000 (UTC) Authentication-Results: imf09.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=c68m6eik; spf=pass (imf09.hostedemail.com: domain of surenb@google.com designates 209.85.128.173 as permitted sender) smtp.mailfrom=surenb@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1677773330; 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:dkim-signature; bh=o4oQ31BBWd17/OrBmaIYzd49tP3Dix54xt4VYG6efag=; b=0jplaPd/T8oD2vCXPfiFWfVGHb9fjc9UVQv+6lH4ASuNEvaoNraPdq0ZhDBkCBfRy0mkQ/ 8GwNHhVcR3EkmbEHPoJx9QZl0dzRnGrbC1+vcberJtI76h8SDo0ySE7p1Mxo2bCTzHTym5 FIIKn8HDqhMoWvjXJ4UAEltbio3y26M= ARC-Authentication-Results: i=1; imf09.hostedemail.com; dkim=pass header.d=google.com header.s=20210112 header.b=c68m6eik; spf=pass (imf09.hostedemail.com: domain of surenb@google.com designates 209.85.128.173 as permitted sender) smtp.mailfrom=surenb@google.com; dmarc=pass (policy=reject) header.from=google.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1677773330; a=rsa-sha256; cv=none; b=zQVlXtch9wHyyssR2VZXG0+3OBbjmSt4DlWAPW5+I4CXO3Foo1zlMY5ohmvzAs7j3pLtS5 GtJIbGqMUS1hMMi6zTtsdzVsugFoo9x4nWj9w7aTgTqr6CWjQuX0TyEX1SS/igf7BjYloK VSE4XQx+i3Hi8ISvxCPCxrR8lvyrq/0= Received: by mail-yw1-f173.google.com with SMTP id 00721157ae682-536cd8f6034so435338057b3.10 for ; Thu, 02 Mar 2023 08:08:50 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; t=1677773329; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=o4oQ31BBWd17/OrBmaIYzd49tP3Dix54xt4VYG6efag=; b=c68m6eik+53s5ghZ8Wk6fDeh16+MIGLL2unfAA/ShiTQX81DA+PrcE8XnLQGzZCvZQ vN2XPVLbn1wfC/8NCIubij0nUZJqxKcCmBxWTOn6qAUtuflqTF9mZvIdkS3e3c0vzbH4 qsMNWAQtrEFDCDscPFpvLxjJdM4HlDeWrxdj8WSt1tlECtIHKD1+HqjwILLeSnLzHibu bAOXTvREbnpopYu1ry3LZ8SS4rFApGoN7zpEEmt/iN5oxzI/PXgiH5odoJEZJ656yeRH /8tViM5OehqWujUVRORIpO0V2vnIVAPeaDw2AhQ8WpgPomB5qvQZvmUB/kQ0Db9oEprd zqMw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; t=1677773329; h=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=o4oQ31BBWd17/OrBmaIYzd49tP3Dix54xt4VYG6efag=; b=6JfJHQIYpxro9C3BvXEyrntGc5e8Tkxh/HjON7AYkj8NAdl77uQriF1C0qTiGjB62g UyiKzoGNhsF8ItnkwHvwyhGiizKyJOhrVpIg1wxPaHVIxnMnQVH3nQzUE61oyqZWOf94 rj6MI2LCzC2kmgEEiaREVVaxC/92ahKd0TZTaniJaI9I3KvffFobw2unXom7OcG9UY+2 7Lz3sH8KXuDL+q+sFrwP4Q7qvOFICuvg0HEBj6xaWPax5vkB2C4k26pmqCT6xa/O/9rC GgHiaUgc4q81826+E7ujYum9XxeFyukB3E4MhHjOlb2ECXzebvD2l87gopzs1RKpOohr Cm/g== X-Gm-Message-State: AO0yUKXDQtSS7y2Sg0iSB7E9Wmv6ZPVqO6K28R3gc+vcnfU3ttrYmeHV /rICm3wdgCx3KKeT1+R9fgLm1eDyWQWydG65CzVoSg== X-Google-Smtp-Source: AK7set8k2bnR4c69h4GFdeOlJ4iXt43r+FFbCpo8zSPi+823yfuAQIu8hrDp4KyWpc4vzcJgN/+M6QusrqrGoKPfgPI= X-Received: by 2002:a81:ac16:0:b0:536:4194:e6eb with SMTP id k22-20020a81ac16000000b005364194e6ebmr6615295ywh.0.1677773329554; Thu, 02 Mar 2023 08:08:49 -0800 (PST) MIME-Version: 1.0 References: <20230301193403.1507484-1-surenb@google.com> In-Reply-To: From: Suren Baghdasaryan Date: Thu, 2 Mar 2023 08:08:38 -0800 Message-ID: Subject: Re: [PATCH 1/1] psi: remove 500ms min window size limitation for triggers To: Michal Hocko Cc: tj@kernel.org, hannes@cmpxchg.org, lizefan.x@bytedance.com, peterz@infradead.org, johunt@akamai.com, keescook@chromium.org, quic_sudaraja@quicinc.com, cgroups@vger.kernel.org, linux-mm@kvack.org, linux-kernel@vger.kernel.org Content-Type: text/plain; charset="UTF-8" X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 95CAB14001B X-Stat-Signature: 3npm8yz9e7dodezb6ccur64uex1rwzcd X-HE-Tag: 1677773330-332703 X-HE-Meta: U2FsdGVkX19yLDT3PHG1GWpkrm+wRjrD2K1WS94N0JlC53v5noQgmkTACslRen0N3Z1nv5k9b44GGEPO9CbmPsl4vMZYADkzlYRufB1zPZL0tk9PSWLjNqIEC8PA2pcYxlUMl+QmHTyotC9oQ0G0L7/Pe/Qzp9fYJ3/MkhLSatd/PxvRQ0T0Xfudn2j41usJ8pbhyrS6QiY6R8nChgSi//St7e3JXCkWo/eLou4Ke1+M1yhLFNK/WrGHTNOGtgxisgN5LVKwUu4DLboakrItO+u5ENC/iaAj8Z4MdFsI2SJEImWyzI+v4vjYNbQ3wwF/w5J6wMV1DRrSOPHD0erTFEUDtgiNU6FMGkPlpp4VRCxYrn88ud2HJKeegr04rNn/PRrHuOlR0//X7vj7904/aKVZvvzCmlvkYcc9o0LKbKvlYE7ulJVlPkivGEDFRk4zfGsEMtrGtnUwfL4Ng+uTld5tBb6Nq4ZYuILDXEnK1B6Jz2KD2l5j2PXze3bB4qmYV3nu/0hVojZV5KSZhafSNFuTj8WQ2bX7/e4JDAlJtpoxbhL1CrgiosD3i2eZmN8Q4ObZZSB/TGBFnGccvRMByPI47ybidCbbE0ymEBD/KHFG66ekaowiyV/g3du/Vjudi6hjvDxv4hD5tZiKYjNGP1OREhfBrjo6vLHTk7R3vajrKzioHkfdc1l1iga0hPkTnO2XmxJfOCNRzs3YqRJBA1lbGQAmE/VO9ul/5aopyJLt4Xnu6lVztUyRKkXZQfwONA+h9aLyEv4opxwccljRUKNm0WrsEUG627tu8f1RgBPcqFpqz2oLBPTohawraunuqOAlRmrqITXfRkpKJUWoox17sRRfGbindh7lUDiHtqcQRfMVWCzp2fHQ7dRsEg2acuL8quHAET9zh3vpvnpGUF3r0B1mc67eMoSEKoWmE330yofO5+ehuQxCpXxMJDFh4DxVciH3Dba43UIwJF9 HTDJyphG Xlno/TVS4ocevVU3sVctjRNAIYjecyaKWb/aODxsm9Uo65UrUCBARJyfNoBZXGiwetEPS9a3Qj9ehwfwsbneC88PMZBV2TdlwA9E2zA5kJwdulHNF8Lb2hr6NYIe1KXPxQU+C6aPNd9wdRxlJOreOuHslF5Eey/lUusBtNbKtFBWmVMgiQ5vcJMP04yO0uLdajmNw7OowvXBcRWqQP1ngOwtv2NuwULHWeKND9FqvqcxHTTzUYj6Ugnn03z8EJ+ZC1jceVMhu7UqJoAY8bQmrcUX0Snr9kgtEc1QYPM2TxivFjzS8SpSpO1v39LHX1+UaDcgBIyJzuWh+ATA1c7ZUQolIcLnvjo1/XxpsToHItYqmdY2t68MBpouj/XYINmPv/GObsRReOSR2felr5WvIDX73qTLwpF6uwI3hS9or2W7ybnS2hRhqJbQmNYkWHbRvnFzh X-Bogosity: Ham, tests=bogofilter, spamicity=0.000125, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Thu, Mar 2, 2023 at 5:58 AM Michal Hocko wrote: > > On Wed 01-03-23 11:34:03, Suren Baghdasaryan wrote: > > Current 500ms min window size for psi triggers limits polling interval > > to 50ms to prevent polling threads from using too much cpu bandwidth by > > polling too frequently. However the number of cgroups with triggers is > > unlimited, so this protection can be defeated by creating multiple > > cgroups with psi triggers (triggers in each cgroup are served by a single > > "psimon" kernel thread). > > Instead of limiting min polling period, which also limits the latency of > > psi events, it's better to limit psi trigger creation to authorized users > > only, like we do for system-wide psi triggers (/proc/pressure/* files can > > be written only by processes with CAP_SYS_RESOURCE capability). This also > > makes access rules for cgroup psi files consistent with system-wide ones. > > Add a CAP_SYS_RESOURCE capability check for cgroup psi file writers and > > remove the psi window min size limitation. > > > > Suggested-by: Sudarshan Rajagopalan > > Link: https://lore.kernel.org/all/cover.1676067791.git.quic_sudaraja@quicinc.com/ > > Signed-off-by: Suren Baghdasaryan > > Acked-by: Michal Hocko > > with this to fix > [...] > > @@ -1278,8 +1277,7 @@ struct psi_trigger *psi_trigger_create(struct psi_group *group, > > if (state >= PSI_NONIDLE) > > return ERR_PTR(-EINVAL); > > > > - if (window_us < WINDOW_MIN_US || > > - window_us > WINDOW_MAX_US) > > + if (window_us <= 0 || window_us > WINDOW_MAX_US) > > return ERR_PTR(-EINVAL); > > window_us is u32 sp the check for <= 0 doesn't make any sense. Completely missed that. Will change to == 0 and post the new version. window_us is later multiplied by NSEC_PER_USEC and then divided by UPDATES_PER_WINDOW(10), so even the smallest value of 1 still results in a positive poll_min_period. I think we should be fine with that check. Thanks! > > > > > /* Check threshold */ > > -- > > 2.40.0.rc0.216.gc4246ad0f0-goog > > -- > Michal Hocko > SUSE Labs