Re: [PATCH v4 4/7] drm: nova: Add a GPU info ioctl

Alistair Popple <[email protected]>
Newsgroups org.kernel.vger.rust-for-linux,dev.linux.lists.nova-gpu,org.freedesktop.lists.dri-devel,org.kernel.vger.linux-kernel
Message-ID <[email protected]>
On 2026-08-25 at 06:04 +1000, John Hubbard <[email protected]> wrote...
> On 8/24/26 12:34 PM, Danilo Krummrich wrote:
> > On Tue Aug 11, 2026 at 7:06 AM CEST, Alistair Popple wrote:
> >>  include/uapi/drm/nova_drm.h    | 27 +++++++++++++++++++++++++++
> > 
> > Btw. I think it would be nice to have project to play around with and write
> > tests directly on top of the uAPI before we can run the big test suites.
> 
> Yes, I think it's reasonable to do something like that. Seeing a new API
> from both sides, caller and callee, is always illuminating during review,
> for one thing.

Yes, I had meant to do this so thanks for the reminder.
You can of course see the other side of the API here:
https://gitlab.freedesktop.org/mesa/mesa/-/merge_requests/43352

But that's a user of the UAPI rather than a tester of it which makes it hard to
exercise everything or specific parts of the API. I did actually end up writing
my own standalone test case for these, similar to [1] but never got around to
tidying it up and posting it. Looking at [1] it seems reasonable as a simple
stand-alone test so I will do that ahead of the next revision for this series.

> > 
> > When I implemented the VM_BIND uAPI for nouveau I used IGT for this (but didn't
> > enjoy it too much). It turned out to be very useful to test and benchmark the
> > implementation before being able to complete VK CTS.
> > 
> > When I sent the first nova-drm skeleton, I also submitted [1]; maybe we can
> > extend this further accordingly?
> > 
> > I'm also open for other ideas, but I'd really like to have something like this
> > as we develop nova-drm.
> > 
> > [1] https://gitlab.freedesktop.org/dakr/drm-test
> 
> I was thinking about where this sort of thing should go, and this
> location seems as good, or slightly better than the main alternatives,
> to get started anyway.
> 
> Alternatives include:
> 
> 1) The kernel's kselftests (tools/testings/selftests). These are
> helpful in many cases, but some minor issues include:

Yeah, I don't think these style of tests belong in kselftests if only because
they're never going to be self-contained as at a minimum they will require
specific HW. It might make sense for unit-test style things, but I (think)
Rust-for-Linux already has that covered.

>     a) Oddly tight coupling to kernel code, even though the whole
>        point of these is to exercise the kernel from user space.
>        (Otherwise, these days one would use KUnit.) I've personally
>        working on mitigating the coupling-induced problems and 
>        ran into other, bigger problems along the way, such as:
> 
>    b) Confused build system and an arguably wrong way of invoking
>       the tests (from Make(1) !).
> 
> 2) Some other github-like location to host user space tests for
>    nova. The idea is, do we want to set up a well-known location
>    that people should keep updated? Or let a thousand github
>    small test sites bloom? 

We obviously can't stop a thousand small test sites blooming if people create
them, but I think it would be good to establish a well-known location for core
Nova developers to contribute to at least.

> thanks,
> -- 
> John Hubbard
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.