On Fri, Nov 11, 2016 at 07:00:17PM +0200, Ville Syrjälä wrote: > On Thu, Nov 03, 2016 at 02:31:43PM +0200, ville.syrjala@xxxxxxxxxxxxxxx wrote: > > From: Ville Syrjälä <ville.syrjala@xxxxxxxxxxxxxxx> > > > > This reverts commit a68362fe3e84fcbedd49939aa200519aa5410135. > > > > Adding new mode flags willy nilly breaks existing userspace. We need to > > coordinate this better, potentially with a new client cap that only > > exposes the aspect ratio flags when userspace is prepared for them > > (similar to what we do with stereo 3D modes). > > As a demonstration here's the change in the xrandr mode list after doing > the revert: > > HDMI2 connected 1920x1080+0+0 (normal left inverted right x axis y axis) 700mm x 390mm > - 1920x1080 60.00*+ > - 1920x1080i 60.00 50.00 > + 1920x1080 60.00*+ 50.00 59.94 30.00 25.00 24.00 29.97 23.98 > + 1920x1080i 60.00 50.00 59.94 > 1600x1200 60.00 > 1680x1050 59.88 > 1280x1024 75.02 60.02 > @@ -13,30 +13,29 @@ > 1360x768 60.02 > 1280x800 59.91 > 1152x864 75.00 > - 1280x720 60.00 50.00 > + 1280x720 60.00 50.00 59.94 > 1024x768 75.03 70.07 60.00 > 832x624 74.55 > 800x600 72.19 75.00 60.32 > - 640x480 75.00 72.81 66.67 59.94 > + 720x576 50.00 > + 720x480 60.00 59.94 > + 640x480 75.00 72.81 66.67 60.00 59.94 > 720x400 70.08 > > This was with sna, which does this: > #define KNOWN_MODE_FLAGS ((1<<14)-1) > if (mode->status == MODE_OK && kmode->flags & ~KNOWN_MODE_FLAGS) > mode->status = MODE_BAD; /* unknown flags => unhandled */ > so all the modes with an aspect ratio just vanished. > > -modesetting and -ati on the other hand just copy over the unknown > bits into the xrandr mode structure, which sounds dubious at best: > mode->Flags = kmode->flags; //& FLAG_BITS; > I've not checked what damage it can actually cause. > > > It looks like a few modes disappeared from the kernel's mode list > as well, presumably because some cea modes in the list originated from > DTDs and whanot so they don't have an aspect ratio and that causes > add_alternate_cea_modes() to ignore them. So not populating an aspect > ratio for cea modes originating from a source other than > edid_cea_modes[] looks like another bug to me as well. Oh and I guess this is also the reason most people didn't notice anything wrong. The preferred mode usually (or maybe always?) comes from some other source than edid_cea_modes[] and hence doesn't tend to go AWOL. -- Ville Syrjälä Intel OTC _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel