[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <YUW0kJr1XoqCENhl@zacax395.localdomain>
Date: Sat, 18 Sep 2021 11:42:40 +0200
From: Fernando Ramos <greenfoo@....eu>
To: Sean Paul <sean@...rly.run>
Cc: dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org,
linux-doc@...r.kernel.org, amd-gfx@...ts.freedesktop.org,
intel-gfx@...ts.freedesktop.org, linux-arm-msm@...r.kernel.org,
freedreno@...ts.freedesktop.org, nouveau@...ts.freedesktop.org,
linux-renesas-soc@...r.kernel.org, linux-tegra@...r.kernel.org
Subject: Re: [PATCH 14/15] drm/amd: cleanup: drm_modeset_lock_all() -->
DRM_MODESET_LOCK_ALL_BEGIN()
On 21/09/18 01:17AM, Fernando Ramos wrote:
> > > +#include <drm/drm_drv.h>
> >
> > Top-level headers generally come above the driver headers. Also, now that I think
> > about this a bit more, all of the new includes in this set should probably be
> > for 'drm_modeset_lock.h' instead of 'drm_drv.h'.
>
> Ok. Let me try that.
Turns out that the DRM_MODESET_LOCK_ALL_*() macros expansion includes a call
to drm_drv_uses_atomic_modeset() which is defined in "drm_drv.h".
Thus, #include'ing <drm/drm_drv.h> cannot be avoided.
This makes me wonder...
1. "drm_drv.h" includes "drm_device.h", which includes "drm_mode_config.h",
which includes "drm_modeset_lock.h"
2. "drm_modeset_lock.h" defines DRM_MODESET_LOCK_ALL_*() which expands into
drm_drv_uses_atomic_modeset()
3. drm_drv_uses_atomic_modeset() is declared in "drm_drv.h"
There seems to be a circular dependency here.
We can try to fix this, but I suggest to do it in a different patch series.
Powered by blists - more mailing lists