Re: Virtio fix for testing

2023-10-21 Thread Andrew Cagney
On Mon, 21 Aug 2023 at 15:31, Andrew Cagney  wrote:
>
> On Sun, 20 Aug 2023 at 06:23, Stefan Fritsch  wrote:
> >
> > Am 13.08.23 um 17:38 schrieb Tobias Heider:

> > You could try something like
> >
> > -device virtio-scsi-pci,id=scsi
> > -drive file=install73.iso,format=raw,id=cdinst,if=none
> > -device scsi-cd,drive=cdinst
>
> good idea (just need to translate it to virt-install speak)
>
> > That depends on your seabios having support for virtio cdroms. Not sure
> > if that is the default by now.
> >
> > Or maybe try a SATA cdrom, but you would need to figure out the qemu
> > options for that yourself.

This is what I did.  Using virt-install and replacing --cdrom with
something like:

+KVM_OPENBSD_VIRT_INSTALL_FLAGS = \
+ --disk path=$(KVM_OPENBSD_BASE_ISO),readonly=on,device=cdrom,target.bus=sata \
+ --install bootdev=cdrom

I can boot/install 7.4's ISO.

thanks,
Andrew



Re: Virtio fix for testing

2023-08-21 Thread Andrew Cagney
On Sun, 20 Aug 2023 at 06:23, Stefan Fritsch  wrote:
>
> Am 13.08.23 um 17:38 schrieb Tobias Heider:
> > On Sun, Aug 13, 2023 at 08:33:54AM -0400, Andrew Cagney wrote:
> >>> Hi Andrew,
> >>>
> >>> can you share the qemu cmd you are using in your tests?
> >>> I'd like to see if I can reproduce this.
> >>
> >> Here's pretty much everything.  Thanks for looking at it.
> >
> > Thank you, I managed to reproduce your crash.
> > I am not yet sure what the exact problem is but you could try using 
> > install73.img > instead of install73.iso. It looks like only the iso 
> > triggers the bug
> for me.
>
> -cdrom makes qemu add an ATA cdrom drive. This issue has nothing to do
> with the virtio scsi issue / fix from May.
>
> The "wdc_atapi_start" here
>
>  >> --:-- ETAwdc_atapi_start: not ready, st = 50
>
> also points to the problem being related to ATA.
>
> You could try something like
>
> -device virtio-scsi-pci,id=scsi
> -drive file=install73.iso,format=raw,id=cdinst,if=none
> -device scsi-cd,drive=cdinst

good idea (just need to translate it to virt-install speak)

> That depends on your seabios having support for virtio cdroms. Not sure
> if that is the default by now.
>
> Or maybe try a SATA cdrom, but you would need to figure out the qemu
> options for that yourself.
>
> Oh, and the exact qemu version you used may be interesting for people
> trying to debug this.

virt-install-4.1.0-2.fc38.noarch
qemu-7.2.4-2.fc38.x86_64



Re: Virtio fix for testing

2023-08-13 Thread Andrew Cagney
On Sun, 13 Aug 2023 at 11:38, Tobias Heider  wrote:
>
> On Sun, Aug 13, 2023 at 08:33:54AM -0400, Andrew Cagney wrote:
> > > Hi Andrew,
> > >
> > > can you share the qemu cmd you are using in your tests?
> > > I'd like to see if I can reproduce this.
> >
> > Here's pretty much everything.  Thanks for looking at it.
>
> Thank you, I managed to reproduce your crash.

Some good news (of sorts).

> I am not yet sure what the exact problem is but you could try using 
> install73.img
> instead of install73.iso. It looks like only the iso triggers the bug for me.

I'll need to think about how to do this.  The script is adding files
to the iso so they are available after the installer has run.  I do
see there's an EFI partition.

thanks



Re: Virtio fix for testing

2023-08-13 Thread Andrew Cagney
> Hi Andrew,
>
> can you share the qemu cmd you are using in your tests?
> I'd like to see if I can reproduce this.

Here's pretty much everything.  Thanks for looking at it.

virt-install \
--connect=qemu:///system \
 --check=path_in_use=off \
 --graphics=none \
 --virt-type=kvm \
 --noreboot \
 --console=pty,target_type=serial \
 --cpu=host-passthrough \
 --network=network:swandefault,model=virtio \
 --rng=type=random,device=/dev/random \
 --security=type=static,model=dac,label='1000:107',relabel=yes \
