[igt-dev] [PATCH i-g-t 2/2] lib/i915/gem_mman: mmap to the CPU instead of the GTT in some tests

Summers, Stuart stuart.summers at intel.com
Tue Nov 19 18:58:31 UTC 2019


On Tue, 2019-11-19 at 18:25 +0000, Chris Wilson wrote:
> Quoting Stuart Summers (2019-11-19 18:16:19)
> > Do not limit to the GTT for tests which are not specifically
> > testing
> > capability in the GTT.
> > 
> > Signed-off-by: Stuart Summers <stuart.summers at intel.com>
> > ---
> >  lib/i915/gem_mman.c            | 19 +++++++++++++++++++
> >  lib/i915/gem_mman.h            |  1 +
> >  tests/i915/gem_ctx_shared.c    | 20 +++++---------------
> >  tests/i915/gem_exec_schedule.c |  3 +--
> >  4 files changed, 26 insertions(+), 17 deletions(-)
> > 
> > diff --git a/lib/i915/gem_mman.c b/lib/i915/gem_mman.c
> > index a0e34aef..d37840f7 100644
> > --- a/lib/i915/gem_mman.c
> > +++ b/lib/i915/gem_mman.c
> > @@ -40,6 +40,25 @@
> >  #define VG(x) do {} while (0)
> >  #endif
> >  
> > +void *gem_mmap_host(int fd, uint32_t handle, uint64_t size,
> > unsigned prot)
> > +{
> > +       void *ptr;
> > +       uint32_t domain;
> > +
> > +       if (gem_has_mappable_ggtt(fd)) {
> > +               ptr = gem_mmap__gtt(fd, handle, size, prot);
> > +               domain = I915_GEM_DOMAIN_GTT;
> > +       } else {
> > +               ptr = gem_mmap__cpu(fd, handle, 0, size, prot);
> > +               domain = I915_GEM_DOMAIN_CPU;
> > +       }
> > +
> > +       gem_set_domain(fd, handle, /* no write hazard lies! */
> > +                      domain, domain);
> 
> And be very careful putting the set-domain in here; as the lies are
> integral to the test and not suitable for libraries. Domain handling
> is
> sadly of paramount importance for most tests.

Hm.. so maybe a little more in the kernel to safeguard here. I was
thinking of doing that anyway. Then we can adopt the tests as needed.

And for these, maybe the right way to go is to use the new mmap_offset
Zbigniew is implementing. The IOCTL posted by Abdiel already has a WC
case for that.

Thanks,
Stuart

> -Chris
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/x-pkcs7-signature
Size: 3270 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/igt-dev/attachments/20191119/238577b3/attachment.bin>


More information about the igt-dev mailing list