lkml.org 
[lkml]   [2019]   [Mar]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: regression (bisected): "modprobe parport_pc" hangs in current mainline
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
[unhandled content-type:application/x-gzip][unhandled content-type:application/x-gzip]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
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
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
\
 
 \ /
  Last update: 2019-03-17 19:06    [W:0.061 / U:8.664 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site