--vcpus=1 \
--memory=2048 \
--name=w.openbsd-base \
--os-variant=openbsd7.3 \
--disk=path=/home/libreswan/pool/w.openbsd-base.qcow2,size=10,bus=virtio,format=qcow2
\
--filesystem=target=pool,type=mount,accessmode=squash,source=/home/libreswan/pool
\
--cdrom=/home/libreswan/pool/w.openbsd-base.iso

base.conf which gets added to the iso looks like:

#install.conf file for OpenBSD
Terminal type? = com0
System hostname = openbsd
Which network interface do you wish to configure? = vio0
IPv4 address for = dhcp
DNS Domain name = testing.libreswan.org
Password for root account? =
$2a$12$YZ8bMn19IHPQpBoD6Xf/re/4pp2kbJtVkIl/Mc4G3WA96qyG7/6qW
Start sshd(8) by default = yes
Start ntpd(8) by default? = no
NTP server? (hostname or 'default') = default
Do you expect to run the X Window System? = no
Do you want the X Window System to be started by xdm(1)? = no
Which speed should com0 use? (or 'done') = 19200
What timezone are you in? = EST
Change the default console to com0? = yes
Setup a user? = no
Allow root ssh login = yes
Use (W)hole disk or (E)dit the MBR? = W
URL to autopartitioning template for disklabel? = file:/base.disk
Which disk is the root disk? = sd0
Use DUIDs rather than device names in fstab? = yes
Which disk do you wish to initialize? = done
Set name(s)? = all
Location of sets? = cd0
oPathname to the sets = 7.1/amd64
Directory does not contain SHA256.sig. Continue without verification? = yes

this is the console log, part way through pexpect feeds the VM
commands to start the installer:

cannot open cd0a:/etc/random.seed: No such file or directory
booting cd0a:/7.3/amd64/bsd.rd: 3973828+1655808+3882568+0+708608
[109+444720+297256]=0xa76648
entry point at 0x81001000
Copyright (c) 1982, 1986, 1989, 1991, 1993
The Regents of the University of California.  All rights reserved.
Copyright (c) 1995-2023 OpenBSD. All rights reserved.  https://www.OpenBSD.org

OpenBSD 7.3-current (RAMDISK_CD) #1262: Sat Aug 12 11:54:24 MDT 2023
dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/RAMDISK_CD
real mem = 2130542592 (2031MB)
avail mem = 2062016512 (1966MB)
random: good seed from bootblocks
mainbus0 at root
bios0 at mainbus0: SMBIOS rev. 2.8 @ 0xf59a0 (9 entries)
bios0: vendor SeaBIOS version "1.16.2-1.fc38" date 04/01/2014
bios0: QEMU Standard PC (i440FX + PIIX, 1996)
acpi0 at bios0: ACPI 1.0
acpi0: tables DSDT FACP APIC WAET
acpimadt0 at acpi0 addr 0xfee0: PC-AT compat
cpu0 at mainbus0: apid 0 (boot processor)
cpu0: AMD Ryzen 9 3950X 16-Core Processor, 3500.43 MHz, 17-71-00
cpu0: 
FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,APIC,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,CFLUSH,MMX,FXSR,SSE,SSE2,SSE3,PCLMUL,SSSE3,FMA3,CX16,SSE4.1,SSE4.2,x2APIC,MOVBE,POPCNT,DEADLINE,AES,XSAVE,AVX,F16C,RDRAND,HV,NXE,MMXX,FFXSR,PAGE1GB,RDTSCP,LONG,LAHF,CMPLEG,SVM,AMCR8,ABM,SSE4A,MASSE,3DNOWP,OSVW,CPCTR,FSGSBASE,TSC_ADJUST,BMI1,AVX2,SMEP,BMI2,RDSEED,ADX,SMAP,CLFLUSHOPT,CLWB,SHA,UMIP,STIBP,SSBD,IBPB,STIBP,SSBD,VIRTSSBD,XSAVEOPT,XSAVEC,XGETBV1
cpu0: 64KB 64b/line 2-way D-cache, 64KB 64b/line 2-way I-cache
cpu0: 512KB 64b/line 16-way L2 cache
cpu0: apic clock running at 1000MHz
ioapic0 at mainbus0: apid 0 pa 0xfec0, version 11, 24 pins
acpiprt0 at acpi0: bus 0 (PCI0)
"ACPI0006" at acpi0 not configured
acpipci0 at acpi0 PCI0
"PNP0A06" at acpi0 not configured
"PNP0A06" at acpi0 not configured
"PNP0A06" at acpi0 not configured
"QEMU0002" at acpi0 not configured
com0 at acpi0 COM1 addr 0x3f8/0x8 irq 4: ns16550a, 16 byte fifo
com0: console
acpicmos0 at acpi0
"ACPI0010" at acpi0 not configured
acpicpu at acpi0 not configured
pvbus0 at mainbus0: KVM
pci0 at mainbus0 bus 0
pchb0 at pci0 dev 0 function 0 "Intel 82441FX" rev 0x02
"Intel 82371SB ISA" rev 0x00 at pci0 dev 1 function 0 not configured
pciide0 at pci0 dev 1 function 1 "Intel 82371SB IDE" rev 0x00: DMA,
channel 0 wired to compatibility, channel 1 wired to compatibility
atapiscsi0 at pciide0 channel 0 drive 0
scsibus0 at atapiscsi0: 2 targets
cd0 at scsibus0 targ 0 lun 0:  removable
cd0(pciide0:0:0): using PIO mode 4, DMA mode 2
pciide0: channel 1 disabled (no drives)
"Intel 82371AB Power" rev 0x03 at pci0 dev 1 function 3 not configured
virtio0 at pci0 dev 2 function 0 vendor "Qumranet", unknown product
0x1009 rev 0x00
virtio0: no matching child driver; not configured
virtio1 at pci0 dev 3 function 0 "Qumranet Virtio Network" rev 0x00
vio0 at virtio1: address 52:54:00:38:8c:5d
virtio1: msix per-VQ
uhci0 at pci0 dev 4 function 0 "Intel 82801I USB" rev 0x03: apic 0 int 11
uhci1 at pci0 

