* 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.