net/ipv4/ip_vti.c: BUG: unable to handle kernel paging request

From: Randy Dunlap
Date: Wed Mar 13 2019 - 11:22:29 EST


on v5.0-11053-gebc551f2b8f9 of March 12, 2019:

Loading, unloading, & loading this module causes a BUG:


[ 3436.201505] calling vti_init+0x0/0x1000 [ip_vti] @ 30280
[ 3436.201534] IPv4 over IPsec tunneling driver
[ 3436.208024] initcall vti_init+0x0/0x1000 [ip_vti] returned 0 after 6326 usecs
[ 3436.566306] calling vti_init+0x0/0x1000 [ip_vti] @ 30298
[ 3436.566334] IPv4 over IPsec tunneling driver
[ 3436.573954] BUG: unable to handle kernel paging request at fffffbfff8567d1f
[ 3436.573981] #PF error: [normal kernel read fault]
[ 3436.573994] PGD 12c992067 P4D 12c992067 PUD 12c98e067 PMD 74368067 PTE 0
[ 3436.574018] Oops: 0000 [#1] PREEMPT SMP KASAN PTI
[ 3436.574034] CPU: 0 PID: 30298 Comm: modprobe Not tainted 5.0.0mod #1
[ 3436.574050] Hardware name: TOSHIBA PORTEGE R835/Portable PC, BIOS Version 4.10 01/08/2013
[ 3436.574077] RIP: 0010:xfrm4_tunnel_register+0xa5/0x1c0 [tunnel4]
[ 3436.574096] Code: ea 03 80 3c 02 00 0f 85 02 01 00 00 49 8b 1c 24 48 85 db 74 7c 48 8d 7b 18 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 04 02 84 c0 74 08 3c 03 0f 8e b3 00 00 00 44 3b 73 18 7c 51
[ 3436.574130] RSP: 0018:ffff88811bf6f8c0 EFLAGS: 00010a02
[ 3436.574149] RAX: dffffc0000000000 RBX: ffffffffc2b3e8e0 RCX: 1ffff110237edeec
[ 3436.574170] RDX: 1ffffffff8567d1f RSI: ffffffffad748860 RDI: ffffffffc2b3e8f8
[ 3436.574189] RBP: ffff88811bf6f8e8 R08: 0000000000000000 R09: aaaaaaaaaaaaaaad
[ 3436.574210] R10: ffff88811bf6f8b0 R11: fffffbfff8379400 R12: ffffffffc1bca3f0
[ 3436.574228] R13: ffff88811bf6f9c0 R14: 0000000000000000 R15: ffffffffc2b668e0
[ 3436.574249] FS: 00007f875c44bb80(0000) GS:ffff88811ee00000(0000) knlGS:0000000000000000
[ 3436.574268] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 3436.574285] CR2: fffffbfff8567d1f CR3: 000000010bd84006 CR4: 00000000000606f0
[ 3436.574302] Call Trace:
[ 3436.574322] ? 0xffffffffc1bd0000
[ 3436.574343] vti_init+0x85/0x1000 [ip_vti]
[ 3436.574364] do_one_initcall+0xab/0x2ad
[ 3436.574381] ? initcall_blacklisted+0x190/0x190
[ 3436.574400] ? kasan_unpoison_shadow+0x35/0x50
[ 3436.574421] ? kasan_unpoison_shadow+0x35/0x50
[ 3436.574437] ? kasan_unpoison_shadow+0x35/0x50
[ 3436.574453] ? kasan_poison_shadow+0x2f/0x40
[ 3436.574469] ? __asan_register_globals+0x5a/0x70
[ 3436.574487] do_init_module+0x1c7/0x548
[ 3436.574504] load_module+0x46bb/0x5da0
[ 3436.574535] ? layout_and_allocate+0x2d00/0x2d00
[ 3436.574552] ? kernel_read+0x90/0x130
[ 3436.574569] ? kasan_check_write+0x14/0x20
[ 3436.574585] ? kernel_read_file+0x247/0x630
[ 3436.574615] __do_sys_finit_module+0x193/0x1b0
[ 3436.574631] ? __do_sys_finit_module+0x193/0x1b0
[ 3436.574648] ? __ia32_sys_init_module+0xa0/0xa0
[ 3436.574666] ? vfs_statx_fd+0x45/0x80
[ 3436.574683] ? kasan_check_write+0x14/0x20
[ 3436.574698] ? fput_many+0x1b/0x130
[ 3436.574714] ? fput+0xe/0x10
[ 3436.574728] ? ksys_mmap_pgoff+0x3d9/0xb50
[ 3436.574754] __x64_sys_finit_module+0x6e/0xb0
[ 3436.574770] ? __x64_sys_newfstat+0x4f/0x70
[ 3436.574787] do_syscall_64+0xaa/0x310
[ 3436.574803] ? prepare_exit_to_usermode+0x8b/0x150
[ 3436.574822] entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 3436.574839] RIP: 0033:0x7f875bb34129
[ 3436.574856] Code: 00 f3 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 3f 0d 2c 00 f7 d8 64 89 01 48
[ 3436.574892] RSP: 002b:00007ffcc75ec528 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
[ 3436.574913] RAX: ffffffffffffffda RBX: 0000557d41658cd0 RCX: 00007f875bb34129
[ 3436.574930] RDX: 0000000000000000 RSI: 0000557d41446548 RDI: 0000000000000003
[ 3436.574947] RBP: 0000557d41446548 R08: 0000000000000000 R09: 0000557d41658400
[ 3436.574966] R10: 0000000000000003 R11: 0000000000000246 R12: 0000000000040000
[ 3436.574984] R13: 0000557d41658c30 R14: 0000000000000000 R15: 0000557d41658cd0
[ 3436.575009] Modules linked in: ip_vti(+) ip_tunnel tunnel4 gre xfrm_ipcomp af_packet auth_rpcgss rdma_cm iw_cm ib_cm sunrpc nhc_udp nhc_dest nhc_hop nhc_ipv6 nhc_mobility nhc_fragment nhc_routing 6lowpan xfrm_algo inet_diag sctp qtnfmac rtl_pci btcoexist rtl8723_common rtlwifi mt76_usb mt76 rsi_91x btrsi cmac bluetooth drbg ansi_cprng ecdh_generic rt2800mmio rt2800lib rt2x00mmio rt2x00lib crc_itu_t atmel libipw brcmutil cordic bcma wlcore crc7 wl1251 cw1200_core lib80211 orinoco rpmsg_core ath6kl_core rng_core ath9k_common ath9k_hw ath mwifiex libertas rndis_host vsock wimax pppox ppp_generic vrf psnap macvlan cdc_ncm cdc_ether phonet cdc_wdm usbnet mii ipvlan fddi ntb_transport ntb cc770 sja1000 can_dev rapidio thunderbolt arcnet net_failover realtek 8390 encx24j600_regmap serdev sungem_phy ssb dca w5100 stmmac_platform stmmac mtd qed crc8 eeprom_93cx6 mlx4_ib ib_uverbs ib_core mlx4_core ip6_tunnel tunnel6 objagg psample parman mlxsw_pci mlxsw_core pcmcia pcmcia_core b53_serdes ksz9477
[ 3436.575122] ksz_common dsa_loop_bdinfo dsa_core phylink failover hdlc lapb hdlcdrv ax25 mdio_i2c mdio_mux mux_core of_mdio fixed_phy libphy ip6_udp_tunnel udp_tunnel vringh virtio_ring virtio slhc ppdev parport_pc parport fuse ctr ccm xt_tcpudp ip6t_rpfilter ip6t_REJECT nf_reject_ipv6 ipt_REJECT nf_reject_ipv4 xt_conntrack ip_set nfnetlink ebtable_nat ebtable_broute bridge stp llc ip6table_nat ip6table_mangle ip6table_raw ip6table_security iptable_nat nf_nat nf_conntrack nf_defrag_ipv6 nf_defrag_ipv4 iptable_mangle iptable_raw iptable_security ebtable_filter ebtables ip6table_filter ip6_tables iptable_filter ip_tables x_tables bpfilter coretemp btrfs msr hwmon intel_rapl uvcvideo x86_pkg_temp_thermal hid_generic intel_powerclamp xor usbmouse videobuf2_vmalloc usbkbd videobuf2_memops zstd_compress videobuf2_v4l2 usbhid kvm_intel videobuf2_common videodev hid raid6_pq iTCO_wdt media kvm libcrc32c iTCO_vendor_support mei_hdcp arc4 zstd_decompress irqbypass crct10dif_pclmul mac80211
[ 3436.575367] crc32_pclmul crc32c_intel ghash_clmulni_intel snd_hda_codec_hdmi snd_hda_codec_realtek snd_hda_codec_generic ledtrig_audio iwlwifi aesni_intel snd_hda_intel aes_x86_64 snd_hda_codec crypto_simd cryptd snd_hda_core glue_helper snd_hwdep sdhci_pci cfg80211 snd_pcm uio_pdrv_genirq intel_cstate cqhci intel_uncore sdhci snd_timer intel_rapl_perf toshiba_acpi joydev sparse_keymap mmc_core wmi sr_mod uio input_leds snd rfkill cdrom mousedev led_class pcspkr serio_raw industrialio toshiba_haps soundcore rtc_cmos pcc_cpufreq evdev thermal mei_me lpc_ich mac_hid mei battery ac sg dm_multipath dm_mod scsi_dh_rdac scsi_dh_emc scsi_dh_alua autofs4 [last unloaded: ip_vti]
[ 3436.575673] CR2: fffffbfff8567d1f
[ 3436.575689] ---[ end trace 2b358acd97a648ce ]---
[ 3436.575709] RIP: 0010:xfrm4_tunnel_register+0xa5/0x1c0 [tunnel4]
[ 3436.575726] Code: ea 03 80 3c 02 00 0f 85 02 01 00 00 49 8b 1c 24 48 85 db 74 7c 48 8d 7b 18 48 b8 00 00 00 00 00 fc ff df 48 89 fa 48 c1 ea 03 <0f> b6 04 02 84 c0 74 08 3c 03 0f 8e b3 00 00 00 44 3b 73 18 7c 51
[ 3436.575765] RSP: 0018:ffff88811bf6f8c0 EFLAGS: 00010a02
[ 3436.575783] RAX: dffffc0000000000 RBX: ffffffffc2b3e8e0 RCX: 1ffff110237edeec
[ 3436.575802] RDX: 1ffffffff8567d1f RSI: ffffffffad748860 RDI: ffffffffc2b3e8f8
[ 3436.575821] RBP: ffff88811bf6f8e8 R08: 0000000000000000 R09: aaaaaaaaaaaaaaad
[ 3436.575840] R10: ffff88811bf6f8b0 R11: fffffbfff8379400 R12: ffffffffc1bca3f0
[ 3436.575859] R13: ffff88811bf6f9c0 R14: 0000000000000000 R15: ffffffffc2b668e0
[ 3436.575879] FS: 00007f875c44bb80(0000) GS:ffff88811ee00000(0000) knlGS:0000000000000000
[ 3436.575900] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[ 3436.575917] CR2: fffffbfff8567d1f CR3: 000000010bd84006 CR4: 00000000000606f0
[ 3436.575937] BUG: sleeping function called from invalid context at ../include/linux/percpu-rwsem.h:34
[ 3436.575960] in_atomic(): 0, irqs_disabled(): 1, pid: 30298, name: modprobe
[ 3436.575978] INFO: lockdep is turned off.
[ 3436.575995] CPU: 0 PID: 30298 Comm: modprobe Tainted: G D 5.0.0mod #1
[ 3436.576015] Hardware name: TOSHIBA PORTEGE R835/Portable PC, BIOS Version 4.10 01/08/2013
[ 3436.576034] Call Trace:
[ 3436.576049] dump_stack+0x7b/0xb5
[ 3436.576066] ___might_sleep+0x286/0x320
[ 3436.576084] __might_sleep+0xa1/0x1b0
[ 3436.576101] exit_signals+0x73/0x6c0
[ 3436.576117] ? get_signal+0x17e0/0x17e0
[ 3436.576134] ? __do_sys_finit_module+0x193/0x1b0
[ 3436.576156] do_exit+0x1f0/0x2f50
[ 3436.576172] ? kasan_check_write+0x14/0x20
[ 3436.576187] ? fput_many+0x1b/0x130
[ 3436.576204] ? ksys_mmap_pgoff+0x3d9/0xb50
[ 3436.576222] ? mm_update_next_owner+0x650/0x650
[ 3436.576246] ? __x64_sys_finit_module+0x6e/0xb0
[ 3436.576263] ? __x64_sys_newfstat+0x4f/0x70
[ 3436.576283] rewind_stack_do_exit+0x17/0x20
[ 3436.576298] RIP: 0033:0x7f875bb34129
[ 3436.576313] Code: 00 f3 c3 66 2e 0f 1f 84 00 00 00 00 00 0f 1f 40 00 48 89 f8 48 89 f7 48 89 d6 48 89 ca 4d 89 c2 4d 89 c8 4c 8b 4c 24 08 0f 05 <48> 3d 01 f0 ff ff 73 01 c3 48 8b 0d 3f 0d 2c 00 f7 d8 64 89 01 48
[ 3436.576347] RSP: 002b:00007ffcc75ec528 EFLAGS: 00000246 ORIG_RAX: 0000000000000139
[ 3436.576366] RAX: ffffffffffffffda RBX: 0000557d41658cd0 RCX: 00007f875bb34129
[ 3436.576384] RDX: 0000000000000000 RSI: 0000557d41446548 RDI: 0000000000000003
[ 3436.576402] RBP: 0000557d41446548 R08: 0000000000000000 R09: 0000557d41658400
[ 3436.576421] R10: 0000000000000003 R11: 0000000000000246 R12: 0000000000040000
[ 3436.576440] R13: 0000557d41658c30 R14: 0000000000000000 R15: 0000557d41658cd0

--
~Randy