Those are two identical fixes for improving EDID detection timings, which also fix extremely slow xrandr queries in case of phantom outputs (https://bugs.freedesktop.org/show_bug.cgi?id=41059) The first fix is a small change to drm_edid, which prevents it from talking to non-existent adapters by detecting them faster. The second fix replicates the first one within the i915 driver. It does the same thing, but without touching core DRM files. Those are some of the testing results from our QA team: Regressions and functional testing: Machine+ports result Ironlake(mobile) eDP/VGA pass Ironlake(desktop) DP/VGA pass Ironlake(mobile) LVDS/VGA/DP pass G45(desktop) VGA/HDMI pass Pineview(mobile) LVDS/VGA pass xrandr performance: Without patch with patch E6510(Ironlake mobile) 0.119 0.111 PK1(Ironlake desktop) 0.101 0.080 T410b(Ironlake mobile) 0.406 0.114 G45b( G45 desktop) 0.121 0.091 Pnv1(Pineview mobile) 0.043 0.040 Those are the results for machines affected by phantom outputs issue, based on fd.o #41059 feedback: xrandr performance: Without patch with patch System 1 0.840 0.290 System 2 0.690 0.140 System 3 0.315 0.280 System 4 0.175 0.140 System 6 (original issue) 4s 0.184 We have observed no regressions in any cases, and performance improvements of 20-30% for edid detection timing. Combining it with the results obtained at https://bugs.freedesktop.org/show_bug.cgi?id=41059, besides those improvements it also improves xrandr timing by up to 20x in the worst case of phantom outputs. I believe that the better way to fix this is via the drm_get_edid() fix, as it is a one-line fix and could benefit all other chipsets. And we won't have to reinvent the wheel with intel_drm_get_edid, which only duplicates the existent functionality with no additional benefits. Could we have any feedback or reviewed-by or from non-intel drm maintainers? Thanks! Eugeni Dodonov (2): Give up on edid retries when i2c tells us that bus is not there Check if the bus is valid prior to discovering edid. drivers/gpu/drm/drm_edid.c | 5 ++++ drivers/gpu/drm/i915/intel_crt.c | 46 ++++++++++++++++++------------------ drivers/gpu/drm/i915/intel_dp.c | 4 +- drivers/gpu/drm/i915/intel_drv.h | 3 +- drivers/gpu/drm/i915/intel_hdmi.c | 4 +- drivers/gpu/drm/i915/intel_i2c.c | 42 ++++++++++++++++++++++++++++++++ drivers/gpu/drm/i915/intel_lvds.c | 2 +- drivers/gpu/drm/i915/intel_modes.c | 29 +---------------------- drivers/gpu/drm/i915/intel_sdvo.c | 4 +- 9 files changed, 80 insertions(+), 59 deletions(-) -- 1.7.7 _______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx http://lists.freedesktop.org/mailman/listinfo/dri-devel