* regression (bisected): "modprobe parport_pc" hangs in current mainline @ 2019-03-13 6:45 Michal Kubecek 2019-03-17 17:01 ` Sudip Mukherjee 0 siblings, 1 reply; 10+ messages in thread From: Michal Kubecek @ 2019-03-13 6:45 UTC (permalink / raw) To: Sudip Mukherjee; +Cc: linux-kernel Hello, I encountered a regression in current (post-5.0) mainline kernel which I bisected to commit 1aec4211204d ("parport: daisy: use new parport device model"). Running "modprobe parport_pc" hangs up: tweed:~ # ps ax | grep modprobe 1206 pts/0 D+ 0:00 modprobe parport_pc 1209 ? S 0:00 /sbin/modprobe -q -- parport_lowlevel 1211 pts/1 S+ 0:00 grep modprobe tweed:~ # cat /proc/1206/stack [<0>] call_usermodehelper_exec+0xc7/0x140 [<0>] __request_module+0x1a1/0x430 [<0>] __parport_register_driver+0x142/0x150 [parport] [<0>] parport_bus_init+0x1d/0x30 [parport] [<0>] parport_default_proc_register+0x28/0x1000 [parport] [<0>] do_one_initcall+0x46/0x1cd [<0>] do_init_module+0x5b/0x20d [<0>] load_module+0x1b3d/0x20f0 [<0>] __do_sys_finit_module+0xbd/0xe0 [<0>] do_syscall_64+0x60/0x120 [<0>] entry_SYSCALL_64_after_hwframe+0x49/0xbe [<0>] 0xffffffffffffffff tweed:~ # cat /proc/1209/stack [<0>] load_module+0xe6a/0x20f0 [<0>] __do_sys_finit_module+0xbd/0xe0 [<0>] do_syscall_64+0x60/0x120 [<0>] entry_SYSCALL_64_after_hwframe+0x49/0xbe [<0>] 0xffffffffffffffff call_usermodehelper_exec+0xc7/0x140 is (build from commit 1aec4211204d) line 583 in kernel/umh.c: retval = wait_for_completion_killable(&done); and load_module+0xe6a/0x20f0 is in add_unformed_module(), line 3577 in kernel/module.c: err = wait_event_interruptible(module_wq, finished_loading(mod->name)); Unfortunately I don't have version of crash able to deal with kernels as new as these so I wasn't able to find more for now. I have seen this both on real hardware and in a VM. Michal Kubecek ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression (bisected): "modprobe parport_pc" hangs in current mainline 2019-03-13 6:45 regression (bisected): "modprobe parport_pc" hangs in current mainline Michal Kubecek @ 2019-03-17 17:01 ` Sudip Mukherjee 2019-03-17 18:05 ` Michal Kubecek 0 siblings, 1 reply; 10+ messages in thread From: Sudip Mukherjee @ 2019-03-17 17:01 UTC (permalink / raw) To: Michal Kubecek; +Cc: linux-kernel HI Michal, On Wed, Mar 13, 2019 at 6:45 AM Michal Kubecek <mkubecek@suse.cz> wrote: > > Hello, > > I encountered a regression in current (post-5.0) mainline kernel which I > bisected to commit 1aec4211204d ("parport: daisy: use new parport device > model"). Running "modprobe parport_pc" hangs up: Can you please send me your .config so that I can test it from my side. > > tweed:~ # ps ax | grep modprobe > 1206 pts/0 D+ 0:00 modprobe parport_pc > 1209 ? S 0:00 /sbin/modprobe -q -- parport_lowlevel > 1211 pts/1 S+ 0:00 grep modprobe > tweed:~ # cat /proc/1206/stack > [<0>] call_usermodehelper_exec+0xc7/0x140 > [<0>] __request_module+0x1a1/0x430 > [<0>] __parport_register_driver+0x142/0x150 [parport] And also, modprobe is trying to load a dependent module, so it will be great if you can also do a "lsmod" before doing the modprobe and I can check what is going wrong. -- Regards Sudip ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression (bisected): "modprobe parport_pc" hangs in current mainline 2019-03-17 17:01 ` Sudip Mukherjee @ 2019-03-17 18:05 ` Michal Kubecek 2019-03-20 9:30 ` Sudip Mukherjee 0 siblings, 1 reply; 10+ messages in thread From: Michal Kubecek @ 2019-03-17 18:05 UTC (permalink / raw) To: Sudip Mukherjee; +Cc: linux-kernel [-- Attachment #1: Type: text/plain, Size: 1876 bytes --] On Sun, Mar 17, 2019 at 05:01:37PM +0000, Sudip Mukherjee wrote: > On Wed, Mar 13, 2019 at 6:45 AM Michal Kubecek <mkubecek@suse.cz> wrote: > > I encountered a regression in current (post-5.0) mainline kernel which I > > bisected to commit 1aec4211204d ("parport: daisy: use new parport device > > model"). Running "modprobe parport_pc" hangs up: > > Can you please send me your .config so that I can test it from my side. Attaching two versions: config-full.gz is the real life config from the machine where I found the issue and config-mini.gz is a minimized config I was using while bisecting the issue. (I made a mistake and thought that I have seen the issue with snapshot before both parport commits so that I ran a full bisect instead of simply checking the two parport commits which came in the merge window.) > > tweed:~ # ps ax | grep modprobe > > 1206 pts/0 D+ 0:00 modprobe parport_pc > > 1209 ? S 0:00 /sbin/modprobe -q -- parport_lowlevel > > 1211 pts/1 S+ 0:00 grep modprobe > > tweed:~ # cat /proc/1206/stack > > [<0>] call_usermodehelper_exec+0xc7/0x140 > > [<0>] __request_module+0x1a1/0x430 > > [<0>] __parport_register_driver+0x142/0x150 [parport] > > And also, modprobe is trying to load a dependent module, so it will be > great if you can also do a "lsmod" before doing the modprobe and I can > check what is going wrong. Attached are three lists: - lsmod-before ... before running "modprobe parport_pc" - lsmod-test ... while "modprobe parport_pc" is stuck - lsmod-after ... after killing second modprobe (1209 above) Killing the second modprobe (PID 1209 above) lets the first finish and as a result, parport, parport_pc and ppdev are loaded (it's the only difference against lsmod-before). When modprobe is stuck, lsmod shows parport with refcount of 1 (the only difference against lsmod-before). Michal [-- Attachment #2: config-full.gz --] [-- Type: application/x-gzip, Size: 52138 bytes --] [-- Attachment #3: config-mini.gz --] [-- Type: application/x-gzip, Size: 34903 bytes --] [-- Attachment #4: lsmod-before --] [-- Type: text/plain, Size: 6664 bytes --] Module Size Used by authenc 16384 2 echainiv 16384 2 esp4 24576 2 xfrm4_mode_transport 16384 4 tun 57344 2 xt_REDIRECT 20480 3 ipt_MASQUERADE 20480 2 xt_nat 16384 2 deflate 16384 0 iptable_nat 16384 1 twofish_generic 20480 0 nf_nat 49152 4 ipt_MASQUERADE,xt_nat,iptable_nat,xt_REDIRECT twofish_avx_x86_64 53248 0 twofish_x86_64_3way 28672 1 twofish_avx_x86_64 twofish_x86_64 16384 2 twofish_x86_64_3way,twofish_avx_x86_64 twofish_common 24576 4 twofish_x86_64,twofish_generic,twofish_x86_64_3way,twofish_avx_x86_64 camellia_generic 32768 0 af_packet 53248 10 nf_log_ipv4 16384 1 nf_log_common 16384 1 nf_log_ipv4 xt_LOG 20480 1 camellia_aesni_avx_x86_64 28672 0 camellia_x86_64 53248 1 camellia_aesni_avx_x86_64 xt_conntrack 16384 2 nf_conntrack 155648 5 xt_conntrack,nf_nat,ipt_MASQUERADE,xt_nat,xt_REDIRECT nf_defrag_ipv6 24576 1 nf_conntrack nf_defrag_ipv4 16384 1 nf_conntrack serpent_avx_x86_64 49152 0 serpent_sse2_x86_64 53248 0 serpent_generic 28672 2 serpent_sse2_x86_64,serpent_avx_x86_64 blowfish_generic 16384 0 blowfish_x86_64 24576 0 blowfish_common 20480 2 blowfish_generic,blowfish_x86_64 cast5_avx_x86_64 49152 0 fuse 131072 3 cast5_generic 24576 1 cast5_avx_x86_64 cast_common 16384 2 cast5_generic,cast5_avx_x86_64 des_generic 24576 0 cmac 16384 0 ipt_REJECT 16384 21 nf_reject_ipv4 16384 1 ipt_REJECT xcbc 16384 0 rmd160 20480 0 xt_tcpudp 20480 50 iptable_filter 16384 1 ip_tables 32768 2 iptable_filter,iptable_nat x_tables 45056 9 xt_conntrack,iptable_filter,xt_LOG,xt_tcpudp,ipt_MASQUERADE,xt_nat,ipt_REJECT,ip_tables,xt_REDIRECT sha512_ssse3 45056 0 sha512_generic 16384 1 sha512_ssse3 bpfilter 36864 0 af_key 45056 2 xfrm_algo 16384 2 af_key,esp4 8021q 40960 0 garp 16384 1 8021q mrp 20480 1 8021q stp 16384 1 garp llc 16384 2 stp,garp iscsi_ibft 16384 0 iscsi_boot_sysfs 16384 1 iscsi_ibft it87 65536 0 hwmon_vid 16384 1 it87 msr 16384 0 joydev 28672 0 hid_generic 16384 0 xfs 1433600 3 libcrc32c 16384 3 nf_conntrack,nf_nat,xfs edac_mce_amd 32768 0 kvm_amd 110592 0 ccp 98304 1 kvm_amd kvm 733184 1 kvm_amd irqbypass 16384 1 kvm snd_seq_dummy 16384 0 snd_seq_oss 49152 0 snd_emu10k1_synth 20480 0 snd_emux_synth 53248 1 snd_emu10k1_synth snd_seq_midi_emul 20480 1 snd_emux_synth snd_seq_virmidi 16384 1 snd_emux_synth snd_seq_midi 20480 0 snd_seq_midi_event 16384 3 snd_seq_midi,snd_seq_oss,snd_seq_virmidi raid1 49152 3 md_mod 167936 3 raid1 crct10dif_pclmul 16384 1 crc32_pclmul 16384 0 ghash_clmulni_intel 16384 0 snd_emu10k1 192512 3 snd_emu10k1_synth snd_util_mem 16384 2 snd_emu10k1,snd_emux_synth snd_ac97_codec 147456 1 snd_emu10k1 ac97_bus 16384 1 snd_ac97_codec snd_hwdep 16384 2 snd_emu10k1,snd_emux_synth snd_rawmidi 45056 3 snd_seq_midi,snd_emu10k1,snd_seq_virmidi usbhid 65536 2 snd_pcm 143360 2 snd_emu10k1,snd_ac97_codec snd_seq 86016 9 snd_seq_midi,snd_seq_oss,snd_seq_midi_event,snd_seq_virmidi,snd_seq_midi_emul,snd_emux_synth,snd_seq_dummy aesni_intel 372736 5 snd_seq_device 16384 7 snd_seq,snd_seq_midi,snd_seq_oss,snd_emu10k1,snd_emu10k1_synth,snd_emux_synth,snd_rawmidi snd_timer 40960 3 snd_seq,snd_emu10k1,snd_pcm aes_x86_64 20480 1 aesni_intel crypto_simd 16384 6 camellia_aesni_avx_x86_64,serpent_sse2_x86_64,aesni_intel,serpent_avx_x86_64,cast5_avx_x86_64,twofish_avx_x86_64 cryptd 28672 5 crypto_simd,ghash_clmulni_intel,aesni_intel glue_helper 16384 7 camellia_aesni_avx_x86_64,camellia_x86_64,twofish_x86_64_3way,serpent_sse2_x86_64,aesni_intel,serpent_avx_x86_64,twofish_avx_x86_64 8139too 45056 0 snd 102400 15 snd_seq,snd_seq_device,snd_hwdep,snd_seq_oss,snd_emu10k1,snd_timer,snd_ac97_codec,snd_seq_virmidi,snd_emux_synth,snd_pcm,snd_rawmidi mxm_wmi 16384 0 pcspkr 16384 0 k10temp 16384 0 fam15h_power 16384 0 sp5100_tco 20480 0 soundcore 16384 1 snd 8139cp 36864 0 emu10k1_gp 16384 0 gameport 16384 2 emu10k1_gp mii 16384 2 8139cp,8139too r8169 94208 0 i2c_piix4 28672 0 radeon 1642496 73 realtek 20480 1 ttm 114688 1 radeon libphy 90112 2 r8169,realtek drm_kms_helper 212992 1 radeon button 20480 0 drm 487424 14 drm_kms_helper,radeon,ttm fb_sys_fops 16384 1 drm_kms_helper syscopyarea 16384 1 drm_kms_helper sysfillrect 16384 1 drm_kms_helper sysimgblt 16384 1 drm_kms_helper i2c_algo_bit 16384 1 radeon pcc_cpufreq 20480 0 acpi_cpufreq 28672 0 ohci_pci 20480 0 crc32c_intel 24576 5 firewire_ohci 45056 0 firewire_core 77824 1 firewire_ohci crc_itu_t 16384 1 firewire_core ehci_pci 20480 0 ohci_hcd 57344 1 ohci_pci sr_mod 28672 0 ehci_hcd 98304 1 ehci_pci cdrom 73728 1 sr_mod xhci_pci 20480 0 xhci_hcd 262144 1 xhci_pci usbcore 303104 9 xhci_hcd,ohci_hcd,ehci_pci,usbhid,ehci_hcd,xhci_pci,ohci_pci wmi 32768 1 mxm_wmi sg 40960 0 dm_multipath 36864 0 dm_mod 155648 9 dm_multipath scsi_dh_rdac 16384 0 scsi_dh_emc 16384 0 scsi_dh_alua 20480 0 [-- Attachment #5: lsmod-test --] [-- Type: text/plain, Size: 6696 bytes --] Module Size Used by parport 61440 1 authenc 16384 2 echainiv 16384 2 esp4 24576 2 xfrm4_mode_transport 16384 4 tun 57344 2 xt_REDIRECT 20480 3 ipt_MASQUERADE 20480 2 xt_nat 16384 2 deflate 16384 0 iptable_nat 16384 1 twofish_generic 20480 0 nf_nat 49152 4 ipt_MASQUERADE,xt_nat,iptable_nat,xt_REDIRECT twofish_avx_x86_64 53248 0 twofish_x86_64_3way 28672 1 twofish_avx_x86_64 twofish_x86_64 16384 2 twofish_x86_64_3way,twofish_avx_x86_64 twofish_common 24576 4 twofish_x86_64,twofish_generic,twofish_x86_64_3way,twofish_avx_x86_64 camellia_generic 32768 0 af_packet 53248 10 nf_log_ipv4 16384 1 nf_log_common 16384 1 nf_log_ipv4 xt_LOG 20480 1 camellia_aesni_avx_x86_64 28672 0 camellia_x86_64 53248 1 camellia_aesni_avx_x86_64 xt_conntrack 16384 2 nf_conntrack 155648 5 xt_conntrack,nf_nat,ipt_MASQUERADE,xt_nat,xt_REDIRECT nf_defrag_ipv6 24576 1 nf_conntrack nf_defrag_ipv4 16384 1 nf_conntrack serpent_avx_x86_64 49152 0 serpent_sse2_x86_64 53248 0 serpent_generic 28672 2 serpent_sse2_x86_64,serpent_avx_x86_64 blowfish_generic 16384 0 blowfish_x86_64 24576 0 blowfish_common 20480 2 blowfish_generic,blowfish_x86_64 cast5_avx_x86_64 49152 0 fuse 131072 3 cast5_generic 24576 1 cast5_avx_x86_64 cast_common 16384 2 cast5_generic,cast5_avx_x86_64 des_generic 24576 0 cmac 16384 0 ipt_REJECT 16384 21 nf_reject_ipv4 16384 1 ipt_REJECT xcbc 16384 0 rmd160 20480 0 xt_tcpudp 20480 50 iptable_filter 16384 1 ip_tables 32768 2 iptable_filter,iptable_nat x_tables 45056 9 xt_conntrack,iptable_filter,xt_LOG,xt_tcpudp,ipt_MASQUERADE,xt_nat,ipt_REJECT,ip_tables,xt_REDIRECT sha512_ssse3 45056 0 sha512_generic 16384 1 sha512_ssse3 bpfilter 36864 0 af_key 45056 2 xfrm_algo 16384 2 af_key,esp4 8021q 40960 0 garp 16384 1 8021q mrp 20480 1 8021q stp 16384 1 garp llc 16384 2 stp,garp iscsi_ibft 16384 0 iscsi_boot_sysfs 16384 1 iscsi_ibft it87 65536 0 hwmon_vid 16384 1 it87 msr 16384 0 joydev 28672 0 hid_generic 16384 0 xfs 1433600 3 libcrc32c 16384 3 nf_conntrack,nf_nat,xfs edac_mce_amd 32768 0 kvm_amd 110592 0 ccp 98304 1 kvm_amd kvm 733184 1 kvm_amd irqbypass 16384 1 kvm snd_seq_dummy 16384 0 snd_seq_oss 49152 0 snd_emu10k1_synth 20480 0 snd_emux_synth 53248 1 snd_emu10k1_synth snd_seq_midi_emul 20480 1 snd_emux_synth snd_seq_virmidi 16384 1 snd_emux_synth snd_seq_midi 20480 0 snd_seq_midi_event 16384 3 snd_seq_midi,snd_seq_oss,snd_seq_virmidi raid1 49152 3 md_mod 167936 3 raid1 crct10dif_pclmul 16384 1 crc32_pclmul 16384 0 ghash_clmulni_intel 16384 0 snd_emu10k1 192512 3 snd_emu10k1_synth snd_util_mem 16384 2 snd_emu10k1,snd_emux_synth snd_ac97_codec 147456 1 snd_emu10k1 ac97_bus 16384 1 snd_ac97_codec snd_hwdep 16384 2 snd_emu10k1,snd_emux_synth snd_rawmidi 45056 3 snd_seq_midi,snd_emu10k1,snd_seq_virmidi usbhid 65536 2 snd_pcm 143360 2 snd_emu10k1,snd_ac97_codec snd_seq 86016 9 snd_seq_midi,snd_seq_oss,snd_seq_midi_event,snd_seq_virmidi,snd_seq_midi_emul,snd_emux_synth,snd_seq_dummy aesni_intel 372736 5 snd_seq_device 16384 7 snd_seq,snd_seq_midi,snd_seq_oss,snd_emu10k1,snd_emu10k1_synth,snd_emux_synth,snd_rawmidi snd_timer 40960 3 snd_seq,snd_emu10k1,snd_pcm aes_x86_64 20480 1 aesni_intel crypto_simd 16384 6 camellia_aesni_avx_x86_64,serpent_sse2_x86_64,aesni_intel,serpent_avx_x86_64,cast5_avx_x86_64,twofish_avx_x86_64 cryptd 28672 5 crypto_simd,ghash_clmulni_intel,aesni_intel glue_helper 16384 7 camellia_aesni_avx_x86_64,camellia_x86_64,twofish_x86_64_3way,serpent_sse2_x86_64,aesni_intel,serpent_avx_x86_64,twofish_avx_x86_64 8139too 45056 0 snd 102400 15 snd_seq,snd_seq_device,snd_hwdep,snd_seq_oss,snd_emu10k1,snd_timer,snd_ac97_codec,snd_seq_virmidi,snd_emux_synth,snd_pcm,snd_rawmidi mxm_wmi 16384 0 pcspkr 16384 0 k10temp 16384 0 fam15h_power 16384 0 sp5100_tco 20480 0 soundcore 16384 1 snd 8139cp 36864 0 emu10k1_gp 16384 0 gameport 16384 2 emu10k1_gp mii 16384 2 8139cp,8139too r8169 94208 0 i2c_piix4 28672 0 radeon 1642496 73 realtek 20480 1 ttm 114688 1 radeon libphy 90112 2 r8169,realtek drm_kms_helper 212992 1 radeon button 20480 0 drm 487424 14 drm_kms_helper,radeon,ttm fb_sys_fops 16384 1 drm_kms_helper syscopyarea 16384 1 drm_kms_helper sysfillrect 16384 1 drm_kms_helper sysimgblt 16384 1 drm_kms_helper i2c_algo_bit 16384 1 radeon pcc_cpufreq 20480 0 acpi_cpufreq 28672 0 ohci_pci 20480 0 crc32c_intel 24576 5 firewire_ohci 45056 0 firewire_core 77824 1 firewire_ohci crc_itu_t 16384 1 firewire_core ehci_pci 20480 0 ohci_hcd 57344 1 ohci_pci sr_mod 28672 0 ehci_hcd 98304 1 ehci_pci cdrom 73728 1 sr_mod xhci_pci 20480 0 xhci_hcd 262144 1 xhci_pci usbcore 303104 9 xhci_hcd,ohci_hcd,ehci_pci,usbhid,ehci_hcd,xhci_pci,ohci_pci wmi 32768 1 mxm_wmi sg 40960 0 dm_multipath 36864 0 dm_mod 155648 9 dm_multipath scsi_dh_rdac 16384 0 scsi_dh_emc 16384 0 scsi_dh_alua 20480 0 [-- Attachment #6: lsmod-after --] [-- Type: text/plain, Size: 6777 bytes --] Module Size Used by ppdev 24576 0 parport_pc 53248 0 parport 61440 2 parport_pc,ppdev authenc 16384 2 echainiv 16384 2 esp4 24576 2 xfrm4_mode_transport 16384 4 tun 57344 2 xt_REDIRECT 20480 3 ipt_MASQUERADE 20480 2 xt_nat 16384 2 deflate 16384 0 iptable_nat 16384 1 twofish_generic 20480 0 nf_nat 49152 4 ipt_MASQUERADE,xt_nat,iptable_nat,xt_REDIRECT twofish_avx_x86_64 53248 0 twofish_x86_64_3way 28672 1 twofish_avx_x86_64 twofish_x86_64 16384 2 twofish_x86_64_3way,twofish_avx_x86_64 twofish_common 24576 4 twofish_x86_64,twofish_generic,twofish_x86_64_3way,twofish_avx_x86_64 camellia_generic 32768 0 af_packet 53248 10 nf_log_ipv4 16384 1 nf_log_common 16384 1 nf_log_ipv4 xt_LOG 20480 1 camellia_aesni_avx_x86_64 28672 0 camellia_x86_64 53248 1 camellia_aesni_avx_x86_64 xt_conntrack 16384 2 nf_conntrack 155648 5 xt_conntrack,nf_nat,ipt_MASQUERADE,xt_nat,xt_REDIRECT nf_defrag_ipv6 24576 1 nf_conntrack nf_defrag_ipv4 16384 1 nf_conntrack serpent_avx_x86_64 49152 0 serpent_sse2_x86_64 53248 0 serpent_generic 28672 2 serpent_sse2_x86_64,serpent_avx_x86_64 blowfish_generic 16384 0 blowfish_x86_64 24576 0 blowfish_common 20480 2 blowfish_generic,blowfish_x86_64 cast5_avx_x86_64 49152 0 fuse 131072 3 cast5_generic 24576 1 cast5_avx_x86_64 cast_common 16384 2 cast5_generic,cast5_avx_x86_64 des_generic 24576 0 cmac 16384 0 ipt_REJECT 16384 21 nf_reject_ipv4 16384 1 ipt_REJECT xcbc 16384 0 rmd160 20480 0 xt_tcpudp 20480 50 iptable_filter 16384 1 ip_tables 32768 2 iptable_filter,iptable_nat x_tables 45056 9 xt_conntrack,iptable_filter,xt_LOG,xt_tcpudp,ipt_MASQUERADE,xt_nat,ipt_REJECT,ip_tables,xt_REDIRECT sha512_ssse3 45056 0 sha512_generic 16384 1 sha512_ssse3 bpfilter 36864 0 af_key 45056 2 xfrm_algo 16384 2 af_key,esp4 8021q 40960 0 garp 16384 1 8021q mrp 20480 1 8021q stp 16384 1 garp llc 16384 2 stp,garp iscsi_ibft 16384 0 iscsi_boot_sysfs 16384 1 iscsi_ibft it87 65536 0 hwmon_vid 16384 1 it87 msr 16384 0 joydev 28672 0 hid_generic 16384 0 xfs 1433600 3 libcrc32c 16384 3 nf_conntrack,nf_nat,xfs edac_mce_amd 32768 0 kvm_amd 110592 0 ccp 98304 1 kvm_amd kvm 733184 1 kvm_amd irqbypass 16384 1 kvm snd_seq_dummy 16384 0 snd_seq_oss 49152 0 snd_emu10k1_synth 20480 0 snd_emux_synth 53248 1 snd_emu10k1_synth snd_seq_midi_emul 20480 1 snd_emux_synth snd_seq_virmidi 16384 1 snd_emux_synth snd_seq_midi 20480 0 snd_seq_midi_event 16384 3 snd_seq_midi,snd_seq_oss,snd_seq_virmidi raid1 49152 3 md_mod 167936 3 raid1 crct10dif_pclmul 16384 1 crc32_pclmul 16384 0 ghash_clmulni_intel 16384 0 snd_emu10k1 192512 3 snd_emu10k1_synth snd_util_mem 16384 2 snd_emu10k1,snd_emux_synth snd_ac97_codec 147456 1 snd_emu10k1 ac97_bus 16384 1 snd_ac97_codec snd_hwdep 16384 2 snd_emu10k1,snd_emux_synth snd_rawmidi 45056 3 snd_seq_midi,snd_emu10k1,snd_seq_virmidi usbhid 65536 2 snd_pcm 143360 2 snd_emu10k1,snd_ac97_codec snd_seq 86016 9 snd_seq_midi,snd_seq_oss,snd_seq_midi_event,snd_seq_virmidi,snd_seq_midi_emul,snd_emux_synth,snd_seq_dummy aesni_intel 372736 5 snd_seq_device 16384 7 snd_seq,snd_seq_midi,snd_seq_oss,snd_emu10k1,snd_emu10k1_synth,snd_emux_synth,snd_rawmidi snd_timer 40960 3 snd_seq,snd_emu10k1,snd_pcm aes_x86_64 20480 1 aesni_intel crypto_simd 16384 6 camellia_aesni_avx_x86_64,serpent_sse2_x86_64,aesni_intel,serpent_avx_x86_64,cast5_avx_x86_64,twofish_avx_x86_64 cryptd 28672 5 crypto_simd,ghash_clmulni_intel,aesni_intel glue_helper 16384 7 camellia_aesni_avx_x86_64,camellia_x86_64,twofish_x86_64_3way,serpent_sse2_x86_64,aesni_intel,serpent_avx_x86_64,twofish_avx_x86_64 8139too 45056 0 snd 102400 15 snd_seq,snd_seq_device,snd_hwdep,snd_seq_oss,snd_emu10k1,snd_timer,snd_ac97_codec,snd_seq_virmidi,snd_emux_synth,snd_pcm,snd_rawmidi mxm_wmi 16384 0 pcspkr 16384 0 k10temp 16384 0 fam15h_power 16384 0 sp5100_tco 20480 0 soundcore 16384 1 snd 8139cp 36864 0 emu10k1_gp 16384 0 gameport 16384 2 emu10k1_gp mii 16384 2 8139cp,8139too r8169 94208 0 i2c_piix4 28672 0 radeon 1642496 73 realtek 20480 1 ttm 114688 1 radeon libphy 90112 2 r8169,realtek drm_kms_helper 212992 1 radeon button 20480 0 drm 487424 14 drm_kms_helper,radeon,ttm fb_sys_fops 16384 1 drm_kms_helper syscopyarea 16384 1 drm_kms_helper sysfillrect 16384 1 drm_kms_helper sysimgblt 16384 1 drm_kms_helper i2c_algo_bit 16384 1 radeon pcc_cpufreq 20480 0 acpi_cpufreq 28672 0 ohci_pci 20480 0 crc32c_intel 24576 5 firewire_ohci 45056 0 firewire_core 77824 1 firewire_ohci crc_itu_t 16384 1 firewire_core ehci_pci 20480 0 ohci_hcd 57344 1 ohci_pci sr_mod 28672 0 ehci_hcd 98304 1 ehci_pci cdrom 73728 1 sr_mod xhci_pci 20480 0 xhci_hcd 262144 1 xhci_pci usbcore 303104 9 xhci_hcd,ohci_hcd,ehci_pci,usbhid,ehci_hcd,xhci_pci,ohci_pci wmi 32768 1 mxm_wmi sg 40960 0 dm_multipath 36864 0 dm_mod 155648 9 dm_multipath scsi_dh_rdac 16384 0 scsi_dh_emc 16384 0 scsi_dh_alua 20480 0 ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression (bisected): "modprobe parport_pc" hangs in current mainline 2019-03-17 18:05 ` Michal Kubecek @ 2019-03-20 9:30 ` Sudip Mukherjee 2019-03-20 21:18 ` Michal Kubecek 0 siblings, 1 reply; 10+ messages in thread From: Sudip Mukherjee @ 2019-03-20 9:30 UTC (permalink / raw) To: Michal Kubecek; +Cc: linux-kernel Hi Michal, On Sun, Mar 17, 2019 at 6:05 PM Michal Kubecek <mkubecek@suse.cz> wrote: > > On Sun, Mar 17, 2019 at 05:01:37PM +0000, Sudip Mukherjee wrote: > > On Wed, Mar 13, 2019 at 6:45 AM Michal Kubecek <mkubecek@suse.cz> wrote: > > > I encountered a regression in current (post-5.0) mainline kernel which I > > > bisected to commit 1aec4211204d ("parport: daisy: use new parport device > > > model"). Running "modprobe parport_pc" hangs up: > > > > Can you please send me your .config so that I can test it from my side. > > Attaching two versions: config-full.gz is the real life config from the > machine where I found the issue and config-mini.gz is a minimized config > I was using while bisecting the issue. (I made a mistake and thought > that I have seen the issue with snapshot before both parport commits so > that I ran a full bisect instead of simply checking the two parport > commits which came in the merge window.) Sorry, I didn't get the chance to look at it yet and have kept it pending for this weekend. But just had a quick look and I was wondering if the machine on which you are trying the modprobe has an actual parallel port or the machine is not having any parallel port. And also will you be able to send me a dmesg please. -- Regards Sudip ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression (bisected): "modprobe parport_pc" hangs in current mainline 2019-03-20 9:30 ` Sudip Mukherjee @ 2019-03-20 21:18 ` Michal Kubecek 2019-03-21 22:43 ` Sudip Mukherjee 0 siblings, 1 reply; 10+ messages in thread From: Michal Kubecek @ 2019-03-20 21:18 UTC (permalink / raw) To: Sudip Mukherjee; +Cc: linux-kernel [-- Attachment #1: Type: text/plain, Size: 1103 bytes --] On Wed, Mar 20, 2019 at 09:30:59AM +0000, Sudip Mukherjee wrote: > Sorry, I didn't get the chance to look at it yet and have kept it > pending for this weekend. But just had a quick look and I was > wondering if the machine on which you are trying the modprobe has an > actual parallel port or the machine is not having any parallel port. > And also will you be able to send me a dmesg please. Attaching dmesg output from a virtual machine which doesn't seem to have a (virtual) parallel port. This part: [ 63.962283] parport_pc 00:05: reported by Plug and Play ACPI [ 63.962469] parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE] [ 64.061723] ppdev: user-space parallel port driver was after I manually killed "/sbin/modprobe -q -- parport_lowlevel" which was started during boot. Tomorrow (when I'm in the office) I'll check what happens when I add a parallel port to the VM and also send you dmesg output from the physical machine where I first noticed the issue. I'm quite sure it has parallel port on its motherboard but it might be disabled in BIOS, I'll have to check. Michal Kubecek [-- Attachment #2: dmesg-vm-5.1-rc1.gz --] [-- Type: application/x-gzip, Size: 20932 bytes --] ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression (bisected): "modprobe parport_pc" hangs in current mainline 2019-03-20 21:18 ` Michal Kubecek @ 2019-03-21 22:43 ` Sudip Mukherjee 2019-03-22 6:13 ` Michal Kubecek 0 siblings, 1 reply; 10+ messages in thread From: Sudip Mukherjee @ 2019-03-21 22:43 UTC (permalink / raw) To: Michal Kubecek; +Cc: linux-kernel HI Michal, On Wed, Mar 20, 2019 at 9:18 PM Michal Kubecek <mkubecek@suse.cz> wrote: > > On Wed, Mar 20, 2019 at 09:30:59AM +0000, Sudip Mukherjee wrote: > > Sorry, I didn't get the chance to look at it yet and have kept it > > pending for this weekend. But just had a quick look and I was > > wondering if the machine on which you are trying the modprobe has an > > actual parallel port or the machine is not having any parallel port. > > And also will you be able to send me a dmesg please. > > Attaching dmesg output from a virtual machine which doesn't seem to have > a (virtual) parallel port. This part: > > [ 63.962283] parport_pc 00:05: reported by Plug and Play ACPI > [ 63.962469] parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE] > [ 64.061723] ppdev: user-space parallel port driver > > was after I manually killed "/sbin/modprobe -q -- parport_lowlevel" which > was started during boot. Thanks for testing. I am unable to reproduce the problem in VM or in machine, with or without parallel port. But from your logs it looks like you have an alias set for "parport_lowlevel". When parport module is being loaded if it does not find any port in its list, it will try to load "parport_lowlevel" and that is where you are getting the deadlock. "parport_lowlevel" is not a real module, but instead should be an alias pointing to some real module. I tried by setting an alias of parport_lowlevel" as parport_pc but still could not get the problem. Can you please check in your VM or machine what do you have the alias as? It should be either in "/etc/modprobe.conf" or some conf file in "/etc/modprobe.d" folder. And also, will you be able to test a debug patch on your VM? -- Regards Sudip ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression (bisected): "modprobe parport_pc" hangs in current mainline 2019-03-21 22:43 ` Sudip Mukherjee @ 2019-03-22 6:13 ` Michal Kubecek 2019-03-24 19:38 ` Sudip Mukherjee 0 siblings, 1 reply; 10+ messages in thread From: Michal Kubecek @ 2019-03-22 6:13 UTC (permalink / raw) To: Sudip Mukherjee; +Cc: linux-kernel On Thursday, 21 March 2019 23:43 Sudip Mukherjee wrote: > HI Michal, > > On Wed, Mar 20, 2019 at 9:18 PM Michal Kubecek <mkubecek@suse.cz> wrote: > > On Wed, Mar 20, 2019 at 09:30:59AM +0000, Sudip Mukherjee wrote: > > > Sorry, I didn't get the chance to look at it yet and have kept it > > > pending for this weekend. But just had a quick look and I was > > > wondering if the machine on which you are trying the modprobe has > > > an > > > actual parallel port or the machine is not having any parallel > > > port. > > > And also will you be able to send me a dmesg please. > > > > Attaching dmesg output from a virtual machine which doesn't seem to > > have a (virtual) parallel port. This part: > > > > [ 63.962283] parport_pc 00:05: reported by Plug and Play ACPI > > [ 63.962469] parport0: PC-style at 0x378, irq 7 [PCSPP,TRISTATE] > > [ 64.061723] ppdev: user-space parallel port driver > > > > was after I manually killed "/sbin/modprobe -q -- parport_lowlevel" > > which was started during boot. > > Thanks for testing. I am unable to reproduce the problem in VM or in > machine, with or without parallel port. But from your logs it looks > like you have an alias set for "parport_lowlevel". When parport module > is being loaded if it does not find any port in its list, it will try > to load "parport_lowlevel" and that is where you are getting the > deadlock. "parport_lowlevel" is not a real module, but instead should > be an alias pointing to some real module. I tried by setting an alias > of parport_lowlevel" as parport_pc but still could not get the > problem. > Can you please check in your VM or machine what do you have the alias > as? It should be either in "/etc/modprobe.conf" or some conf file in > "/etc/modprobe.d" folder. You are right, this is in /etc/modprobe.d/00-system which is part of suse-module-tools package: ----------------------------------------------------------------------- alias parport_lowlevel parport_pc # disable DMA for parallel port (bnc#180390) # Please note, the dma= and irq= options require that the io= option also be # specified. options parport_pc dma=none # options parport_pc io=0x378 irq=none # If you have multiple parallel ports, specify them this way: # options parport_pc io=0x378,0x278 irq=none,none ----------------------------------------------------------------------- "bnc#180390" means https://bugzilla.suse.com/show_bug.cgi?id=180390 There is a git repository for suse-module-tools package on github but unfortunately it starts in 2017 and as comment 98 in the bug above shows that the alias line was already in place in 2008, the reason won't be found in OBS history either. Anyway, when I comment out the alias line, "modprobe parport_pc" succeeds immediately and loads parport, parport_pc and ppdev. > And also, will you be able to test a debug patch on your VM? Yes, definitely. Michal ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression (bisected): "modprobe parport_pc" hangs in current mainline 2019-03-22 6:13 ` Michal Kubecek @ 2019-03-24 19:38 ` Sudip Mukherjee 2019-03-25 7:30 ` Michal Kubecek 0 siblings, 1 reply; 10+ messages in thread From: Sudip Mukherjee @ 2019-03-24 19:38 UTC (permalink / raw) To: Michal Kubecek; +Cc: linux-kernel [-- Attachment #1: Type: text/plain, Size: 805 bytes --] Hi Michal, On Fri, Mar 22, 2019 at 07:13:23AM +0100, Michal Kubecek wrote: > On Thursday, 21 March 2019 23:43 Sudip Mukherjee wrote: > > HI Michal, > > > > On Wed, Mar 20, 2019 at 9:18 PM Michal Kubecek <mkubecek@suse.cz> wrote: > > > On Wed, Mar 20, 2019 at 09:30:59AM +0000, Sudip Mukherjee wrote: <snip> > > Can you please check in your VM or machine what do you have the alias > > as? It should be either in "/etc/modprobe.conf" or some conf file in > > "/etc/modprobe.d" folder. > > You are right, this is in /etc/modprobe.d/00-system which is part of > suse-module-tools package: And I was able to reproduce the problem using a vm and Suse Tumblewood with next-20190322. Can you please try the attached patch and test on your vm and machine and check if it fixes the problem. -- Regards Sudip [-- Attachment #2: patch --] [-- Type: text/plain, Size: 499 bytes --] diff --git a/drivers/parport/share.c b/drivers/parport/share.c index 0171b8dbcdcd..f87948fbfc34 100644 --- a/drivers/parport/share.c +++ b/drivers/parport/share.c @@ -274,7 +274,7 @@ static int port_check(struct device *dev, void *dev_drv) int __parport_register_driver(struct parport_driver *drv, struct module *owner, const char *mod_name) { - if (list_empty(&portlist)) + if (list_empty(&portlist) && strcmp(drv->name, "daisy_drv")) get_lowlevel_driver(); if (drv->devmodel) { ^ permalink raw reply related [flat|nested] 10+ messages in thread
* Re: regression (bisected): "modprobe parport_pc" hangs in current mainline 2019-03-24 19:38 ` Sudip Mukherjee @ 2019-03-25 7:30 ` Michal Kubecek 2019-03-25 10:00 ` Sudip Mukherjee 0 siblings, 1 reply; 10+ messages in thread From: Michal Kubecek @ 2019-03-25 7:30 UTC (permalink / raw) To: Sudip Mukherjee; +Cc: linux-kernel On Sun, Mar 24, 2019 at 07:38:38PM +0000, Sudip Mukherjee wrote: > And I was able to reproduce the problem using a vm and Suse Tumblewood with > next-20190322. Can you please try the attached patch and test on your vm and > machine and check if it fixes the problem. > > -- > Regards > Sudip > diff --git a/drivers/parport/share.c b/drivers/parport/share.c > index 0171b8dbcdcd..f87948fbfc34 100644 > --- a/drivers/parport/share.c > +++ b/drivers/parport/share.c > @@ -274,7 +274,7 @@ static int port_check(struct device *dev, void *dev_drv) > int __parport_register_driver(struct parport_driver *drv, struct module *owner, > const char *mod_name) > { > - if (list_empty(&portlist)) > + if (list_empty(&portlist) && strcmp(drv->name, "daisy_drv")) > get_lowlevel_driver(); > > if (drv->devmodel) { Yes, with this patch (on top of v5.1-rc2), both physical machine and VM let the module(s) load cleanly even with the alias line restored. Tested-by: Michal Kubecek <mkubecek@suse.cz> Thank you, Michal ^ permalink raw reply [flat|nested] 10+ messages in thread
* Re: regression (bisected): "modprobe parport_pc" hangs in current mainline 2019-03-25 7:30 ` Michal Kubecek @ 2019-03-25 10:00 ` Sudip Mukherjee 0 siblings, 0 replies; 10+ messages in thread From: Sudip Mukherjee @ 2019-03-25 10:00 UTC (permalink / raw) To: Michal Kubecek; +Cc: linux-kernel On Mon, Mar 25, 2019 at 7:30 AM Michal Kubecek <mkubecek@suse.cz> wrote: > > On Sun, Mar 24, 2019 at 07:38:38PM +0000, Sudip Mukherjee wrote: > > And I was able to reproduce the problem using a vm and Suse Tumblewood with > > next-20190322. Can you please try the attached patch and test on your vm and > > machine and check if it fixes the problem. > > > > -- > > Regards > > Sudip > > > diff --git a/drivers/parport/share.c b/drivers/parport/share.c > > index 0171b8dbcdcd..f87948fbfc34 100644 > > --- a/drivers/parport/share.c > > +++ b/drivers/parport/share.c > > @@ -274,7 +274,7 @@ static int port_check(struct device *dev, void *dev_drv) > > int __parport_register_driver(struct parport_driver *drv, struct module *owner, > > const char *mod_name) > > { > > - if (list_empty(&portlist)) > > + if (list_empty(&portlist) && strcmp(drv->name, "daisy_drv")) > > get_lowlevel_driver(); > > > > if (drv->devmodel) { > > Yes, with this patch (on top of v5.1-rc2), both physical machine and VM > let the module(s) load cleanly even with the alias line restored. > > Tested-by: Michal Kubecek <mkubecek@suse.cz> Thanks Michal. I will add it to my queue with your Tested-by. btw, I think I liked using Suse. :) -- Regards Sudip ^ permalink raw reply [flat|nested] 10+ messages in thread
end of thread, other threads:[~2019-03-25 10:01 UTC | newest] Thread overview: 10+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 2019-03-13 6:45 regression (bisected): "modprobe parport_pc" hangs in current mainline Michal Kubecek 2019-03-17 17:01 ` Sudip Mukherjee 2019-03-17 18:05 ` Michal Kubecek 2019-03-20 9:30 ` Sudip Mukherjee 2019-03-20 21:18 ` Michal Kubecek 2019-03-21 22:43 ` Sudip Mukherjee 2019-03-22 6:13 ` Michal Kubecek 2019-03-24 19:38 ` Sudip Mukherjee 2019-03-25 7:30 ` Michal Kubecek 2019-03-25 10:00 ` Sudip Mukherjee
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.