Re: Virtio fix for testing

2023-08-12 Thread Andrew Cagney
On Sat, 12 Aug 2023 at 16:18, Stuart Henderson  wrote:

> > Is there a way to get an updated ISO or kernel with the fix?
> > (we're already adding an installer config file to the ISO, so why not a 
> > kernel)
> >
> > Andrew
> >
>
> It was committed to -current, so if you're able to use a snapshot
> build (https://cdn.openbsd.org/pub/OpenBSD/snapshots) that would
> likely be the simplest fix.

Greg, Stuart, thanks for the pointers.  Unfortunately I had no luck:

OpenBSD 7.3-current (RAMDISK_CD) #1262: Sat Aug 12 11:54:24 MDT 2023
dera...@amd64.openbsd.org:/usr/src/sys/arch/amd64/compile/RAMDISK_CD
...
Installing base73.tgz19% |  | 72320 KB
00:25 ETAwdc_atapi_start: not ready, st = 50
Installing base73.tgz22% |* | 83840 KB
00:27 ETAfatal protection fault in supervisor mode
trap type 4 code 0 rip 81008c29 cs 8 rflags 10286 cr2
251d44000 cpl 6 rsp 800021749050
gsbase 0x81908ff0  kgsbase 0x0
panic: trap type 4, code=0, pc=81008c29
syncing disks...

I guess I've a different problem.  Now I need a cheat sheet on how to
pull a backtrace :-/



Re: Virtio fix for testing

2023-08-12 Thread Andrew Cagney
Ref: https://marc.info/?l=openbsd-tech&m=168458764424059&w=2
https://marc.info/?l=openbsd-misc&m=168071258109433&w=2

I'm trying to update libreswan's automated test framework so that it
creates an OpenBSD 7.3 test VM using install7.3.iso.  Unfortunately
I've hit what I'm assuming is this bug vis:

Installing bsd  100% |**| 24400 KB00:01
Installing bsd.rd   100% |**|  4547 KB00:00
Installing base73.tgz 3% |  | 12800 KB
00:28 ETAwdc_atapi_start: not ready, st = 50
Installing base73.tgz 4% |* | 15104 KB
00:52 ETAfatal protection fault in supervisor mode
trap type 4 code 0 rip 810089d9 cs 8 rflags 10286 cr2
2446c8000 cpl 6 rsp 80002174d4e0

Is there a way to get an updated ISO or kernel with the fix?
(we're already adding an installer config file to the ISO, so why not a kernel)

Andrew