[Bug 244877] graphics/mesa-dri: Fixing vulkan by switching to unsynchronized userptr ioctls

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Mar 18 00:57:38 UTC 2020


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=244877

            Bug ID: 244877
           Summary: graphics/mesa-dri: Fixing vulkan by switching to
                    unsynchronized userptr ioctls
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Some People
          Priority: ---
         Component: Individual Port(s)
          Assignee: x11 at FreeBSD.org
          Reporter: ashafer at badland.io
          Assignee: x11 at FreeBSD.org
             Flags: maintainer-feedback?(x11 at FreeBSD.org)

Created attachment 212484
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=212484&action=edit
mesa-dri: patch for anv_gem.c

This is the userspace portion of a change which fixes the Vulkan graphics API
on older Intel machines:

https://github.com/FreeBSDDesktop/kms-drm/pull/205

The above PR fixes the unsychronized DRM_IOCTL_I915_GEM_USERPTR which is used
by intel's vulkan code. For the fix to be used the ioctl needs to have the
I915_USERPTR_UNSYNCHRONIZED flag enabled:

    struct drm_i915_gem_userptr userptr = {
       .user_ptr = (__u64)((unsigned long) mem),
       .user_size = size,
-      .flags = 0,
+      .flags = I915_USERPTR_UNSYNCHRONIZED,
    };

    int ret = anv_ioctl(device->fd, DRM_IOCTL_I915_GEM_USERPTR, &userptr);

I've needed both the PR and this change for some daily vulkan development to
work.

It seems that maybe all the mesa stuff is going to be overhauled soon? So maybe
this isn't the ideal time to merge this. Please let me know if there is
anything I can help with!

-- 
You are receiving this mail because:
You are the assignee for the bug.


More information about the freebsd-ports-bugs mailing list