Comment 0 for bug 1843487

Revision history for this message
Tom Brezinski (tbrezinski) wrote :

Ubuntu 4.15.0-62.69-generic 4.15.18

In commit 725bbc87 on 2/13/2019 in uio.c a mutex_lock was added to uio_interrupt. This results in a "scheduling while atomic" error if someone else owns the mutex at the time it is invoked.

[ 1941.409212] BUG: scheduling while atomic: fcasm-test/3937/0x00010000
[ 1941.409216] Modules linked in: cdc_ether usbnet r8152 mii rfcomm ccm bnep arc4 nls_iso8859_1 snd_hda_codec_hdmi hid_multitouch dell_laptop intel_wmi_thunderbolt dell_wmi wmi_bmof dell_smbios dcdbas dell_wmi_descriptor snd_soc_skl snd_hda_codec_realtek snd_soc_skl_ipc snd_hda_codec_generic snd_hda_ext_core snd_soc_sst_dsp snd_soc_sst_ipc snd_soc_acpi snd_soc_core snd_compress ac97_bus snd_pcm_dmaengine intel_rapl ath10k_pci x86_pkg_temp_thermal intel_powerclamp ath10k_core coretemp kvm_intel ath kvm mac80211 irqbypass crct10dif_pclmul crc32_pclmul ghash_clmulni_intel pcbc cfg80211 aesni_intel rtsx_pci_ms aes_x86_64 memstick crypto_simd glue_helper cryptd intel_cstate intel_rapl_perf snd_hda_intel snd_hda_codec snd_hda_core snd_hwdep snd_pcm snd_seq_midi snd_seq_midi_event snd_rawmidi snd_seq joydev
[ 1941.409247] input_leds serio_raw snd_seq_device snd_timer idma64 snd virt_dma soundcore i915 mei_me mei shpchp uvcvideo btusb drm_kms_helper btrtl videobuf2_vmalloc btbcm intel_lpss_pci videobuf2_memops btintel intel_lpss drm videobuf2_v4l2 bluetooth videobuf2_core intel_pch_thermal i2c_algo_bit videodev fb_sys_fops syscopyarea processor_thermal_device sysfillrect media ecdh_generic sysimgblt intel_soc_dts_iosf wmi intel_hid int3400_thermal int3403_thermal int340x_thermal_zone acpi_thermal_rel sparse_keymap mac_hid acpi_pad video sch_fq_codel nfsd uio_nwdv(OE) auth_rpcgss nfs_acl uio lockd grace parport_pc ppdev sunrpc lp parport ip_tables x_tables autofs4 nvme rtsx_pci_sdmmc psmouse nvme_core thunderbolt rtsx_pci i2c_hid hid pinctrl_sunrisepoint
[ 1941.409281] CPU: 3 PID: 3937 Comm: fcasm-test Tainted: G OE 4.15.0-62-generic #69-Ubuntu
[ 1941.409282] Hardware name: Dell Inc. XPS 13 9370/0F6P3V, BIOS 1.10.0 04/18/2019
[ 1941.409282] Call Trace:
[ 1941.409284] <IRQ>
[ 1941.409290] dump_stack+0x63/0x8b
[ 1941.409293] __schedule_bug+0x55/0x70
[ 1941.409295] __schedule+0x658/0x880
[ 1941.409297] ? default_wake_function+0x12/0x20
[ 1941.409298] ? pollwake+0x73/0x90
[ 1941.409300] schedule+0x2c/0x80
[ 1941.409302] schedule_preempt_disabled+0xe/0x10
[ 1941.409303] __mutex_lock.isra.5+0x478/0x4e0
[ 1941.409304] __mutex_lock_slowpath+0x13/0x20
[ 1941.409305] ? __mutex_lock_slowpath+0x13/0x20
[ 1941.409306] mutex_lock+0x2f/0x40
[ 1941.409309] uio_interrupt+0x23/0x70 [uio]
[ 1941.409311] __handle_irq_event_percpu+0x44/0x1a0
[ 1941.409313] handle_irq_event_percpu+0x32/0x80
[ 1941.409315] handle_irq_event+0x3b/0x60
[ 1941.409316] handle_fasteoi_irq+0x7c/0x130
[ 1941.409318] handle_irq+0x20/0x30
[ 1941.409319] do_IRQ+0x50/0xe0
[ 1941.409321] common_interrupt+0x8c/0x8c
[ 1941.409322] </IRQ>
[ 1941.409323] RIP: 0010:mutex_lock+0x22/0x40
[ 1941.409324] RSP: 0018:ffffb68681b9b950 EFLAGS: 00000246 ORIG_RAX: ffffffffffffffdc
[ 1941.409325] RAX: 0000000000000000 RBX: ffff8ae612f8af10 RCX: 0000000000000000
[ 1941.409326] RDX: ffff8ae51b319740 RSI: ffffb68681b9ba70 RDI: ffff8ae612f8af10
[ 1941.409327] RBP: ffffb68681b9b958 R08: ffff8ae4ffa35200 R09: ffffffffc04c7120
[ 1941.409327] R10: 0000000000000001 R11: 00000389cc0215b7 R12: ffff8ae612f8af10
[ 1941.409328] R13: ffff8ae512de6bb0 R14: ffff8ae4ffa35200 R15: ffffb68681b9ba70
[ 1941.409330] ? uio_interrupt+0x70/0x70 [uio]
[ 1941.409331] uio_poll+0x32/0xb0 [uio]
[ 1941.409333] do_select+0x384/0x7e0
[ 1941.409335] ? compat_poll_select_copy_remaining+0x130/0x130
[ 1941.409338] ? __update_load_avg_se.isra.37+0x1c0/0x1d0
[ 1941.409339] ? __update_load_avg_se.isra.37+0x1c0/0x1d0
[ 1941.409341] ? find_next_bit+0xb/0x10
[ 1941.409342] ? update_load_avg+0x3b0/0x6e0
[ 1941.409343] ? update_curr+0x7a/0x1d0
[ 1941.409344] ? reweight_entity+0x155/0x1a0
[ 1941.409345] ? check_preempt_wakeup+0x10e/0x240
[ 1941.409347] ? check_preempt_curr+0x2d/0x90
[ 1941.409348] ? ttwu_do_wakeup+0x1e/0x140
[ 1941.409349] core_sys_select+0x1d9/0x320
[ 1941.409350] ? core_sys_select+0x1d9/0x320
[ 1941.409353] ? ktime_get_ts64+0x51/0xf0
[ 1941.409354] SyS_select+0xb7/0x110
[ 1941.409357] do_syscall_64+0x73/0x130
[ 1941.409358] entry_SYSCALL_64_after_hwframe+0x3d/0xa2
[ 1941.409359] RIP: 0033:0x7f8a46a4803f
[ 1941.409360] RSP: 002b:00007f8a45d91db0 EFLAGS: 00000293 ORIG_RAX: 0000000000000017
[ 1941.409361] RAX: ffffffffffffffda RBX: 0000000000000400 RCX: 00007f8a46a4803f
[ 1941.409362] RDX: 0000000000000000 RSI: 00007f8a45d91e30 RDI: 0000000000000400
[ 1941.409362] RBP: 00007f8a45d91e30 R08: 00007f8a45d91e20 R09: 0000000000000000
[ 1941.409363] R10: 0000000000000000 R11: 0000000000000293 R12: 0000000000000000
[ 1941.409364] R13: 0000000000000000 R14: 00007f8a45d91e20 R15: 000055d1091c0180