Quoting dom.constant@xxxxxxx (2018-02-02 18:37:12) > Hello, > > For my HTPC setup, I'm using the option "CustomEDID". > With this option, output attaching and destroying events leads to crashes. > > The following sequence leads to a crash: > - In xorg.conf: Option "CustomEDID" "HDMI2:/etc/my_edid.bin" > - Starting Xorg > - Connect HDMI2 > - Disconnect HDMI2 > - Reconnect HDMI2 > -> Crash > > > The crash happens in xf86OutputSetEDID (xorg/xserver/hw/xfree86/modes/xf86Crtc.c) > at "free(output->MonInfo)". MonInfo is assigned with sna_output->fake_edid_mon > which is allocated by intel driver in sna_output_load_fake_edid (src/sna/sna_display.c). > > > Sequence details: > - Starting Xorg > -> fake_edid_mon is initialized > > - Connect HDMI2 > -> xf86OutputSetEDID is called: > - MonInfo is NULL > - MonInfo is assigned with fake_edid_mon pointer > - MonInfo is read by Xorg > > - Disconnect HDMI2 > > - Reconnect HDMI2 > -> xf86OutputSetEDID is called: > - MonInfo is freed thus also fake_edid_mon > - MonInfo is assigned with fake_edid_mon > - MonInfo is read but it was freed -> CRASH > > > The fix consists of a new instance of xf86MonPtr for each calls of xf86OutputSetEDID. > This instance is initialized with fake_edid_raw which render fake_edid_mon useless. > With this proposal, the behaviour of an EDID override is similar to a "real" EDID. > > Regards, > > > Signed-off-by: Dominique Constant <dom.constant@xxxxxxx> > To: Chris Wilson <chris at chris-wilson.co.uk> Apologies if this is a resend, but could you send me this patch using "git send-email" (or attach the output of "git format-patch"). git am is not happy with it. -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx