Received: by 2002:a05:7412:37c9:b0:e2:908c:2ebd with SMTP id jz9csp2860122rdb; Fri, 22 Sep 2023 10:12:12 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG+jerBuDKSSvXvp2T1bcXcKy3dWam+4lwQy2jNxV6um2ay6Jo6jeAfcroGcVoi+hqFHnHF X-Received: by 2002:a17:902:e807:b0:1bf:728:7458 with SMTP id u7-20020a170902e80700b001bf07287458mr118085plg.58.1695402732152; Fri, 22 Sep 2023 10:12:12 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1695402732; cv=none; d=google.com; s=arc-20160816; b=cnr0DnkJ0F+ZgrRfooXQ7Y6Nd0AoO01KuIHBSJ+e9SXp4Me5GAvkLYX4xz0TZ1TXmV 6J2bF1HFYF5/sCUHmjTr26OLkvVv7UPFJaIno9HTq2SROdaTvgVz+Qys7JNBG+Lz4Kyg kfW2+ByaOgkI1TvOFgOk3GWs6KxlH3l6+MFUhvlgRrj4gBxbTeoZ446McdPfRiY8w3M+ hZxS5rxOUk06D664K12jh4dkdApBi9yHWi7nv5LcfUGkVvWE/wEJdSM/QpY3EVap+/Pr RjCWdNGB38hC/NH5/Z47WPXg17ge7iNnFi7u0G9hJ26Ww1guuDehbvadpp6nyUaWhVgh YuPg== 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 :organization:references:in-reply-to:message-id:subject:cc:to:from :date:dkim-signature; bh=UnOYD/TC/6EVfdsAth8jvefayhPLeATGo8BGP1xzxSc=; fh=stmSkAvucvK5TkBdnwJhqOsIY+3LxKSNU/hD0a8xyRw=; b=MeIlh1GjirMYsmDYyLs5/xnFqAK1/MNmBFg3vY9hS/pRbiuRJ/t/cyo99i4kafy2iM jHrSHZdLWmbJP+snreveEpAwXBvHvHNja8ZOdD+EQ0hGL0LcVaDXSiASlGhAQ0IrQkhB QaygM9v9aGhHHIwxCKmWXKNEI5fVzkunsW+eZovwBwTaS9R4spolZHBdSQ+ZiGTfLBat rDeABUi1XIiBdpsDmKo2eMdRZuG0CsnMmtUnGxtrZZ25KPYDbaE56/bW2XBP6eRziWqt JU0XugUNaQImZgTGC0R7yZWfMdw8plbs7B61JNO+sPvcvsbc+QA/CsMUGd0XBaZ4OZU6 nMew== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@collabora.com header.s=mail header.b=JiYUUHY3; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=collabora.com Return-Path: Received: from lipwig.vger.email (lipwig.vger.email. [2620:137:e000::3:3]) by mx.google.com with ESMTPS id o3-20020a170902d4c300b001bdf71d52b0si4495235plg.456.2023.09.22.10.12.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Fri, 22 Sep 2023 10:12:12 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) client-ip=2620:137:e000::3:3; Authentication-Results: mx.google.com; dkim=pass header.i=@collabora.com header.s=mail header.b=JiYUUHY3; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:3 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=collabora.com Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by lipwig.vger.email (Postfix) with ESMTP id B810182C2D33; Fri, 22 Sep 2023 04:58:54 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at lipwig.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S233977AbjIVL6z (ORCPT + 99 others); Fri, 22 Sep 2023 07:58:55 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:33026 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S233921AbjIVL6x (ORCPT ); Fri, 22 Sep 2023 07:58:53 -0400 Received: from madras.collabora.co.uk (madras.collabora.co.uk [46.235.227.172]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 80C001B2 for ; Fri, 22 Sep 2023 04:58:46 -0700 (PDT) Received: from localhost (unknown [IPv6:2a01:e0a:2c:6930:d3ea:1c7:41fd:3038]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256) (No client certificate requested) (Authenticated sender: bbrezillon) by madras.collabora.co.uk (Postfix) with ESMTPSA id 6520B6607298; Fri, 22 Sep 2023 12:58:44 +0100 (BST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=collabora.com; s=mail; t=1695383924; bh=m/nPO3u2dtkBOwJtWh5MiRmfd1HuFw6fSZbWZsf3Wv0=; h=Date:From:To:Cc:Subject:In-Reply-To:References:From; b=JiYUUHY31kwZsSWTaJSvOhWIjm7sm1VXUhtIKi9S5m+lKJPDFPoo4LhF9Lc/4BJqG fI8T9NF+owxbdmgbZYsUDGNY5Y5jCJHYc4LkEHok5cLTtvNw1ZGaobR8ttPdneOZcr LqFJnTm6DY2q+Jp82tEVIU/Ex7Tzhv3mDDWvA/8GzhtiDskyIOxQ5Z+uqnbJhb1TLe kM8tURuEBXloVJis/5hpZTGoF2rpKJdiXMF9LEXhnfIeEbhTFZipFG3brEk52/+01S 1ukjKdPXTWPAUqamteWN7+ikfwVfdcQqCBWzoA/tOyzsqrUprYATWizD3gwzriQAwU xLvVDQEV3uPUg== Date: Fri, 22 Sep 2023 13:58:42 +0200 From: Boris Brezillon To: Danilo Krummrich Cc: airlied@gmail.com, daniel@ffwll.ch, matthew.brost@intel.com, thomas.hellstrom@linux.intel.com, sarah.walker@imgtec.com, donald.robson@imgtec.com, christian.koenig@amd.com, faith.ekstrand@collabora.com, dri-devel@lists.freedesktop.org, nouveau@lists.freedesktop.org, linux-kernel@vger.kernel.org Subject: Re: [PATCH drm-misc-next v4 6/8] drm/gpuvm: add drm_gpuvm_flags to drm_gpuvm Message-ID: <20230922135842.242c865d@collabora.com> In-Reply-To: <20230920144343.64830-7-dakr@redhat.com> References: <20230920144343.64830-1-dakr@redhat.com> <20230920144343.64830-7-dakr@redhat.com> Organization: Collabora X-Mailer: Claws Mail 4.1.1 (GTK 3.24.38; x86_64-redhat-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-0.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI, SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED autolearn=unavailable autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lipwig.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (lipwig.vger.email [0.0.0.0]); Fri, 22 Sep 2023 04:58:55 -0700 (PDT) On Wed, 20 Sep 2023 16:42:39 +0200 Danilo Krummrich wrote: > +/** > + * enum drm_gpuvm_flags - flags for struct drm_gpuvm > + */ > +enum drm_gpuvm_flags { > + /** > + * @DRM_GPUVM_USERBITS: user defined bits > + */ > + DRM_GPUVM_USERBITS = (1 << 0), Nit: I tried declaring driver-specific flags, and I find this counter-intuitive. You basically end up with something like: enum my_gpuvm_flags { MY_FLAG_X = DRM_GPUVM_USERBITS, MY_FLAG_Y = DRM_GPUVM_USERBITS << 1, }; instead of the usual enum my_gpuvm_flags { MY_FLAG_X = BIT(0), MY_FLAG_Y = BIT(1), }; pattern. Another issue I see coming is if we end up adding more core flags and drivers start falling short of bits for their own flags. This makes me wonder if we shouldn't kill this notion of USER flags and let drivers store their flags in some dedicated field, given they're likely to derive drm_gpuvm and drm_gpuva with their own object anyway. > +}; > +