diff for duplicates of <1485535925.4267.1.camel@sandisk.com> diff --git a/a/1.txt b/N1/1.txt index 8a37673..3b7d728 100644 --- a/a/1.txt +++ b/N1/1.txt @@ -9,24 +9,49 @@ v4.10-rc5. That's a great improvement. However, running the srp-test software triggers now a new complaint: [ 215.600386] sd 11:0:0:0: [sdh] Attached SCSI disk -[ 215.609485] sd 11:0:0:0: alua: port group 00 state A non-preferred supports TOlUSNA +[ 215.609485] sd 11:0:0:0: alua: port group 00 state A non-preferred suppo= +rts TOlUSNA [ 215.722900] scsi 13:0:0:0: alua: Detached [ 215.724452] general protection fault: 0000 [#1] SMP -[ 215.724484] Modules linked in: dm_service_time ib_srp scsi_transport_srp target_core_user uio target_core_pscsi target_core_file ib_srpt target_core_iblock target_core_mod brd netconsole xt_CHECKSUM iptable_mangle ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4 nf_nat libcrc32c nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack ipt_REJECT nf_reject_ipv4 xt_tcpudp tun bridge stp llc ebtable_filter ebtables ip6table_filter ip6_tables iptable_filter ip_tables x_tables af_packet ib_ipoib rdma_ucm ib_ucm ib_uverbs ib_umad rdma_cm msr configfs ib_cm iw_cm mlx4_ib ib_core sb_edac edac_core x86_pkg_temp_thermal intel_powerclamp ipmi_ssif coretemp kvm_intel hid_generic kvm usbhid irqbypass crct10dif_pclmul crc32_pclmul crc32c_intel mlx4_core ghash_clmulni_intel iTCO_wdt dcdbas pcbc tg3 -[ 215.724629] iTCO_vendor_support ptp aesni_intel pps_core aes_x86_64 pcspkr crypto_simd libphy ipmi_si glue_helper cryptd ipmi_devintf tpm_tis devlink fjes ipmi_msghandler tpm_tis_core tpm mei_me lpc_ich mei mfd_core button shpchp wmi mgag200 i2c_algo_bit drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops ttm drm sr_mod cdrom ehci_pci ehci_hcd usbcore usb_common sg dm_multipath dm_mod scsi_dh_rdac scsi_dh_emc scsi_dh_alua autofs4 -[ 215.724719] CPU: 9 PID: 8043 Comm: multipathd Not tainted 4.10.0-rc5-dbg+ #1 -[ 215.724748] Hardware name: Dell Inc. PowerEdge R430/03XKDV, BIOS 1.0.2 11/17/2014 +[ 215.724484] Modules linked in: dm_service_time ib_srp scsi_transport_srp= + target_core_user uio target_core_pscsi target_core_file ib_srpt target_cor= +e_iblock target_core_mod brd netconsole xt_CHECKSUM iptable_mangle ipt_MASQ= +UERADE nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4 nf_nat libcrc32c nf_c= +onntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack ipt_REJECT nf_reject= +_ipv4 xt_tcpudp tun bridge stp llc ebtable_filter ebtables ip6table_filter = +ip6_tables iptable_filter ip_tables x_tables af_packet ib_ipoib rdma_ucm ib= +_ucm ib_uverbs ib_umad rdma_cm msr configfs ib_cm iw_cm mlx4_ib ib_core sb_= +edac edac_core x86_pkg_temp_thermal intel_powerclamp ipmi_ssif coretemp kvm= +_intel hid_generic kvm usbhid irqbypass crct10dif_pclmul crc32_pclmul crc32= +c_intel mlx4_core ghash_clmulni_intel iTCO_wdt dcdbas pcbc tg3 +[ 215.724629] iTCO_vendor_support ptp aesni_intel pps_core aes_x86_64 pcs= +pkr crypto_simd libphy ipmi_si glue_helper cryptd ipmi_devintf tpm_tis devl= +ink fjes ipmi_msghandler tpm_tis_core tpm mei_me lpc_ich mei mfd_core butto= +n shpchp wmi mgag200 i2c_algo_bit drm_kms_helper syscopyarea sysfillrect sy= +simgblt fb_sys_fops ttm drm sr_mod cdrom ehci_pci ehci_hcd usbcore usb_comm= +on sg dm_multipath dm_mod scsi_dh_rdac scsi_dh_emc scsi_dh_alua autofs4 +[ 215.724719] CPU: 9 PID: 8043 Comm: multipathd Not tainted 4.10.0-rc5-dbg= ++ #1 +[ 215.724748] Hardware name: Dell Inc. PowerEdge R430/03XKDV, BIOS 1.0.2 1= +1/17/2014 [ 215.724775] task: ffff8801717998c0 task.stack: ffffc90002a9c000 [ 215.724804] RIP: 0010:scsi_device_put+0xb/0x30 [ 215.724829] RSP: 0018:ffffc90002a9faa0 EFLAGS: 00010246 -[ 215.724855] RAX: 6b6b6b6b6b6b6b6b RBX: ffff88038bf85698 RCX: 0000000000000006 -[ 215.724880] RDX: 0000000000000006 RSI: ffff88017179a108 RDI: ffff88038bf85698 -[ 215.724906] RBP: ffffc90002a9faa8 R08: ffff880384786008 R09: 0000000100170007 -[ 215.724932] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88038bf85698 -[ 215.724958] R13: ffff88038919f090 R14: dead000000000100 R15: ffff88038a41dd28 -[ 215.724983] FS: 00007fbf8c6cf700(0000) GS:ffff88046f440000(0000) knlGS:0000000000000000 +[ 215.724855] RAX: 6b6b6b6b6b6b6b6b RBX: ffff88038bf85698 RCX: 00000000000= +00006 +[ 215.724880] RDX: 0000000000000006 RSI: ffff88017179a108 RDI: ffff88038bf= +85698 +[ 215.724906] RBP: ffffc90002a9faa8 R08: ffff880384786008 R09: 00000001001= +70007 +[ 215.724932] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88038bf= +85698 +[ 215.724958] R13: ffff88038919f090 R14: dead000000000100 R15: ffff88038a4= +1dd28 +[ 215.724983] FS: 00007fbf8c6cf700(0000) GS:ffff88046f440000(0000) knlGS:= +0000000000000000 [ 215.725010] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 -[ 215.725035] CR2: 00007f1262ef3ee0 CR3: 000000044f6cc000 CR4: 00000000001406e0 +[ 215.725035] CR2: 00007f1262ef3ee0 CR3: 000000044f6cc000 CR4: 00000000001= +406e0 [ 215.725060] Call Trace: [ 215.725086] scsi_disk_put+0x2d/0x40 [ 215.725110] sd_release+0x3d/0xb0 @@ -45,48 +70,60 @@ software triggers now a new complaint: [ 215.725589] SyS_ioctl+0x3c/0x70 [ 215.725614] entry_SYSCALL_64_fastpath+0x18/0xad [ 215.725641] RIP: 0033:0x7fbf8aca0667 -[ 215.725665] RSP: 002b:00007fbf8c6cd668 EFLAGS: 00000246 ORIG_RAX: 0000000000000010 -[ 215.725692] RAX: ffffffffffffffda RBX: 0000000000000046 RCX: 00007fbf8aca0667 -[ 215.725716] RDX: 00007fbf8006b940 RSI: 00000000c138fd06 RDI: 0000000000000007 -[ 215.725743] RBP: 0000000000000009 R08: 00007fbf8c6cb3c0 R09: 00007fbf8b68d8d8 -[ 215.725768] R10: 0000000000000075 R11: 0000000000000246 R12: 00007fbf8c6cd770 -[ 215.725793] R13: 0000000000000013 R14: 00000000006168f0 R15: 0000000000f74780 -[ 215.725820] Code: bc 24 b8 00 00 00 e8 55 c8 1c 00 48 83 c4 08 48 89 d8 5b 41 5c 41 5d 41 5e 41 5f 5d c3 0f 1f 00 55 48 89 e5 53 48 8b 07 48 89 fb <48> 8b 80 a8 01 00 00 48 8b 38 e8 f6 68 c5 ff 48 8d bb 38 02 00 +[ 215.725665] RSP: 002b:00007fbf8c6cd668 EFLAGS: 00000246 ORIG_RAX: 000000= +0000000010 +[ 215.725692] RAX: ffffffffffffffda RBX: 0000000000000046 RCX: 00007fbf8ac= +a0667 +[ 215.725716] RDX: 00007fbf8006b940 RSI: 00000000c138fd06 RDI: 00000000000= +00007 +[ 215.725743] RBP: 0000000000000009 R08: 00007fbf8c6cb3c0 R09: 00007fbf8b6= +8d8d8 +[ 215.725768] R10: 0000000000000075 R11: 0000000000000246 R12: 00007fbf8c6= +cd770 +[ 215.725793] R13: 0000000000000013 R14: 00000000006168f0 R15: 0000000000f= +74780 +[ 215.725820] Code: bc 24 b8 00 00 00 e8 55 c8 1c 00 48 83 c4 08 48 89 d8 = +5b 41 5c 41 5d 41 5e 41 5f 5d c3 0f 1f 00 55 48 89 e5 53 48 8b 07 48 89 fb = +<48> 8b 80 a8 01 00 00 48 8b 38 e8 f6 68 c5 ff 48 8d bb 38 02 00=20 [ 215.725903] RIP: scsi_device_put+0xb/0x30 RSP: ffffc90002a9faa0 (gdb) list *(scsi_device_put+0xb) 0xffffffff8149fc2b is in scsi_device_put (drivers/scsi/scsi.c:957). -952 * count of the underlying LLDD module. The device is freed once the last -953 * user vanishes. -954 */ -955 void scsi_device_put(struct scsi_device *sdev) -956 { -957 module_put(sdev->host->hostt->module); -958 put_device(&sdev->sdev_gendev); -959 } -960 EXPORT_SYMBOL(scsi_device_put); +952 =A0=A0=A0=A0=A0* count of the underlying LLDD module. =A0The device is = +freed once the last +953 =A0=A0=A0=A0=A0* user vanishes. +954 =A0=A0=A0=A0=A0*/ +955 =A0=A0=A0=A0void scsi_device_put(struct scsi_device *sdev) +956 =A0=A0=A0=A0{ +957 =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0module_put(sdev->host->hostt->modul= +e); +958 =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0put_device(&sdev->sdev_gendev); +959 =A0=A0=A0=A0} +960 =A0=A0=A0=A0EXPORT_SYMBOL(scsi_device_put); 961 (gdb) disas scsi_device_put Dump of assembler code for function scsi_device_put: - 0xffffffff8149fc20 <+0>: push %rbp - 0xffffffff8149fc21 <+1>: mov %rsp,%rbp - 0xffffffff8149fc24 <+4>: push %rbx - 0xffffffff8149fc25 <+5>: mov (%rdi),%rax - 0xffffffff8149fc28 <+8>: mov %rdi,%rbx - 0xffffffff8149fc2b <+11>: mov 0x1a8(%rax),%rax - 0xffffffff8149fc32 <+18>: mov (%rax),%rdi - 0xffffffff8149fc35 <+21>: callq 0xffffffff810f6530 <module_put> - 0xffffffff8149fc3a <+26>: lea 0x238(%rbx),%rdi - 0xffffffff8149fc41 <+33>: callq 0xffffffff814714b0 <put_device> - 0xffffffff8149fc46 <+38>: pop %rbx - 0xffffffff8149fc47 <+39>: pop %rbp - 0xffffffff8149fc48 <+40>: retq + =A0=A00xffffffff8149fc20 <+0>: =A0=A0=A0=A0push =A0=A0%rbp + =A0=A00xffffffff8149fc21 <+1>: =A0=A0=A0=A0mov =A0=A0=A0%rsp,%rbp + =A0=A00xffffffff8149fc24 <+4>: =A0=A0=A0=A0push =A0=A0%rbx + =A0=A00xffffffff8149fc25 <+5>: =A0=A0=A0=A0mov =A0=A0=A0(%rdi),%rax + =A0=A00xffffffff8149fc28 <+8>: =A0=A0=A0=A0mov =A0=A0=A0%rdi,%rbx + =A0=A00xffffffff8149fc2b <+11>: =A0=A0=A0mov =A0=A0=A00x1a8(%rax),%rax + =A0=A00xffffffff8149fc32 <+18>: =A0=A0=A0mov =A0=A0=A0(%rax),%rdi + =A0=A00xffffffff8149fc35 <+21>: =A0=A0=A0callq =A00xffffffff810f6530 <modu= +le_put> + =A0=A00xffffffff8149fc3a <+26>: =A0=A0=A0lea =A0=A0=A00x238(%rbx),%rdi + =A0=A00xffffffff8149fc41 <+33>: =A0=A0=A0callq =A00xffffffff814714b0 <put_= +device> + =A0=A00xffffffff8149fc46 <+38>: =A0=A0=A0pop =A0=A0=A0%rbx + =A0=A00xffffffff8149fc47 <+39>: =A0=A0=A0pop =A0=A0=A0%rbp + =A0=A00xffffffff8149fc48 <+40>: =A0=A0=A0retq =A0=A0=A0 End of assembler dump. -(gdb) print &((struct Scsi_Host *)0)->hostt -$2 = (struct scsi_host_template **) 0x1a8 <irq_stack_union+424> +(gdb) print &((struct Scsi_Host *)0)->hostt =A0 +$2 =3D (struct scsi_host_template **) 0x1a8 <irq_stack_union+424> Apparently scsi_device_put() was called for a SCSI device that was already freed (memory poisoning was enabled in my test). This is something I had not yet seen before. -Bart. +Bart.= diff --git a/a/content_digest b/N1/content_digest index 4fa1105..4c6c12e 100644 --- a/a/content_digest +++ b/N1/content_digest @@ -22,15 +22,15 @@ "ref\037ab009a-bc2d-d2ae-a875-269ab563a430@fb.com\0" "ref\09cbf0ce5-ed79-0252-fd2d-34bebaafffa3@fb.com\0" "From\0Bart Van Assche <Bart.VanAssche@sandisk.com>\0" - "Subject\0Re: split scsi passthrough fields out of struct request V2\0" + "Subject\0Re: [dm-devel] split scsi passthrough fields out of struct request V2\0" "Date\0Fri, 27 Jan 2017 16:52:25 +0000\0" "To\0hch@lst.de <hch@lst.de>" " axboe@fb.com <axboe@fb.com>\0" - "Cc\0linux-block@vger.kernel.org <linux-block@vger.kernel.org>" - linux-scsi@vger.kernel.org <linux-scsi@vger.kernel.org> - snitzer@redhat.com <snitzer@redhat.com> + "Cc\0linux-scsi@vger.kernel.org <linux-scsi@vger.kernel.org>" linux-raid@vger.kernel.org <linux-raid@vger.kernel.org> dm-devel@redhat.com <dm-devel@redhat.com> + linux-block@vger.kernel.org <linux-block@vger.kernel.org> + snitzer@redhat.com <snitzer@redhat.com> " j-nomura@ce.jp.nec.com <j-nomura@ce.jp.nec.com>\0" "\00:1\0" "b\0" @@ -45,24 +45,49 @@ "software triggers now a new complaint:\n" "\n" "[ 215.600386] sd 11:0:0:0: [sdh] Attached SCSI disk\n" - "[ 215.609485] sd 11:0:0:0: alua: port group 00 state A non-preferred supports TOlUSNA\n" + "[ 215.609485] sd 11:0:0:0: alua: port group 00 state A non-preferred suppo=\n" + "rts TOlUSNA\n" "[ 215.722900] scsi 13:0:0:0: alua: Detached\n" "[ 215.724452] general protection fault: 0000 [#1] SMP\n" - "[ 215.724484] Modules linked in: dm_service_time ib_srp scsi_transport_srp target_core_user uio target_core_pscsi target_core_file ib_srpt target_core_iblock target_core_mod brd netconsole xt_CHECKSUM iptable_mangle ipt_MASQUERADE nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4 nf_nat libcrc32c nf_conntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack ipt_REJECT nf_reject_ipv4 xt_tcpudp tun bridge stp llc ebtable_filter ebtables ip6table_filter ip6_tables iptable_filter ip_tables x_tables af_packet ib_ipoib rdma_ucm ib_ucm ib_uverbs ib_umad rdma_cm msr configfs ib_cm iw_cm mlx4_ib ib_core sb_edac edac_core x86_pkg_temp_thermal intel_powerclamp ipmi_ssif coretemp kvm_intel hid_generic kvm usbhid irqbypass crct10dif_pclmul crc32_pclmul crc32c_intel mlx4_core ghash_clmulni_intel iTCO_wdt dcdbas pcbc tg3\n" - "[ 215.724629] iTCO_vendor_support ptp aesni_intel pps_core aes_x86_64 pcspkr crypto_simd libphy ipmi_si glue_helper cryptd ipmi_devintf tpm_tis devlink fjes ipmi_msghandler tpm_tis_core tpm mei_me lpc_ich mei mfd_core button shpchp wmi mgag200 i2c_algo_bit drm_kms_helper syscopyarea sysfillrect sysimgblt fb_sys_fops ttm drm sr_mod cdrom ehci_pci ehci_hcd usbcore usb_common sg dm_multipath dm_mod scsi_dh_rdac scsi_dh_emc scsi_dh_alua autofs4\n" - "[ 215.724719] CPU: 9 PID: 8043 Comm: multipathd Not tainted 4.10.0-rc5-dbg+ #1\n" - "[ 215.724748] Hardware name: Dell Inc. PowerEdge R430/03XKDV, BIOS 1.0.2 11/17/2014\n" + "[ 215.724484] Modules linked in: dm_service_time ib_srp scsi_transport_srp=\n" + " target_core_user uio target_core_pscsi target_core_file ib_srpt target_cor=\n" + "e_iblock target_core_mod brd netconsole xt_CHECKSUM iptable_mangle ipt_MASQ=\n" + "UERADE nf_nat_masquerade_ipv4 iptable_nat nf_nat_ipv4 nf_nat libcrc32c nf_c=\n" + "onntrack_ipv4 nf_defrag_ipv4 xt_conntrack nf_conntrack ipt_REJECT nf_reject=\n" + "_ipv4 xt_tcpudp tun bridge stp llc ebtable_filter ebtables ip6table_filter =\n" + "ip6_tables iptable_filter ip_tables x_tables af_packet ib_ipoib rdma_ucm ib=\n" + "_ucm ib_uverbs ib_umad rdma_cm msr configfs ib_cm iw_cm mlx4_ib ib_core sb_=\n" + "edac edac_core x86_pkg_temp_thermal intel_powerclamp ipmi_ssif coretemp kvm=\n" + "_intel hid_generic kvm usbhid irqbypass crct10dif_pclmul crc32_pclmul crc32=\n" + "c_intel mlx4_core ghash_clmulni_intel iTCO_wdt dcdbas pcbc tg3\n" + "[ 215.724629] iTCO_vendor_support ptp aesni_intel pps_core aes_x86_64 pcs=\n" + "pkr crypto_simd libphy ipmi_si glue_helper cryptd ipmi_devintf tpm_tis devl=\n" + "ink fjes ipmi_msghandler tpm_tis_core tpm mei_me lpc_ich mei mfd_core butto=\n" + "n shpchp wmi mgag200 i2c_algo_bit drm_kms_helper syscopyarea sysfillrect sy=\n" + "simgblt fb_sys_fops ttm drm sr_mod cdrom ehci_pci ehci_hcd usbcore usb_comm=\n" + "on sg dm_multipath dm_mod scsi_dh_rdac scsi_dh_emc scsi_dh_alua autofs4\n" + "[ 215.724719] CPU: 9 PID: 8043 Comm: multipathd Not tainted 4.10.0-rc5-dbg=\n" + "+ #1\n" + "[ 215.724748] Hardware name: Dell Inc. PowerEdge R430/03XKDV, BIOS 1.0.2 1=\n" + "1/17/2014\n" "[ 215.724775] task: ffff8801717998c0 task.stack: ffffc90002a9c000\n" "[ 215.724804] RIP: 0010:scsi_device_put+0xb/0x30\n" "[ 215.724829] RSP: 0018:ffffc90002a9faa0 EFLAGS: 00010246\n" - "[ 215.724855] RAX: 6b6b6b6b6b6b6b6b RBX: ffff88038bf85698 RCX: 0000000000000006\n" - "[ 215.724880] RDX: 0000000000000006 RSI: ffff88017179a108 RDI: ffff88038bf85698\n" - "[ 215.724906] RBP: ffffc90002a9faa8 R08: ffff880384786008 R09: 0000000100170007\n" - "[ 215.724932] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88038bf85698\n" - "[ 215.724958] R13: ffff88038919f090 R14: dead000000000100 R15: ffff88038a41dd28\n" - "[ 215.724983] FS: 00007fbf8c6cf700(0000) GS:ffff88046f440000(0000) knlGS:0000000000000000\n" + "[ 215.724855] RAX: 6b6b6b6b6b6b6b6b RBX: ffff88038bf85698 RCX: 00000000000=\n" + "00006\n" + "[ 215.724880] RDX: 0000000000000006 RSI: ffff88017179a108 RDI: ffff88038bf=\n" + "85698\n" + "[ 215.724906] RBP: ffffc90002a9faa8 R08: ffff880384786008 R09: 00000001001=\n" + "70007\n" + "[ 215.724932] R10: 0000000000000000 R11: 0000000000000000 R12: ffff88038bf=\n" + "85698\n" + "[ 215.724958] R13: ffff88038919f090 R14: dead000000000100 R15: ffff88038a4=\n" + "1dd28\n" + "[ 215.724983] FS: 00007fbf8c6cf700(0000) GS:ffff88046f440000(0000) knlGS:=\n" + "0000000000000000\n" "[ 215.725010] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033\n" - "[ 215.725035] CR2: 00007f1262ef3ee0 CR3: 000000044f6cc000 CR4: 00000000001406e0\n" + "[ 215.725035] CR2: 00007f1262ef3ee0 CR3: 000000044f6cc000 CR4: 00000000001=\n" + "406e0\n" "[ 215.725060] Call Trace:\n" "[ 215.725086] scsi_disk_put+0x2d/0x40\n" "[ 215.725110] sd_release+0x3d/0xb0\n" @@ -81,50 +106,62 @@ "[ 215.725589] SyS_ioctl+0x3c/0x70\n" "[ 215.725614] entry_SYSCALL_64_fastpath+0x18/0xad\n" "[ 215.725641] RIP: 0033:0x7fbf8aca0667\n" - "[ 215.725665] RSP: 002b:00007fbf8c6cd668 EFLAGS: 00000246 ORIG_RAX: 0000000000000010\n" - "[ 215.725692] RAX: ffffffffffffffda RBX: 0000000000000046 RCX: 00007fbf8aca0667\n" - "[ 215.725716] RDX: 00007fbf8006b940 RSI: 00000000c138fd06 RDI: 0000000000000007\n" - "[ 215.725743] RBP: 0000000000000009 R08: 00007fbf8c6cb3c0 R09: 00007fbf8b68d8d8\n" - "[ 215.725768] R10: 0000000000000075 R11: 0000000000000246 R12: 00007fbf8c6cd770\n" - "[ 215.725793] R13: 0000000000000013 R14: 00000000006168f0 R15: 0000000000f74780\n" - "[ 215.725820] Code: bc 24 b8 00 00 00 e8 55 c8 1c 00 48 83 c4 08 48 89 d8 5b 41 5c 41 5d 41 5e 41 5f 5d c3 0f 1f 00 55 48 89 e5 53 48 8b 07 48 89 fb <48> 8b 80 a8 01 00 00 48 8b 38 e8 f6 68 c5 ff 48 8d bb 38 02 00 \n" + "[ 215.725665] RSP: 002b:00007fbf8c6cd668 EFLAGS: 00000246 ORIG_RAX: 000000=\n" + "0000000010\n" + "[ 215.725692] RAX: ffffffffffffffda RBX: 0000000000000046 RCX: 00007fbf8ac=\n" + "a0667\n" + "[ 215.725716] RDX: 00007fbf8006b940 RSI: 00000000c138fd06 RDI: 00000000000=\n" + "00007\n" + "[ 215.725743] RBP: 0000000000000009 R08: 00007fbf8c6cb3c0 R09: 00007fbf8b6=\n" + "8d8d8\n" + "[ 215.725768] R10: 0000000000000075 R11: 0000000000000246 R12: 00007fbf8c6=\n" + "cd770\n" + "[ 215.725793] R13: 0000000000000013 R14: 00000000006168f0 R15: 0000000000f=\n" + "74780\n" + "[ 215.725820] Code: bc 24 b8 00 00 00 e8 55 c8 1c 00 48 83 c4 08 48 89 d8 =\n" + "5b 41 5c 41 5d 41 5e 41 5f 5d c3 0f 1f 00 55 48 89 e5 53 48 8b 07 48 89 fb =\n" + "<48> 8b 80 a8 01 00 00 48 8b 38 e8 f6 68 c5 ff 48 8d bb 38 02 00=20\n" "[ 215.725903] RIP: scsi_device_put+0xb/0x30 RSP: ffffc90002a9faa0\n" "\n" "(gdb) list *(scsi_device_put+0xb)\n" "0xffffffff8149fc2b is in scsi_device_put (drivers/scsi/scsi.c:957).\n" - "952 \302\240\302\240\302\240\302\240\302\240* count of the underlying LLDD module. \302\240The device is freed once the last\n" - "953 \302\240\302\240\302\240\302\240\302\240* user vanishes.\n" - "954 \302\240\302\240\302\240\302\240\302\240*/\n" - "955 \302\240\302\240\302\240\302\240void scsi_device_put(struct scsi_device *sdev)\n" - "956 \302\240\302\240\302\240\302\240{\n" - "957 \302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240module_put(sdev->host->hostt->module);\n" - "958 \302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240\302\240put_device(&sdev->sdev_gendev);\n" - "959 \302\240\302\240\302\240\302\240}\n" - "960 \302\240\302\240\302\240\302\240EXPORT_SYMBOL(scsi_device_put);\n" + "952 =A0=A0=A0=A0=A0* count of the underlying LLDD module. =A0The device is =\n" + "freed once the last\n" + "953 =A0=A0=A0=A0=A0* user vanishes.\n" + "954 =A0=A0=A0=A0=A0*/\n" + "955 =A0=A0=A0=A0void scsi_device_put(struct scsi_device *sdev)\n" + "956 =A0=A0=A0=A0{\n" + "957 =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0module_put(sdev->host->hostt->modul=\n" + "e);\n" + "958 =A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0=A0put_device(&sdev->sdev_gendev);\n" + "959 =A0=A0=A0=A0}\n" + "960 =A0=A0=A0=A0EXPORT_SYMBOL(scsi_device_put);\n" "961\n" "(gdb) disas scsi_device_put\n" "Dump of assembler code for function scsi_device_put:\n" - " \302\240\302\2400xffffffff8149fc20 <+0>: \302\240\302\240\302\240\302\240push \302\240\302\240%rbp\n" - " \302\240\302\2400xffffffff8149fc21 <+1>: \302\240\302\240\302\240\302\240mov \302\240\302\240\302\240%rsp,%rbp\n" - " \302\240\302\2400xffffffff8149fc24 <+4>: \302\240\302\240\302\240\302\240push \302\240\302\240%rbx\n" - " \302\240\302\2400xffffffff8149fc25 <+5>: \302\240\302\240\302\240\302\240mov \302\240\302\240\302\240(%rdi),%rax\n" - " \302\240\302\2400xffffffff8149fc28 <+8>: \302\240\302\240\302\240\302\240mov \302\240\302\240\302\240%rdi,%rbx\n" - " \302\240\302\2400xffffffff8149fc2b <+11>: \302\240\302\240\302\240mov \302\240\302\240\302\2400x1a8(%rax),%rax\n" - " \302\240\302\2400xffffffff8149fc32 <+18>: \302\240\302\240\302\240mov \302\240\302\240\302\240(%rax),%rdi\n" - " \302\240\302\2400xffffffff8149fc35 <+21>: \302\240\302\240\302\240callq \302\2400xffffffff810f6530 <module_put>\n" - " \302\240\302\2400xffffffff8149fc3a <+26>: \302\240\302\240\302\240lea \302\240\302\240\302\2400x238(%rbx),%rdi\n" - " \302\240\302\2400xffffffff8149fc41 <+33>: \302\240\302\240\302\240callq \302\2400xffffffff814714b0 <put_device>\n" - " \302\240\302\2400xffffffff8149fc46 <+38>: \302\240\302\240\302\240pop \302\240\302\240\302\240%rbx\n" - " \302\240\302\2400xffffffff8149fc47 <+39>: \302\240\302\240\302\240pop \302\240\302\240\302\240%rbp\n" - " \302\240\302\2400xffffffff8149fc48 <+40>: \302\240\302\240\302\240retq \302\240\302\240\302\240\n" + " =A0=A00xffffffff8149fc20 <+0>: =A0=A0=A0=A0push =A0=A0%rbp\n" + " =A0=A00xffffffff8149fc21 <+1>: =A0=A0=A0=A0mov =A0=A0=A0%rsp,%rbp\n" + " =A0=A00xffffffff8149fc24 <+4>: =A0=A0=A0=A0push =A0=A0%rbx\n" + " =A0=A00xffffffff8149fc25 <+5>: =A0=A0=A0=A0mov =A0=A0=A0(%rdi),%rax\n" + " =A0=A00xffffffff8149fc28 <+8>: =A0=A0=A0=A0mov =A0=A0=A0%rdi,%rbx\n" + " =A0=A00xffffffff8149fc2b <+11>: =A0=A0=A0mov =A0=A0=A00x1a8(%rax),%rax\n" + " =A0=A00xffffffff8149fc32 <+18>: =A0=A0=A0mov =A0=A0=A0(%rax),%rdi\n" + " =A0=A00xffffffff8149fc35 <+21>: =A0=A0=A0callq =A00xffffffff810f6530 <modu=\n" + "le_put>\n" + " =A0=A00xffffffff8149fc3a <+26>: =A0=A0=A0lea =A0=A0=A00x238(%rbx),%rdi\n" + " =A0=A00xffffffff8149fc41 <+33>: =A0=A0=A0callq =A00xffffffff814714b0 <put_=\n" + "device>\n" + " =A0=A00xffffffff8149fc46 <+38>: =A0=A0=A0pop =A0=A0=A0%rbx\n" + " =A0=A00xffffffff8149fc47 <+39>: =A0=A0=A0pop =A0=A0=A0%rbp\n" + " =A0=A00xffffffff8149fc48 <+40>: =A0=A0=A0retq =A0=A0=A0\n" "End of assembler dump.\n" - "(gdb) print &((struct Scsi_Host *)0)->hostt \302\240\n" - "$2 = (struct scsi_host_template **) 0x1a8 <irq_stack_union+424>\n" + "(gdb) print &((struct Scsi_Host *)0)->hostt =A0\n" + "$2 =3D (struct scsi_host_template **) 0x1a8 <irq_stack_union+424>\n" "\n" "Apparently scsi_device_put() was called for a SCSI device that was already\n" "freed (memory poisoning was enabled in my test). This is something I had\n" "not yet seen before.\n" "\n" - Bart. + Bart.= -0d76fd491303f0e83af617d8b96dc1d408d68f06e3dbc495f9e8db42fd5c7f76 +3dd042ac318281784c353305641bc8cde5dd5942132056b99a880100fc0fcb28
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.