1 1
Max Berghammer

Odroid C2 USB-Problem with 4.18.8 mainline kernel

Recommended Posts

Hi!

 

I'm running a Odroid C2 as a SAT->IP-Server for some time having two DVBSky S960 attached to the USB-Ports of the Odroid. The Odroid itsself has a nightly of Armbian installed: 5.38.180128 (4.14.15) and runs a self-compiled tvheadend on it. No big problems so far.

 

As you released a stable stretch-image some time ago, i thought: give it a try! So I flashed the image to my 8GB EMMC, installed all updates, built tvheadend on it and installed it. Everything runs like a charm. Until...I try to use the DVBSky S960 on the USB-Port. Of course I installed the correct driver for it and the device seems to be detected correctly and the drivers are being loaded. At least dmesg says that after a reboot. But as soon, as I try to scan for tv-channels using the tvheadend-web-ui, the system crashes.

 

I get the following on my terminal:

Message from syslogd@localhost at Dec 28 22:55:58 ...
 kernel:[   50.657471] Internal error: Oops: 96000146 [#1] PREEMPT SMP

Message from syslogd@localhost at Dec 28 22:55:58 ...
 kernel:[   50.814369] Process tvh:mtimer (pid: 1914, stack limit = 0x00000000f277fb3f)

Message from syslogd@localhost at Dec 28 22:55:58 ...
 kernel:[   50.909157] Code: 9ac32042 8b010001 d1000443 8a230000 (d50b7a20)

 

dmesg says:

[   50.612175] Unable to handle kernel paging request at virtual address ffff800000cc5000
[   50.614456] Mem abort info:
[   50.617219]   ESR = 0x96000146
[   50.620233]   Exception class = DABT (current EL), IL = 32 bits
[   50.626099]   SET = 0, FnV = 0
[   50.629112]   EA = 0, S1PTW = 0
[   50.632217] Data abort info:
[   50.635132]   ISV = 0, ISS = 0x00000146
[   50.638930]   CM = 1, WnR = 1
[   50.641900] swapper pgtable: 4k pages, 48-bit VAs, pgdp = 0000000094a73707
[   50.648717] [ffff800000cc5000] pgd=000000007fff8803, pud=000000007fff7803, pmd=0000000000000000
[   50.657471] Internal error: Oops: 96000146 [#1] PREEMPT SMP
[   50.662742] Modules linked in: rc_dvbsky ts2020 snd_soc_hdmi_codec dw_hdmi_cec dw_hdmi_i2s_audio zstd snd_soc_simple_card snd_soc_simple_card_utils snd_soc_core snd_pcm_dmaengine snd_pcm dvb_usb_dvbsky snd_timer m88ds3103 dvb_usb_v2 snd soundcore dvb_core meson_dw_hdmi i2c_mux meson_drm dw_hdmi drm_kms_helper drm meson_rng ao_cec rng_core cec meson_ir rc_core drm_panel_orientation_quirks meson_gxbb_wdt zram snd_soc_meson_audio_core zsmalloc scpi_hwmon nvmem_meson_efuse ip_tables x_tables realtek
[   50.706323] CPU: 3 PID: 1914 Comm: tvh:mtimer Not tainted 4.18.8-odroidc2 #264
[   50.713458] Hardware name: Hardkernel ODROID-C2 (DT)
[   50.718372] pstate: 80000005 (Nzcv daif -PAN -UAO)
[   50.723124] pc : __clean_dcache_area_poc+0x20/0x38
[   50.727860] lr : __swiotlb_map_page+0x74/0x90
[   50.732169] sp : ffff00000cd6b6b0
[   50.735446] x29: ffff00000cd6b6b0 x28: ffff800070d1b300
[   50.740708] x27: ffff80007011d200 x26: ffff000000c65ce0
[   50.745970] x25: ffff80007030d550 x24: ffff000008b67000
[   50.751231] x23: 0000000000000001 x22: 0000000000000003
[   50.756492] x21: 0000000000000000 x20: ffff8000712e2810
[   50.761753] x19: 0000000000cc5000 x18: 0000000000000000
[   50.767015] x17: 0000ffffad158ea0 x16: ffff000008260d38
[   50.772276] x15: 0000000000000000 x14: 0000000000000400
[   50.777537] x13: 0000000000000400 x12: 0000000000000001
[   50.782798] x11: 0000000000019008 x10: 00000000000008d0
[   50.788060] x9 : ffff00000cd6b380 x8 : 0000000000000cc5
[   50.793321] x7 : 00000000ffffffff x6 : 0000000000cc5000
[   50.798582] x5 : 0000000000000000 x4 : 0000000000000001
[   50.803843] x3 : 000000000000003f x2 : 0000000000000040
[   50.809105] x1 : ffff800000cc5003 x0 : ffff800000cc5000
[   50.814369] Process tvh:mtimer (pid: 1914, stack limit = 0x00000000f277fb3f)
[   50.821354] Call trace:
[   50.823768]  __clean_dcache_area_poc+0x20/0x38
[   50.828169]  usb_hcd_map_urb_for_dma+0x4a8/0x508
[   50.832741]  dwc2_map_urb_for_dma+0x4c/0xe8
[   50.836878]  usb_hcd_submit_urb+0x98/0x970
[   50.840932]  usb_submit_urb+0x3b4/0x558
[   50.844727]  usb_start_wait_urb+0x68/0x100
[   50.848781]  usb_bulk_msg+0xa0/0x148
[   50.852323]  dvb_usb_v2_generic_io.isra.0+0x8c/0x1b8 [dvb_usb_v2]
[   50.858358]  dvb_usbv2_generic_rw_locked+0x20/0x28 [dvb_usb_v2]
[   50.864224]  dvbsky_stream_ctrl+0x4c/0xa0 [dvb_usb_dvbsky]
[   50.869655]  dvbsky_usb_read_status+0x7c/0xa0 [dvb_usb_dvbsky]
[   50.875448]  dvb_frontend_handle_ioctl+0x3e8/0xb90 [dvb_core]
[   50.881134]  dvb_frontend_do_ioctl+0x88/0xd8 [dvb_core]
[   50.886308]  dvb_usercopy+0x68/0x1d0 [dvb_core]
[   50.890793]  dvb_frontend_ioctl+0x1c/0x30 [dvb_core]
[   50.895705]  do_vfs_ioctl+0xb8/0x8e0
[   50.899237]  ksys_ioctl+0x80/0xb8
[   50.902514]  sys_ioctl+0xc/0x18
[   50.905620]  el0_svc_naked+0x30/0x34
[   50.909157] Code: 9ac32042 8b010001 d1000443 8a230000 (d50b7a20)
[   50.915196] ---[ end trace ffb85cafd9bb0d8e ]---

 

Logging can be found here: http://ix.io/1x2t

 

What I tried so far:

- Running a current build of tvheadend on my nightly 5.38.180128 works, so it seems to be nothing tvheadend-specific

- Running a current build of tvheadend on a stable raspbian with kernel 4.14.79 on a rpi3 also works

- Running a current build of tvheadend on the newest nightly of Armbian does not work. Same Error.

 

Any thoughts? Do you need more infos?

 

thx in advance,

 

Max

 

Edit: Seems to be a bug in dvbsky.c introduced in kernel 4.18 and reverted back in 4.20:

https://bugzilla.kernel.org/show_bug.cgi?id=199323

https://github.com/torvalds/linux/commits/v4.20-rc1/drivers/media/usb/dvb-usb-v2/dvbsky.c

Share this post


Link to post
Share on other sites
On 12/29/2018 at 12:20 PM, Max Berghammer said:

But as soon, as I try to scan for tv-channels using the tvheadend-web-ui, the system crashes.


Check next nightly build:

 

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
1 1