NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
kern/54008: ASan: Unauthorized Access in vioscsi_scsipi_request
>Number: 54008
>Category: kern
>Synopsis: ASan: Unauthorized Access in vioscsi_scsipi_request
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sat Feb 23 15:25:00 +0000 2019
>Originator: Dmitry Vyukov
>Release: HEAD
>Organization:
>Environment:
NetBSD 8.99.34 NetBSD 8.99.34 (GENERIC_SYZKALLER) #18: Sat Feb 23 15:34:40 CET 2019 sys/arch/amd64/compile/obj/GENERIC_SYZKALLER amd64
>Description:
ASan: Unauthorized Access in vioscsi_scsipi_request
NetBSD 8.99.34 NetBSD 8.99.34 (GENERIC_SYZKALLER) #18: Sat Feb 23 15:34:40 CET 2019 sys/arch/amd64/compile/obj/GENERIC_SYZKALLER amd64
Checkout is on de28d81d1f43015977e489804bbc02041cdc7207
Config:
include "arch/amd64/conf/GENERIC"
makeoptions KASAN=1
options KASAN
no options SVS
Booting resulting kernel on GCE produces an ASan on boot:
[ 1.0000000] Copyright (c) 1996, 1997, 1998, 1999, 2000, 2001, 2002, 2003, 2004, 2005,
[ 1.0000000] 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017,
[ 1.0000000] 2018, 2019 The NetBSD Foundation, Inc. All rights reserved.
[ 1.0000000] Copyright (c) 1982, 1986, 1989, 1991, 1993
[ 1.0000000] The Regents of the University of California. All rights reserved.
[ 1.0000000] NetBSD 8.99.34 (GENERIC_SYZKALLER) #18: Sat Feb 23 15:34:40 CET 2019
[ 1.0000000] /sys/arch/amd64/compile/obj/GENERIC_SYZKALLER
[ 1.0000000] total memory = 3839 MB
[ 1.0000000] avail memory = 3271 MB
[ 1.0000000] rnd: bad seed length 10
[ 1.0000000] pool redzone disabled for 'buf64k'
[ 1.0000000] cpu_rng: RDRAND
[ 1.0000000] timecounter: Timecounters tick every 10.000 msec
[ 1.0000000] Kernelized RAIDframe activated
[ 1.0000000] running cgd selftest aes-xts-256 aes-xts-512 done
[ 1.0000000] timecounter: Timecounter "i8254" frequency 1193182 Hz quality 100
[ 1.0000030] Google Google Compute Engine
[ 1.0000030] mainbus0 (root)
[ 1.0000030] ACPI: RSDP 0x00000000000F2A60 000014 (v00 Google)
[ 1.0000030] ACPI: RSDT 0x00000000BFFFDC10 000038 (v01 Google GOOGRSDT 00000001 GOOG 00000001)
[ 1.0000030] ACPI: FACP 0x00000000BFFFFF00 0000F4 (v02 Google GOOGFACP 00000001 GOOG 00000001)
[ 1.0000030] ACPI: DSDT 0x00000000BFFFDC50 0017B2 (v01 Google GOOGDSDT 00000001 GOOG 00000001)
[ 1.0000030] ACPI: FACS 0x00000000BFFFFEC0 000040
[ 1.0000030] ACPI: SSDT 0x00000000BFFFF5F0 0008CF (v01 Google GOOGSSDT 00000001 GOOG 00000001)
[ 1.0000030] ACPI: APIC 0x00000000BFFFF500 00006E (v01 Google GOOGAPIC 00000001 GOOG 00000001)
[ 1.0000030] ACPI: WAET 0x00000000BFFFF4D0 000028 (v01 Google GOOGWAET 00000001 GOOG 00000001)
[ 1.0000030] ACPI: SRAT 0x00000000BFFFF410 0000B8 (v01 Google GOOGSRAT 00000001 GOOG 00000001)
[ 1.0000030] ACPI: 2 ACPI AML tables successfully acquired and loaded
[ 1.0000030] ioapic0 at mainbus0 apid 0: pa 0xfec00000, version 0x11, 24 pins
[ 1.0000030] cpu0 at mainbus0 apid 0
[ 1.0000030] cpu0: Intel(R) Xeon(R) CPU @ 2.30GHz, id 0x306f0
[ 1.0000030] cpu0: package 0, core 0, smt 0
[ 1.0000030] acpi0 at mainbus0: Intel ACPICA 20181213
[ 1.0000030] acpi0: X/RSDT: OemId <Google,GOOGRSDT,00000001>, AslId <GOOG,00000001>
[ 1.0000030] LNKS: ACPI: Found matching pin for 0.1.INTA at func 3: 9
[ 1.0000030] LNKC: ACPI: Found matching pin for 0.3.INTA at func 0: 11
[ 1.0000030] LNKD: ACPI: Found matching pin for 0.4.INTA at func 0: 11
[ 1.0000030] acpi0: SCI interrupting at int 9
[ 1.0000030] acpi0: fixed power button present
[ 1.0000030] acpi0: fixed sleep button present
[ 1.0000030] timecounter: Timecounter "ACPI-Safe" frequency 3579545 Hz quality 900
[ 1.0066709] pckbc1 at acpi0 (KBD, PNP0303) (kbd port): io 0x60,0x64 irq 1
[ 1.0066709] pckbc2 at acpi0 (MOU, PNP0F13) (aux port): irq 12
[ 1.0066709] COM1 (PNP0501) at acpi0 not configured
[ 1.0066709] COM2 (PNP0501) at acpi0 not configured
[ 1.0066709] COM3 (PNP0501) at acpi0 not configured
[ 1.0066709] COM4 (PNP0501) at acpi0 not configured
[ 1.0066709] PEVT (QEMU0001) at acpi0 not configured
[ 1.0066709] ACPI: Enabled 16 GPEs in block 00 to 0F
[ 1.0066709] pckbd0 at pckbc1 (kbd slot)
[ 1.0066709] pckbc1: using irq 1 for kbd slot
[ 1.0066709] wskbd0 at pckbd0 mux 1
[ 1.0066709] pms0 at pckbc1 (aux slot)
[ 1.0066709] pckbc1: using irq 12 for aux slot
[ 1.0066709] wsmouse0 at pms0 mux 0
[ 1.0066709] pci0 at mainbus0 bus 0: configuration mode 1
[ 1.0066709] pci0: i/o space, memory space enabled, rd/line, rd/mult, wr/inv ok
[ 1.0066709] pchb0 at pci0 dev 0 function 0: vendor 8086 product 1237 (rev. 0x02)
[ 1.0066709] pcib0 at pci0 dev 1 function 0: vendor 8086 product 7110 (rev. 0x03)
[ 1.0066709] piixpm0 at pci0 dev 1 function 3: vendor 8086 product 7113 (rev. 0x03)
[ 1.0066709] piixpm0: SMBus disabled
[ 1.0066709] virtio0 at pci0 dev 3 function 0
[ 1.0066709] virtio0: Virtio SCSI Device (rev. 0x00)
[ 1.0066709] vioscsi0 at virtio0: Features: 0x0
[ 1.0066709] virtio0: allocated 221184 byte for virtqueue 0 for control, size 8192
[ 1.0066709] virtio0: allocated 221184 byte for virtqueue 1 for event, size 8192
[ 1.0066709] virtio0: allocated 221184 byte for virtqueue 2 for request, size 8192
[ 1.0066709] vioscsi0: cmd_per_lun 256 qsize 8192 seg_max 64 max_target 253 max_lun 1
[ 1.0066709] virtio0: config interrupting at msix0 vec 0
[ 1.0066709] virtio0: queues interrupting at msix0 vec 1
[ 1.0066709] scsibus0 at vioscsi0: 16 targets, 1 lun per target
[ 1.0066709] virtio1 at pci0 dev 4 function 0
[ 1.0066709] virtio1: Virtio Network Device (rev. 0x00)
[ 1.0066709] vioif0 at virtio1: Features: 0x30020<CTRL_VQ,STATUS,MAC>
[ 1.0066709] vioif0: Ethernet address 42:01:0a:80:00:46
[ 1.0066709] virtio1: allocated 114688 byte for virtqueue 0 for rx0, size 4096
[ 1.0066709] virtio1: allocated 114688 byte for virtqueue 1 for tx0, size 4096
[ 1.0066709] virtio1: config interrupting at msix1 vec 0
[ 1.0066709] virtio1: queues interrupting at msix1 vec 1
[ 1.0066709] isa0 at pcib0
[ 1.0066709] com0 at isa0 port 0x3f8-0x3ff irq 4: ns16550a, working fifo
[ 1.0066709] com0: console
[ 1.0066709] com1 at isa0 port 0x2f8-0x2ff irq 3: ns16550a, working fifo
[ 1.0066709] attimer0 at isa0 port 0x40-0x43
[ 1.0066709] pcppi0 at isa0 port 0x61
[ 1.0066709] spkr0 at pcppi0: PC Speaker
[ 1.0066709] wsbell at spkr0 not configured
[ 1.0066709] midi0 at pcppi0: PC speaker
[ 1.0066709] sysbeep0 at pcppi0
[ 1.0066709] attimer0: attached to pcppi0
[ 1.0066709] acpicpu0 at cpu0: ACPI CPU
[ 1.0066709] acpicpu0: C1: HLT, lat 0 us, pow 0 mW
[ 1.0066709] timecounter: Timecounter "clockinterrupt" frequency 100 Hz quality 0
[ 1.0066709] timecounter: Timecounter "TSC" frequency 2300869780 Hz quality 3000
[ 1.4138338] sd0 at scsibus0 target 2 lun 0: <Google, PersistentDisk, 1> disk fixed
[ 1.4237051] IPsec: Initialized Security Association Processing.
[ 1.4237051] sd0: fabricating a geometry
[ 1.4237051] sd0: 2048 MB, 2048 cyl, 64 head, 32 sec, 512 bytes/sect x 4194304 sectors
[ 1.4342756] sd0: fabricating a geometry
[ 1.4538348] sd0: async, 8-bit transfers, tagged queueing
[ 1.4740155] boot device: sd0
[ 1.4740155] root on sd0a dumps on sd0b
[ 1.5137523] root file system type: ffs
[ 1.5137523] kern.module.path=/stand/amd64/8.99.34/modules
[ 1.5137523] clock: unknown CMOS layout
[ 2.8938666] /dev/sd0a: file system not clean (fs_clean=0x20); please fsck(8)
[ 2.8938666] /dev/sd0a: lost blocks 0 files 0
[ 6.1324074] /dev/sd0a: file system not clean (fs_clean=0x20); please fsck(8)
[ 6.1424467] /dev/sd0a: lost blocks 0 files 0
[ 8.1619135] ASan: Unauthorized Access In 0xffffffff81593baf: Addr 0xffffa18009e3aac0 [4 bytes, read]
[ 8.1742001] #0 0xffffffff81593baf in vioscsi_scsipi_request <netbsd>
[ 8.1819853] #1 0xffffffff8028228d in scsipi_adapter_request <netbsd>
[ 8.1819853] #2 0xffffffff80282484 in scsipi_run_queue <netbsd>
[ 8.1969374] #3 0xffffffff80283135 in scsipi_execute_xs <netbsd>
[ 8.2040307] #4 0xffffffff802987c1 in sd_diskstart <netbsd>
[ 8.2040307] #5 0xffffffff80fcfc28 in dk_start <netbsd>
[ 8.2172705] #6 0xffffffff80fc595f in spec_strategy <netbsd>
[ 8.2240758] #7 0xffffffff80fb3400 in VOP_STRATEGY <netbsd>
[ 8.2240758] #8 0xffffffff80fb8619 in genfs_getpages <netbsd>
[ 8.2378917] #9 0xffffffff80fb3bb1 in VOP_GETPAGES <netbsd>
[ 8.2444090] #10 0xffffffff80e37408 in uvm_fault_internal <netbsd>
[ 8.2518282] #11 0xffffffff80226a38 in trap <netbsd>
[ 8.2518282] #12 0xffffffff8021c4f2 in alltraps <netbsd>
Passing this though addr2line:
0xffffffff81593baf
vioscsi_scsipi_request
dev/pci/vioscsi.c:423
0xffffffff8028228d
scsipi_adapter_unlock
dev/scsipi/scsipi_base.c:2576
scsipi_adapter_request
dev/scsipi/scsipi_base.c:2599
0xffffffff80282484
scsipi_run_queue
dev/scsipi/scsipi_base.c:1860
0xffffffff80283135
scsipi_execute_xs
dev/scsipi/scsipi_base.c:2078
0xffffffff802987c1
sd_diskstart
dev/scsipi/sd.c:782
0xffffffff80fcfc28
dk_start
dev/dksubr.c:422
0xffffffff80fc595f
spec_strategy
miscfs/specfs/spec_vnops.c:1067
0xffffffff80fb3400
VOP_STRATEGY
kern/vnode_if.c:1384
0xffffffff80fb8619
genfs_getpages_read
miscfs/genfs/genfs_io.c:609
genfs_getpages
miscfs/genfs/genfs_io.c:443
0xffffffff80fb8619
genfs_getpages_read
miscfs/genfs/genfs_io.c:609
genfs_getpages
miscfs/genfs/genfs_io.c:443
0xffffffff80fb3bb1
VOP_GETPAGES
kern/vnode_if.c:1577
0xffffffff80e37408
uvm_fault_lower_io
uvm/uvm_fault.c:1918
uvm_fault_lower
uvm/uvm_fault.c:1717
uvm_fault_internal
uvm/uvm_fault.c:905
0xffffffff80226a38
trap
arch/amd64/amd64/trap.c:558
0xffffffff8021c4f2
calltrap
amd64_trap.o:?
>How-To-Repeat:
>Fix:
Home |
Main Index |
Thread Index |
Old Index