Received: by 2002:a05:6602:18e:0:0:0:0 with SMTP id m14csp529522ioo; Sat, 21 May 2022 06:16:04 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzcllUaXKBttyTh3TtUFqmuAVvlDw/55tfZ9OwgZrcNiS9+4smroSEuY7RDl9Mtc62gCIWx X-Received: by 2002:a17:907:e92:b0:6fa:8125:c92a with SMTP id ho18-20020a1709070e9200b006fa8125c92amr13330530ejc.45.1653138964217; Sat, 21 May 2022 06:16:04 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1653138964; cv=none; d=google.com; s=arc-20160816; b=evzrKaO9jABFAhGc7Q3RM1BGpNAmelaW85GZmNgHgzuupPCxAe7yVXmrVZ6oDyfRQb XzUWkkrvtpAPDbB6W095tMePUBMIdqkNbqFbM8ntaef6rSzi2MAP0zS6CBPvlIs9+hHv Jso2pD+mhqG22paLmD0mf4rjTWdsVoyyA9QvQGPOILCXez/4oQXjgfbEi1CS6K/7oy8R wvge1BR/TK6GWrXM77INSkPvgbo+w6dreVjgindSfsDBJS1gmfJ4UW0+Ue0d7irbcUph wqHQu9FyDKJ1uKqI20G1nzvlT0QQ5QNhZMt/jId4eIMwvqK72M9lx3WxgS7RmU7jItf9 tUfA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:cc:to:subject:message-id:date:from:in-reply-to :references:mime-version:dkim-signature; bh=FUaa/CsIoXFhGcqQomBYha0KA+E1xpoSdaSoOErgusY=; b=oNpX5FF2Tcw8I2rVc1DqIsgj/4eTi0M1oTDVRqeWyZc3B/murR8QcJV/oDb3Sp0R/l SaVb2ACPCdYMIOsO+F82/PCCiauYjzPxo7E75J/Bp+d/BFMYsqLyWmhrpcfj0Xje94CS tzqx65XWbfwIZZj5/i2gv+K7Vjytx/fwGBAjze/bnK9ty8/crS+vsnMvvHje8N+n/6VX ukWRCTUAKFKdC/F+yUFImErESNCRTQT6B1T34sn+hE/v3Il+cpZX/TFRjBH6/HsZjPYc ubXYrlFEaEbVRlU8PHxLRWWpUjhkXXefoYsHLYvmW4bfDj4C0MSA2dOjSfxZ1kkwjNUd YDOA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@google.com header.s=20210112 header.b=sCdCdZqI; 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=REJECT sp=REJECT dis=NONE) header.from=google.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id z21-20020a1709063a1500b006df76385ce8si5767156eje.392.2022.05.21.06.15.36; Sat, 21 May 2022 06:16:04 -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=@google.com header.s=20210112 header.b=sCdCdZqI; 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=REJECT sp=REJECT dis=NONE) header.from=google.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1351585AbiETQ0N (ORCPT + 99 others); Fri, 20 May 2022 12:26:13 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:41510 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1351588AbiETQZy (ORCPT ); Fri, 20 May 2022 12:25:54 -0400 Received: from mail-ej1-x633.google.com (mail-ej1-x633.google.com [IPv6:2a00:1450:4864:20::633]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id BEC1115FC3 for ; Fri, 20 May 2022 09:25:51 -0700 (PDT) Received: by mail-ej1-x633.google.com with SMTP id gi33so8073151ejc.3 for ; Fri, 20 May 2022 09:25:51 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20210112; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=FUaa/CsIoXFhGcqQomBYha0KA+E1xpoSdaSoOErgusY=; b=sCdCdZqIB2fM6C3/IMxJnyMHv4TxKGmIAEibbdWMh6FRbyWFI9mTEtryWRZ/NF+hj8 +Hx7jY6REjkdGsBVNwZIlsBAmuMkblQlokQialFoP0r3E+mVoJ7qGv/cmH27SzZH0S3E 6LoxOjAbQe+XtYP+GErjofpGVizVrpa3tPrxVs+yqbwCv/s6FVcSIgxyZOKq/Unt6sfK WQdH0KeBkcXcGDUDuTf8vX6Et8/Yi9aMTfXHIESge8rquWo4PxOSekV4zJTp0tvovfMW u6nTEG2KKtXD08jklErYVdrtfiimeio1bUddW1+xIx6fvJXFqqsrZgzOoeJe1LhQ/lrW jHfA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=FUaa/CsIoXFhGcqQomBYha0KA+E1xpoSdaSoOErgusY=; b=QPNI/yZxzUuDCU++3lceEuOw4lNcEOAyP3c2Jr2wYNZBjmmEk5GkaqLRxL27XRFLNV aGNUDyRhA/3v3lyFINupuZeb8jr/zNi3ZJCOhvZnWVoETDVIOAPe3AqyZdV2VR/6byL7 c+yZJM6tqlrbHCBhM9GYLCauOj8GzMI1Lgk5P/O7Tpz3XW4fn0roT/pfVQ1gkTGtzseF PwlmTYn0Kg3HFifm7Q2ATabcCCiZRGxAsY1Jf4qNMaESw5QFBnQtq6KYhBwPawDEWRX0 wI0+SdtVon+pFTY2I6LwPPvNz+R7dnRtqytgJaLK4TwhXCInxGqPTyBWDHnN+dZO7bJ3 O21Q== X-Gm-Message-State: AOAM531bUUzYZucbyfWDeF2st1D2Rcz7BJeP88QToT2bD3C6IKw13NXB Ph6v3/sykjyqEJVvFzSGTbq7h+5RqmoN1xLynbbrXw== X-Received: by 2002:a17:907:9813:b0:6fa:78b0:9be2 with SMTP id ji19-20020a170907981300b006fa78b09be2mr9585859ejc.159.1653063949975; Fri, 20 May 2022 09:25:49 -0700 (PDT) MIME-Version: 1.0 References: <20220510235653.933868-1-tjmercier@google.com> <3365cd1d750e84fedc8e75d646a77ffd85619d35.camel@ndufresne.ca> <81026ef07c1ce20f8673b75b17bab79a2b39c548.camel@ndufresne.ca> In-Reply-To: From: "T.J. Mercier" Date: Fri, 20 May 2022 09:25:38 -0700 Message-ID: Subject: Re: [PATCH v7 0/6] Proposal for a GPU cgroup controller To: Tejun Heo Cc: Nicolas Dufresne , Zefan Li , Johannes Weiner , Jonathan Corbet , Greg Kroah-Hartman , =?UTF-8?B?QXJ2ZSBIasO4bm5ldsOlZw==?= , Todd Kjos , Martijn Coenen , Joel Fernandes , Christian Brauner , Hridya Valsaraju , Suren Baghdasaryan , Sumit Semwal , =?UTF-8?Q?Christian_K=C3=B6nig?= , Benjamin Gaignard , Liam Mark , Laura Abbott , Brian Starkey , John Stultz , Shuah Khan , Daniel Vetter , John Stultz , Carlos Llamas , Kalesh Singh , Kenny.Ho@amd.com, =?UTF-8?Q?Michal_Koutn=C3=BD?= , Shuah Khan , kernel-team@android.com, cgroups@vger.kernel.org, linux-doc@vger.kernel.org, linux-kernel@vger.kernel.org, linux-media@vger.kernel.org, dri-devel@lists.freedesktop.org, linaro-mm-sig@lists.linaro.org, linux-kselftest@vger.kernel.org Content-Type: text/plain; charset="UTF-8" X-Spam-Status: No, score=-17.6 required=5.0 tests=BAYES_00,DKIMWL_WL_MED, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF, ENV_AND_HDR_SPF_MATCH,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS, T_SCC_BODY_TEXT_LINE,USER_IN_DEF_DKIM_WL,USER_IN_DEF_SPF_WL autolearn=unavailable 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 On Fri, May 20, 2022 at 12:47 AM Tejun Heo wrote: > > Hello, > > On Tue, May 17, 2022 at 04:30:29PM -0700, T.J. Mercier wrote: > > Thanks for your suggestion. This almost works. "dmabuf" as a key could > > work, but I'd actually like to account for each heap. Since heaps can > > be dynamically added, I can't accommodate every potential heap name by > > hardcoding registrations in the misc controller. > > On its own, that's a pretty weak reason to be adding a separate gpu > controller especially given that it doesn't really seem to be one with > proper abstractions for gpu resources. We don't want to keep adding random > keys to misc controller but can definitely add limited flexibility. What > kind of keys do you need? > Well the dmabuf-from-heaps component of this is the initial use case. I was envisioning we'd have additional keys as discussed here: https://lore.kernel.org/lkml/20220328035951.1817417-1-tjmercier@google.com/T/#m82e5fe9d8674bb60160701e52dae4356fea2ddfa So we'd end up with a well-defined core set of keys like "system", and then drivers would be free to use their own keys for their own unique purposes which could be complementary or orthogonal to the core set. Yesterday I was talking with someone who is interested in limiting gpu cores and bus IDs in addition to gpu memory. How to define core keys is the part where it looks like there's trouble. For my use case it would be sufficient to have current and maximum values for an arbitrary number of keys - one per heap. So the only part missing from the misc controller (for my use case) is the ability to register a new key at runtime as heaps are added. Instead of keeping track of resources with enum misc_res_type, requesting a resource handle/ID from the misc controller at runtime is what I think would be required instead. > Thanks. > > -- > tejun