[PATCH 1/2] drm/i915: Don't clobber the addfb2 ioctl params

Chris Wilson chris at chris-wilson.co.uk
Wed Nov 11 09:20:10 PST 2015


On Wed, Nov 11, 2015 at 07:11:28PM +0200, ville.syrjala at linux.intel.com wrote:
> From: Ville Syrjälä <ville.syrjala at linux.intel.com>
> 
> We try to convert the old way of of specifying fb tiling (obj->tiling)
> into the new fb modifiers. We store the result in the passed in mode_cmd
> structure. But that structure comes directly from the addfb2 ioctl, and
> gets copied back out to userspace, which means we're clobbering the
> modifiers that the user provided (all 0 since the DRM_MODE_FB_MODIFIERS
> flag wasn't even set by the user). Hence if the user reuses the struct
> for another addfb2, the ioctl will be rejected since it's now asking for
> some modifiers w/o the flag set.

What do we actually pass back to userspace through the struct? Do we
just want to
-#define DRM_IOCTL_MODE_ADDFB2          DRM_IOWR(0xB8, struct drm_mode_fb_cmd2)
+#define DRM_IOCTL_MODE_ADDFB2          DRM_IOR(0xB8, struct drm_mode_fb_cmd2
instead?
-Chris

-- 
Chris Wilson, Intel Open Source Technology Centre


More information about the dri-devel mailing list