Re: [git pull] drm for 4.19-rc1
From: John Stultz
Date: Thu Aug 16 2018 - 18:12:16 EST
On Thu, Aug 16, 2018 at 1:38 PM, John Stultz <john.stultz@xxxxxxxxxx> wrote:
>
> Unfortunately bumping the max width/height values to 4096 cause the
> system to hard hang as userspace starts up (and setting it to
> 2048/2160 does the same).
>
> So yea, I'm going to continue to dig at the hard-hang issue, and
> hopefully we can just bump the max width/height, but if there are
> other suggestions, please let me know.
So still digging on the hard hang after bumping the max_height value.
It seems to trigger as the display is being initialized by userland,
so if I boot with the HDMI cable unplugged the kernel boots fine (as
userland error loops looking for a display). Then when I hotplug the
HDMI cable it will hang. Booting with drm_debug=0xe, (and doing the
HDMI hotplug after bootup) I see:
[ 63.172368] [drm:dsi_encoder_phy_mode_valid] OK!
[ 63.185522] [drm:drm_calc_timestamping_constants] crtc 29: hwmode:
htotal 2200, vtotal 1125, vdisplay 1080
[ 63.195213] [drm:drm_calc_timestamping_constants] crtc 29: clock
148500 kHz framedur 16666666 linedur 14814
[ 63.205114] [drm:ade_ldi_set_mode.isra.9] set mode: 1920x1080
[ 63.212529] [drm:ade_ldi_set_mode.isra.9] set mode: 1920x1080
[ 63.218333] [drm:ade_plane_atomic_update] channel1: src:(0,
0)-1920x1080, crtc:(0, 0)-1920x1080
[ 63.218346] [drm:ade_plane_atomic_update] rdma1: (y=0,
height=1080), stride=7680, paddr=0x77d00000
[ 63.236111] [drm:ade_plane_atomic_update] addr=0x77d00000,
fb:1920x2160, pixel_format=2(XR24 little-endian (0x34325258))
[ 63.238695] Mali<2>:
[ 63.247032] [drm:ade_plane_atomic_update] clip1: clip_left=0, clip_right=0
[ 63.247053] [drm:drm_vblank_enable] enabling vblank on crtc 0, ret: 0
[ 63.249319] Session 0x74ACAE00 with pid 2249 was granted higher priority.
[ 63.256253] [drm:ade_dump_regs] [rdma1]: reload(0)
[ 63.273400] [drm:drm_handle_vblank] vblank event on 1, current 1
[ 63.274362] [drm:ade_dump_regs] [rdma1]: reg_ctrl(0x00020000)
[ 63.286201] [drm:ade_dump_regs] [rdma1]: reg_addr(0x77d00000)
[ 63.286208] [drm:ade_dump_regs] [rdma1]: reg_size(0x04381e00)
[ 63.286214] [drm:ade_dump_regs] [rdma1]: reg_stride(0x00001e00)
[ 63.286221] [drm:ade_dump_regs] [rdma1]: reg_space(0x007e9000)
[ 63.286227] [drm:ade_dump_regs] [rdma1]: reg_en(0x00000000)
[ 63.286234] [drm:ade_dump_regs] [clip1]: reload(0)
[ 63.286248] [drm:ade_dump_regs] [clip1]: reg_clip_disable(0x00000001)
[ 63.326460] [drm:ade_dump_regs] [clip1]: reg_clip_size0(0x077f0437)
[ 63.332786] [drm:ade_dump_regs] [clip1]: reg_clip_size1(0x00000000)
[ 63.339102] [drm:ade_dump_regs] [overlay ch0]: reg_ch_xy0(0x00000000)
[ 63.345596] [drm:ade_dump_regs] [overlay ch0]: reg_ch_xy1(0x077f0437)
[ 63.350809] init: Received control message 'start' for 'bootanim'
from pid: 2249 (/system/bin/surfaceflinger)
[ 63.352091] [drm:ade_dump_regs] [overlay ch0]: reg_ch_ctl(0x107f806c)
[ 63.362726] init: starting service 'bootanim'...
[ 63.368494] [drm:ade_dump_regs] [overlay2]: reload(0)
[ 63.368506] [drm:ade_dump_regs] [overlay2]: reg_ctl(0x00000000)
[ 63.384170] [drm:ade_dump_regs] ovly_ctl(0x00000002)
[ 63.390826] [drm:dsi_encoder_enable] htot=2200, hfp=88, hbp=148, hsw=44
[ 63.397502] [drm:dsi_encoder_enable] vtol=1125, vfp=4, vbp=36, vsw=5
[ 63.403902] [drm:dsi_encoder_enable] hsa_time=33, hbp_time=111,
hline_time=1650
[ 63.411250] [drm:dsi_encoder_enable] lanes=4, pixel_clk=144000 kHz,
bytes_freq=108000 kHz
[ 63.428238] [drm:drm_mode_object_put] OBJ ID: 31 (5)
<hang>
Not always, but sometimes as it hangs I'll see:
[drm:vblank_disable_fn] disabling vblank on crtc 0
And sometimes I'll also see:
Insufficient stack space to handle exception!
So I'm not sure if there's a screaming interrupt or what (nor am I
sure what from the problematic changes would cause that change
either).
thanks
-john