Received: by 2002:a05:6358:bb9e:b0:b9:5105:a5b4 with SMTP id df30csp5267433rwb; Tue, 6 Sep 2022 23:15:11 -0700 (PDT) X-Google-Smtp-Source: AA6agR4EJ/eGPdHFGnKeY6x4m/WzHk2PeOptsrjJVv78dXISj/SQ5jhw9z/KZy238N44e9UQF8GJ X-Received: by 2002:a63:2341:0:b0:434:d9b8:cfdf with SMTP id u1-20020a632341000000b00434d9b8cfdfmr2060394pgm.446.1662531310801; Tue, 06 Sep 2022 23:15:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1662531310; cv=none; d=google.com; s=arc-20160816; b=lk+nkQfP6P7HCUeUiyCuui07ykCXo7BZO7m8cSTXYSX3wn4dSaxuyvdh8iSB4jP/h1 PdOdJ5mLCPmePbFGKNsiYqv/WB+tdjIz4BoD1syPuexmswmKLL2uPTZjSMZSCBlDpcpp uHPJeGcLMvB6TFEPkyJcsOhleSBjpVfLylw5xagHfRilevFk6R+H6++qXKvuGe/PuuXR STf2QNiw302oS0km0RS91hnGxMhEr5EVm0HLk/P08yK9JdoGVfZA8apYi65OuE+1420b 6fVsZoSc2TIJS+u8CUHgv/N4nPFKHQARCV5NmoOXDcB+ibgSwMcfHCSPTcAA6LzUw4O4 s+tw== 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:mail-followup-to:message-id:subject:cc:to:from:date :dkim-signature; bh=aHLnGYDFyf002uP87dLW7T4DlcNjggm7WzOBlYUHesM=; b=JAIDVt+eUSW1hPwuCyVR5eiU/aYON3O+hwlEZHLQxIHCyTXG0bUCgVDjLJ7WsW+HPY U0H15JP/s+1iBDDiH1Q4UJOt5zFhIn7bQUVlczbhqYChxgnrCPSt9SD7YWtdjGil/mBd MaWUYzdYO5KMZPj3gZZD1b5EOMR6FG5oBe4MpOrNjLxeLdxHpqLQJDBsvDntVEw/9y4t nmFyEMuRDp11gwhLtIi2CmHRjkEHnGsdZJ2KjwxVBxU6I+a680cE6qeHRNmzQDdQgkKa mFdWs90u7jddK/GY6DSswqHMbkirzgSJQxAdzjC0VMwHwLEiw9zdprGifiaiEoC3PkiB 8wQw== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@ffwll.ch header.s=google header.b=GYPPKJo4; 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 Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id r9-20020a170902c7c900b00174ea34822esi11119022pla.533.2022.09.06.23.14.59; Tue, 06 Sep 2022 23:15:10 -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=@ffwll.ch header.s=google header.b=GYPPKJo4; 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 Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229587AbiIGGKE (ORCPT + 99 others); Wed, 7 Sep 2022 02:10:04 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:58088 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229478AbiIGGJ6 (ORCPT ); Wed, 7 Sep 2022 02:09:58 -0400 Received: from mail-ej1-x632.google.com (mail-ej1-x632.google.com [IPv6:2a00:1450:4864:20::632]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id D815013E31 for ; Tue, 6 Sep 2022 23:09:50 -0700 (PDT) Received: by mail-ej1-x632.google.com with SMTP id r18so756240eja.11 for ; Tue, 06 Sep 2022 23:09:50 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ffwll.ch; s=google; h=in-reply-to:content-disposition:mime-version:references :mail-followup-to:message-id:subject:cc:to:from:date:from:to:cc :subject:date; bh=aHLnGYDFyf002uP87dLW7T4DlcNjggm7WzOBlYUHesM=; b=GYPPKJo4fKfKSPYIOWUbod1cc/fB+KpTWhNhVJlIsS4asZ3qAyGTIoDRxrFaQ+UyyI 0FiEqDMS1NzZMTZIrLLdHa9s+fneFH6yuumFd2SsH/JuHVlz7PgFwUDkM8Sy0CpQTeRv uCw6qbXGUhD2sVDH57m5QgMxLAbjfet1rWc3o= X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=in-reply-to:content-disposition:mime-version:references :mail-followup-to:message-id:subject:cc:to:from:date :x-gm-message-state:from:to:cc:subject:date; bh=aHLnGYDFyf002uP87dLW7T4DlcNjggm7WzOBlYUHesM=; b=rSFe84MHje3O8WKmW+AQV2lrNNkBsesBFaWHnOC4dHNUsG4QAQT+9pFChhutstLeuw uQvbg8sDNYC0sddg+IMn1GQB0PpgMEZy4SXepMwdOUjh0GR0/2E2R4n6ST5BlQUg6WyP XVEF3ZcNlIcO6Fts0f4X7vMI5HJtHmcQyDAx57QEo1kIN6g2y5eAUy91qD9x7KglYxls 9I2HkVYQTZY+7qzhF2mvSWR1xr/oOGOYdqV0TXZjCCm9CJMcGB25QDm06CDJtcgusX1z qIqtTMhMyBCdwHgcCTs+EM/Vhd0KhSFTxb7DE1qZtgM2Y+oqUHdkDSx8cG9bttbAd9Ju 0RNw== X-Gm-Message-State: ACgBeo0rUND5PmcNNDymkqrAnNqugKVfQCI0hOv5+JDgBII2EteCSIML 3EfN/HN3OIj/IGdHWZUpIT/ivA== X-Received: by 2002:a17:907:7da8:b0:730:fdad:4af8 with SMTP id oz40-20020a1709077da800b00730fdad4af8mr1275966ejc.401.1662530989455; Tue, 06 Sep 2022 23:09:49 -0700 (PDT) Received: from phenom.ffwll.local (212-51-149-33.fiber7.init7.net. [212.51.149.33]) by smtp.gmail.com with ESMTPSA id ez19-20020a056402451300b0043df042bfc6sm9770073edb.47.2022.09.06.23.09.48 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Tue, 06 Sep 2022 23:09:48 -0700 (PDT) Date: Wed, 7 Sep 2022 08:09:46 +0200 From: Daniel Vetter To: Jim Cromie Cc: jbaron@akamai.com, gregkh@linuxfoundation.org, dri-devel@lists.freedesktop.org, amd-gfx@lists.freedesktop.org, intel-gvt-dev@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org, daniel.vetter@ffwll.ch, seanpaul@chromium.org, robdclark@gmail.com, linux@rasmusvillemoes.dk, joe@perches.com Subject: Re: [PATCH v6 22/57] drm_print: condense enum drm_debug_category Message-ID: Mail-Followup-To: Jim Cromie , jbaron@akamai.com, gregkh@linuxfoundation.org, dri-devel@lists.freedesktop.org, amd-gfx@lists.freedesktop.org, intel-gvt-dev@lists.freedesktop.org, intel-gfx@lists.freedesktop.org, linux-kernel@vger.kernel.org, seanpaul@chromium.org, robdclark@gmail.com, linux@rasmusvillemoes.dk, joe@perches.com References: <20220904214134.408619-1-jim.cromie@gmail.com> <20220904214134.408619-23-jim.cromie@gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20220904214134.408619-23-jim.cromie@gmail.com> X-Operating-System: Linux phenom 5.18.0-4-amd64 X-Spam-Status: No, score=-1.7 required=5.0 tests=BAYES_00,DKIM_INVALID, DKIM_SIGNED,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE, T_SPF_TEMPERROR 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 On Sun, Sep 04, 2022 at 03:40:59PM -0600, Jim Cromie wrote: > enum drm_debug_category has 10 categories, but is initialized with > bitmasks which require 10 bits of underlying storage. By using > natural enumeration, and moving the BIT(cat) into drm_debug_enabled(), > the enum fits in 4 bits, allowing the category to be represented > directly in pr_debug callsites, via the ddebug.class_id field. > > While this slightly pessimizes the bit-test in drm_debug_enabled(), > using dyndbg with JUMP_LABEL will avoid the function entirely. > > NOTE: this change forecloses the possibility of doing: > > drm_dbg(DRM_UT_CORE|DRM_UT_KMS, "weird 2-cat experiment") > > but thats already strongly implied by the use of the enum itself; its > not a normal enum if it can be 2 values simultaneously. > > Signed-off-by: Jim Cromie Reviewed-by: Daniel Vetter I guess this would also be a good patch to apply already, so we reduce the patch set size somewhat? -Daniel > --- > include/drm/drm_print.h | 22 +++++++++++----------- > 1 file changed, 11 insertions(+), 11 deletions(-) > > diff --git a/include/drm/drm_print.h b/include/drm/drm_print.h > index 22fabdeed297..b3b470440e46 100644 > --- a/include/drm/drm_print.h > +++ b/include/drm/drm_print.h > @@ -279,49 +279,49 @@ enum drm_debug_category { > * @DRM_UT_CORE: Used in the generic drm code: drm_ioctl.c, drm_mm.c, > * drm_memory.c, ... > */ > - DRM_UT_CORE = 0x01, > + DRM_UT_CORE, > /** > * @DRM_UT_DRIVER: Used in the vendor specific part of the driver: i915, > * radeon, ... macro. > */ > - DRM_UT_DRIVER = 0x02, > + DRM_UT_DRIVER, > /** > * @DRM_UT_KMS: Used in the modesetting code. > */ > - DRM_UT_KMS = 0x04, > + DRM_UT_KMS, > /** > * @DRM_UT_PRIME: Used in the prime code. > */ > - DRM_UT_PRIME = 0x08, > + DRM_UT_PRIME, > /** > * @DRM_UT_ATOMIC: Used in the atomic code. > */ > - DRM_UT_ATOMIC = 0x10, > + DRM_UT_ATOMIC, > /** > * @DRM_UT_VBL: Used for verbose debug message in the vblank code. > */ > - DRM_UT_VBL = 0x20, > + DRM_UT_VBL, > /** > * @DRM_UT_STATE: Used for verbose atomic state debugging. > */ > - DRM_UT_STATE = 0x40, > + DRM_UT_STATE, > /** > * @DRM_UT_LEASE: Used in the lease code. > */ > - DRM_UT_LEASE = 0x80, > + DRM_UT_LEASE, > /** > * @DRM_UT_DP: Used in the DP code. > */ > - DRM_UT_DP = 0x100, > + DRM_UT_DP, > /** > * @DRM_UT_DRMRES: Used in the drm managed resources code. > */ > - DRM_UT_DRMRES = 0x200, > + DRM_UT_DRMRES > }; > > static inline bool drm_debug_enabled(enum drm_debug_category category) > { > - return unlikely(__drm_debug & category); > + return unlikely(__drm_debug & BIT(category)); > } > > /* > -- > 2.37.2 > -- Daniel Vetter Software Engineer, Intel Corporation http://blog.ffwll.ch