Messages in this thread | | | From | Christian Löhle <> | Subject | Re: [PATCH] kobject: Safe return of kobject_get_path with NULL | Date | Wed, 23 Jun 2021 14:49:57 +0000 |
| |
This prevents two Oopses I've encountered. (Sorry for the older kernel)
[ 4650.202534] general protection fault: 0000 [#1] PREEMPT SMP [ 4650.202554] Modules linked in: serio_raw atkbd libps2 aesni_intel aes_x86_64 crypto_simd glue_helper ahci libahci i8042 fam15h_power hwmon_vid k10temp scsi_mon ftdi_sio usbserial exfat ext4 crc16 mbcache jbd2 fscrypto sg fuse nls_iso8859_1 nls_cp437 vfat fat nfsv3 nfs_acl nfsv4 dns_resolver nfs lockd grace sunrpc fscache e1000e ptp pps_core i915 intel_gtt usbmon button serio ehci_pci ehci_hcd r8169 mii xhci_pci xhci_hcd libcrc32c crc32c_generic crc32c_intel crc32_pclmul radeon i2c_algo_bit drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops ttm drm agpgart ata_piix pata_acpi ata_generic libata uas usb_storage sd_mod scsi_mod isofs loop overlay ip_tables x_tables sch_fq_codel tpm_tis tpm_tis_core tpm lpc_ich ie31200_edac mei_me mei shpchp parport_pc battery fan thermal i2c_i801 intel_rapl_perf [ 4650.202746] intel_cstate ghash_clmulni_intel cryptd crct10dif_pclmul ppdev parport mousedev input_leds iTCO_wdt iTCO_vendor_support kvm irqbypass evdev mac_hid eeepc_wmi asus_wmi sparse_keymap wmi led_class video coretemp intel_powerclamp x86_pkg_temp_thermal intel_rapl cfg80211 rfkill hid_generic usbhid hid usbcore usb_common [ 4650.202824] CPU: 0 PID: 20750 Comm: python3 Not tainted 4.13.5-1hyLinux #22 [ 4650.202840] Hardware name: ASUS All Series/Z97-P, BIOS 2905 12/04/2015 [ 4650.202855] task: ffff88020f61cb00 task.stack: ffffc90002814000 [ 4650.202873] RIP: 0010:kobject_get_path+0x30/0xf0 [ 4650.202883] RSP: 0018:ffffc900028179e0 EFLAGS: 00010206 [ 4650.202896] RAX: 0000000000000005 RBX: 000000000000000b RCX: 0000000000000000 [ 4650.202912] RDX: 0000000000001000 RSI: 00000000014000c0 RDI: 0000000000000005 [ 4650.202928] RBP: ffffc90002817a08 R08: ffff880217002c00 R09: ffff88020d66b000 [ 4650.202945] R10: ffffea0008537b00 R11: 0000000000000001 R12: 372e63313a30303a [ 4650.202961] R13: ffff88020d650080 R14: 00000000014000c0 R15: ffff880216352120 [ 4650.202977] FS: 00007f5119e3a640(0000) GS:ffff88021fa00000(0000) knlGS:0000000000000000 [ 4650.202996] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 4650.203009] CR2: 000055a91ad5d130 CR3: 0000000210c09000 CR4: 00000000001406f0 [ 4650.203026] Call Trace: [ 4650.203035] kobject_uevent_env+0xcf/0x4e0 [ 4650.203047] disk_check_events+0xe3/0x140 [ 4650.203057] disk_clear_events+0x77/0x110 [ 4650.203070] check_disk_change+0x27/0x70 [ 4650.203082] sd_open+0x75/0x190 [sd_mod] [ 4650.203092] __blkdev_get+0x348/0x430 [ 4650.203102] ? __follow_mount_rcu.isra.30+0x68/0xe0 [ 4650.203115] blkdev_get+0x127/0x340 [ 4650.203125] blkdev_open+0x79/0x90 [ 4650.203135] do_dentry_open+0x1bc/0x2e0 [ 4650.203146] ? bd_acquire+0xd0/0xd0 [ 4650.203156] vfs_open+0x4e/0x80 [ 4650.203164] path_openat+0x51e/0x13a0 [ 4650.203174] ? mntput_no_expire+0x2c/0x1a0 [ 4650.203184] ? mntput+0x24/0x40 [ 4650.203194] do_filp_open+0x9b/0x110 [ 4650.203204] ? __check_object_size+0xb1/0x190 [ 4650.203215] ? __alloc_fd+0xb2/0x160 [ 4650.203225] do_sys_open+0x1ba/0x250 [ 4650.203233] ? do_sys_open+0x1ba/0x250 [ 4650.203243] SyS_openat+0x14/0x20 [ 4650.203253] entry_SYSCALL_64_fastpath+0x1a/0xa5 [ 4650.203265] RIP: 0033:0x7f511eb0efe4 [ 4650.203274] RSP: 002b:00007f5119e37830 EFLAGS: 00000293 ORIG_RAX: 0000000000000101 [ 4650.203292] RAX: ffffffffffffffda RBX: 00007f5104006b40 RCX: 00007f511eb0efe4 [ 4650.203308] RDX: 0000000000080000 RSI: 00007f511b9a0650 RDI: 00000000ffffff9c [ 4650.203324] RBP: 00007f511a70a298 R08: 0000000000000000 R09: 000000000000007c [ 4650.203340] R10: 0000000000000000 R11: 0000000000000293 R12: 0000556257edd1b0 [ 4650.204199] R13: 00007f511d446ab2 R14: ffffffffffffffff R15: 0000000000000000 [ 4650.205027] Code: 57 41 56 41 89 f6 41 55 49 89 fd 41 54 49 89 fc 53 bb 01 00 00 00 eb 13 e8 9e 8a 00 00 4d 8b 64 24 18 8d 5c 03 01 4d 85 e4 74 1a <49> 8b 3c 24 48 85 ff 75 e4 45 31 e4 5b 4c 89 e0 41 5c 41 5d 41 [ 4650.206990] RIP: kobject_get_path+0x30/0xf0 RSP: ffffc900028179e0
[273327.641637] general protection fault: 0000 [#1] PREEMPT SMP [273327.641656] Modules linked in: serio_raw atkbd libps2 aesni_intel aes_x86_64 crypto_simd glue_helper ahci libahci i8042 fam15h_power hwmon_vid k10temp scsi_mon ftdi_sio usbserial exfat ext4 crc16 mbcache jbd2 fscrypto sg fuse nls_iso8859_1 nls_cp437 vfat fat nfsv3 nfs_acl nfsv4 dns_resolver nfs lockd grace sunrpc fscache e1000e ptp pps_core i915 intel_gtt usbmon button serio ehci_pci ehci_hcd r8169 mii xhci_pci xhci_hcd libcrc32c crc32c_generic crc32c_intel crc32_pclmul radeon i2c_algo_bit drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops ttm drm agpgart ata_piix pata_acpi ata_generic libata uas usb_storage sd_mod scsi_mod isofs loop overlay ip_tables x_tables sch_fq_codel tpm_tis tpm_tis_core tpm lpc_ich ie31200_edac mei_me mei shpchp parport_pc battery fan thermal i2c_i801 intel_rapl_perf [273327.641856] intel_cstate ghash_clmulni_intel cryptd crct10dif_pclmul ppdev parport mousedev input_leds iTCO_wdt iTCO_vendor_support kvm irqbypass evdev mac_hid eeepc_wmi asus_wmi sparse_keymap wmi led_class video coretemp intel_powerclamp x86_pkg_temp_thermal intel_rapl cfg80211 rfkill hid_generic usbhid hid usbcore usb_common [273327.641931] CPU: 3 PID: 1636823 Comm: python3 Not tainted 4.13.5-1hyLinux #22 [273327.641947] Hardware name: ASUS All Series/Z97-P, BIOS 2905 12/04/2015 [273327.641962] task: ffff88020bc15a00 task.stack: ffffc9000399c000 [273327.641979] RIP: 0010:kobject_get_path+0x30/0xf0 [273327.641990] RSP: 0018:ffffc9000399f9e0 EFLAGS: 00010206 [273327.642002] RAX: 0000000000000005 RBX: 000000000000000b RCX: 0000000000000000 [273327.642019] RDX: 0000000000001000 RSI: 00000000014000c0 RDI: 0000000000000005 [273327.642035] RBP: ffffc9000399fa08 R08: ffff880217002c00 R09: ffff8802115cd000 [273327.642050] R10: ffffea00084b7b00 R11: 0000000000000001 R12: 372e63313a30303a [273327.642067] R13: ffff88020f8ea080 R14: 00000000014000c0 R15: ffff880216352000 [273327.642083] FS: 00007f6fb4be0640(0000) GS:ffff88021fb80000(0000) knlGS:0000000000000000 [273327.642101] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [273327.642114] CR2: 00007f2762bb3d80 CR3: 0000000214fab000 CR4: 00000000001406e0 [273327.642130] Call Trace: [273327.642139] kobject_uevent_env+0xcf/0x4e0 [273327.642151] disk_check_events+0xe3/0x140 [273327.642161] disk_clear_events+0x77/0x110 [273327.642174] check_disk_change+0x27/0x70 [273327.642185] sd_open+0x75/0x190 [sd_mod] [273327.642195] __blkdev_get+0x348/0x430 [273327.642206] ? __follow_mount_rcu.isra.30+0x68/0xe0 [273327.642218] blkdev_get+0x127/0x340 [273327.642228] blkdev_open+0x79/0x90 [273327.642249] do_dentry_open+0x1bc/0x2e0 [273327.642259] ? bd_acquire+0xd0/0xd0 [273327.642269] vfs_open+0x4e/0x80 [273327.642279] path_openat+0x51e/0x13a0 [273327.642289] ? mntput_no_expire+0x2c/0x1a0 [273327.642299] ? mntput+0x24/0x40 [273327.642310] do_filp_open+0x9b/0x110 [273327.642321] ? __check_object_size+0xb1/0x190 [273327.642332] ? __alloc_fd+0xb2/0x160 [273327.642342] do_sys_open+0x1ba/0x250 [273327.642352] ? do_sys_open+0x1ba/0x250 [273327.642371] SyS_openat+0x14/0x20 [273327.642392] entry_SYSCALL_64_fastpath+0x1a/0xa5 [273327.642403] RIP: 0033:0x7f6fb9a30fe4 [273327.642412] RSP: 002b:00007f6fb4bdd830 EFLAGS: 00000293 ORIG_RAX: 0000000000000101 [273327.642430] RAX: ffffffffffffffda RBX: 00007f6fa400a840 RCX: 00007f6fb9a30fe4 [273327.642447] RDX: 0000000000080000 RSI: 00007f6fb6f5da10 RDI: 00000000ffffff9c [273327.642463] RBP: 00007f6fb846c928 R08: 0000000000000000 R09: 000000000000007c [273327.642480] R10: 0000000000000000 R11: 0000000000000293 R12: 0000562253e6be10 [273327.643330] R13: 00007f6fb8efbb62 R14: ffffffffffffffff R15: 0000000000000000 [273327.644179] Code: 57 41 56 41 89 f6 41 55 49 89 fd 41 54 49 89 fc 53 bb 01 00 00 00 eb 13 e8 9e 8a 00 00 4d 8b 64 24 18 8d 5c 03 01 4d 85 e4 74 1a <49> 8b 3c 24 48 85 ff 75 e4 45 31 e4 5b 4c 89 e0 41 5c 41 5d 41 [273327.645958] RIP: kobject_get_path+0x30/0xf0 RSP: ffffc9000399f9e0 Hyperstone GmbH | Line-Eid-Strasse 3 | 78467 Konstanz Managing Directors: Dr. Jan Peter Berns. Commercial register of local courts: Freiburg HRB381782
| |