Re: [igt-dev] [PATCH i-g-t 1/6] lib/igt_vmwgfx: Add vmwgfx device

Daniel Vetter
2018-10-11T09:46:41Z

On Thu, Oct 11, 2018 at 12:11:23PM +0300, Petri Latvala wrote:
> On Thu, Oct 11, 2018 at 11:01:48AM +0200, Daniel Vetter wrote:
> > On Wed, Oct 10, 2018 at 05:20:59PM -0700, Deepak Rawat wrote:
> > > Add DRIVER_VMWGFX to represent vmwgfx device for running igt tests.
> > >
> > > v2: Don't remove second virtio_gpu
> > >
> > > Signed-off-by: Deepak Rawat <drawat@vmware.com>
> > > ---
> > > lib/drmtest.c | 8 ++++++++
> > > lib/drmtest.h | 3 +++
> > > 2 files changed, 11 insertions(+)
> > >
> > > diff --git a/lib/drmtest.c b/lib/drmtest.c
> > > index fee9d33a..9d013a00 100644
> > > --- a/lib/drmtest.c
> > > +++ b/lib/drmtest.c
> > > @@ -105,6 +105,11 @@ bool is_i915_device(int fd)
> > > return __is_device(fd, "i915");
> > > }
> > >
> > > +bool is_vmwgfx_device(int fd)
> > > +{
> > > + return __is_device(fd, "vmwg");
> > > +}
> > > +
> > > static bool has_known_intel_chipset(int fd)
> > > {
> > > struct drm_i915_getparam gp;
> > > @@ -206,6 +211,7 @@ static const struct module {
> > > { DRIVER_VGEM, "vgem" },
> > > { DRIVER_VIRTIO, "virtio-gpu" },
> > > { DRIVER_VIRTIO, "virtio_gpu" },
> > > + { DRIVER_VMWGFX, "vmwgfx" },
> > > {}
> > > };
> > >
> > > @@ -348,6 +354,8 @@ static const char *chipset_to_str(int chipset)
> > > return "virtio";
> > > case DRIVER_AMDGPU:
> > > return "amdgpu";
> > > + case DRIVER_VMWGFX:
> > > + return "vmwgfx";
> > > case DRIVER_ANY:
> > > return "any";
> > > default:
> > > diff --git a/lib/drmtest.h b/lib/drmtest.h
> > > index 949865ee..0213fb51 100644
> > > --- a/lib/drmtest.h
> > > +++ b/lib/drmtest.h
> > > @@ -43,6 +43,7 @@
> > > #define DRIVER_VGEM (1 << 2)
> > > #define DRIVER_VIRTIO (1 << 3)
> > > #define DRIVER_AMDGPU (1 << 4)
> > > +#define DRIVER_VMWGFX (1 << 5)
> >
> > This seems not needed? For pure generic kms tests I think it'd be great if
> > we don't have to sprinkle driver-specific checks all over. Which you seem
> > to achive in your series here.
> >
> > So not clear why this here is needed?
>
>
> Loading the .ko needs the name in this array:
>
> > > @@ -206,6 +211,7 @@ static const struct module {
> > > { DRIVER_VGEM, "vgem" },
> > > { DRIVER_VIRTIO, "virtio-gpu" },
> > > { DRIVER_VIRTIO, "virtio_gpu" },
> > > + { DRIVER_VMWGFX, "vmwgfx" },

I guess I don't quite understand why we do that then. Adding driver flags
for every kms driver under the sun isn't a maintainable thing going
forward. And there's definitely people using igt who don't have their
special flag+module autoloader.

vgem and vkms needs it, but that's about it. Everything else sounds like
papering over CI infrastructure mishaps to me ...
-Daniel

>
>
>
> --
> Petri Latvala
>
>
>
>
> > -Daniel
> >
> > > /*
> > > * Exclude DRVER_VGEM from DRIVER_ANY since if you run on a system
> > > * with vgem as well as a supported driver, you can end up with a
> > > @@ -80,6 +81,8 @@ void igt_require_intel(int fd);
> > >
> > > bool is_i915_device(int fd);
> > >
> > > +bool is_vmwgfx_device(int fd);
> > > +
> > > /**
> > > * do_or_die:
> > > * @x: command
> > > --
> > > 2.17.1
> > >
> > > _______________________________________________
> > > igt-dev mailing list
> > > igt-dev@lists.freedesktop.org
> > > https://lists.freedesktop.org/mailman/listinfo/igt-dev
> >
> > --
> > Daniel Vetter
> > Software Engineer, Intel Corporation
> > http://blog.ffwll.ch
> > _______________________________________________
> > igt-dev mailing list
> > igt-dev@lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/igt-dev

--
Daniel Vetter
Software Engineer, Intel Corporation