Discussion:
vmm error mesg since upgrade to 6.9
Holger Glaess
2021-05-02 08:54:45 UTC
Permalink
hi


i did the upgrade von 6.8 to 6.9 .


after reboot i get in my messages log


vmd[56]: vionet_enq_rx: descriptor too small for packet data


i run only one vm on my box, this is also upgraded to 6.9.


how can i fix this ?


Holger
Dave Voutila
2021-05-02 11:04:41 UTC
Permalink
Post by Holger Glaess
hi
i did the upgrade von 6.8 to 6.9 .
after reboot i get in my messages log
vmd[56]: vionet_enq_rx: descriptor too small for packet data
i run only one vm on my box, this is also upgraded to 6.9.
how can i fix this ?
Can you share some more details? Does networking work? How do you start
this vm (what are the networking arguments)? Need more info to reproduce
what you're seeing.

There were minimal changes in the virtio emulation between 6.8 and
6.9. One of the few changes involved dhcp/bootp packet intercept, so I'm
curious what your guest is doing.

-dv
Mischa
2021-05-02 11:35:08 UTC
Permalink
Post by Dave Voutila
Post by Holger Glaess
hi
i did the upgrade von 6.8 to 6.9 .
after reboot i get in my messages log
vmd[56]: vionet_enq_rx: descriptor too small for packet data
i run only one vm on my box, this is also upgraded to 6.9.
how can i fix this ?
Can you share some more details? Does networking work? How do you start
this vm (what are the networking arguments)? Need more info to reproduce
what you're seeing.
There were minimal changes in the virtio emulation between 6.8 and
6.9. One of the few changes involved dhcp/bootp packet intercept, so I'm
curious what your guest is doing.
Interestingly I am seeing the same on my 6.9 hosts, except the host running -current.
The hosts are similar in regards to configuration.
I have migrated from bridge/vether to veb/vport.

May 2 13:14:38 r2 vmd[59033]: vionet_enq_rx: descriptor too small for packet data
May 2 13:15:12 r2 last message repeated 11 times
May 2 13:17:13 r2 last message repeated 34 times

# vmctl show | grep 59033
6 59033 1 4.0G 1.8G ttyp5 root running images

# vm.conf
switch "uplink_vlan880" {
interface veb880
}
vm "images" {
memory 4G
disk "/var/vmm/images.qcow2"
disk "/var/vmm/images_extra.qcow2"
interface tap { switch "uplink_vlan880" }
}

# cat /etc/hostname.em0
up
# cat /etc/hostname.veb880
add vlan880
add vport880
up
# cat /etc/hostname.vlan880
vnetid 880 parent em0
up
# cat /etc/hostname.vport880
inet 46.23.xx.xx 255.255.255.0
inet6 2a03:6000:xxx::xx
up

I am using a combination of dhcp and static IP config on both hosts to provision the VMs.

What else can be relevant?

Mischa
Dave Voutila
2021-05-02 12:24:40 UTC
Permalink
Post by Mischa
Interestingly I am seeing the same on my 6.9 hosts, except the host running -current.
Hmm. -current has some small changes to virtio emulation, specifically
fixing some bad casts I found [1]. That might explain the difference
with -current.
Post by Mischa
The hosts are similar in regards to configuration.
I have migrated from bridge/vether to veb/vport.
May 2 13:14:38 r2 vmd[59033]: vionet_enq_rx: descriptor too small for packet data
May 2 13:15:12 r2 last message repeated 11 times
May 2 13:17:13 r2 last message repeated 34 times
# vmctl show | grep 59033
6 59033 1 4.0G 1.8G ttyp5 root running images
# vm.conf
switch "uplink_vlan880" {
interface veb880
}
vm "images" {
memory 4G
disk "/var/vmm/images.qcow2"
disk "/var/vmm/images_extra.qcow2"
interface tap { switch "uplink_vlan880" }
}
# cat /etc/hostname.em0
up
# cat /etc/hostname.veb880
add vlan880
add vport880
up
# cat /etc/hostname.vlan880
vnetid 880 parent em0
up
# cat /etc/hostname.vport880
inet 46.23.xx.xx 255.255.255.0
inet6 2a03:6000:xxx::xx
up
I am using a combination of dhcp and static IP config on both hosts to provision the VMs.
Are you running dhcpd(8) on the host? Or using vmd(8)'s built-in dhcp
service?
Post by Mischa
What else can be relevant?
Logging into my obsd.ams host (that I haven't updated yet to 6.9) it's
using "dhcp" in /etc/hostname.vio0. Do you see this same issue with
*guests* running 6.8? Or only 6.9?

-dv

[1] https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.sbin/vmd/virtio.c.diff?r1=1.84&r2=1.85&only_with_tag=MAIN
Dave Voutila
2021-05-02 12:55:38 UTC
Permalink
Post by Dave Voutila
Post by Mischa
Interestingly I am seeing the same on my 6.9 hosts, except the host running -current.
Hmm. -current has some small changes to virtio emulation, specifically
fixing some bad casts I found [1]. That might explain the difference
with -current.
Post by Mischa
The hosts are similar in regards to configuration.
I have migrated from bridge/vether to veb/vport.
May 2 13:14:38 r2 vmd[59033]: vionet_enq_rx: descriptor too small for packet data
May 2 13:15:12 r2 last message repeated 11 times
May 2 13:17:13 r2 last message repeated 34 times
# vmctl show | grep 59033
6 59033 1 4.0G 1.8G ttyp5 root running images
# vm.conf
switch "uplink_vlan880" {
interface veb880
}
vm "images" {
memory 4G
disk "/var/vmm/images.qcow2"
disk "/var/vmm/images_extra.qcow2"
interface tap { switch "uplink_vlan880" }
}
# cat /etc/hostname.em0
up
# cat /etc/hostname.veb880
add vlan880
add vport880
up
# cat /etc/hostname.vlan880
vnetid 880 parent em0
up
# cat /etc/hostname.vport880
inet 46.23.xx.xx 255.255.255.0
inet6 2a03:6000:xxx::xx
up
I am using a combination of dhcp and static IP config on both hosts to provision the VMs.
Are you running dhcpd(8) on the host? Or using vmd(8)'s built-in dhcp
service?
Only using dhcpd on the host.
Post by Dave Voutila
Post by Mischa
What else can be relevant?
Logging into my obsd.ams host (that I haven't updated yet to 6.9) it's
using "dhcp" in /etc/hostname.vio0. Do you see this same issue with
*guests* running 6.8? Or only 6.9?
The host running -current only has 6.8 VMs. The hosts where I see the messages are 6.9 VMs on 6.9 hosts.
Let me spin a 6.9 -release host and run a bunch of 6.8 VMs. And or a mix.
I've managed to reproduce it on my end using vmd(8) from 6.9 and a
config similar to what you and Holger are using. I have a few hunches
and looking into it.

-dv
Dave Voutila
2021-05-04 13:44:20 UTC
Permalink
Post by Dave Voutila
I've managed to reproduce it on my end using vmd(8) from 6.9 and a
config similar to what you and Holger are using. I have a few hunches
and looking into it.
An errata for 6.9 was released addressing the underlying issue. As this
is specific to vmd(8), this only affects users on amd64 using vmd(8).

See https://www.openbsd.org/errata69.html

Should be available via syspatch(8) now that it's had time to replicate
out to mirrors.

Thanks Holger and Mischa for reporting the issue and helping me
troubleshoot!

-dv
Mischa
2021-05-04 13:48:24 UTC
Permalink
Post by Dave Voutila
Post by Dave Voutila
I've managed to reproduce it on my end using vmd(8) from 6.9 and a
config similar to what you and Holger are using. I have a few hunches
and looking into it.
An errata for 6.9 was released addressing the underlying issue. As this
is specific to vmd(8), this only affects users on amd64 using vmd(8).
See https://www.openbsd.org/errata69.html
Should be available via syspatch(8) now that it's had time to replicate
out to mirrors.
Thanks Holger and Mischa for reporting the issue and helping me
troubleshoot!
Patch applied and works like a charm!

I am only seeing these again with non-OpenBSD VMs. :)

vmd[66593]: rtc_update_rega: set non-32KHz timebase not supported

Thank you Dave for fixing this so quickly!

Mischa

Holger Glaess
2021-05-02 11:41:51 UTC
Permalink
hi


on host


/etc 3>cat hostname.bridge1
rdomain 10
group vpn
add vether1
#add em1
up

/etc 4>cat vm.conf
switch "vswitch1" {
        interface bridge1
        rdomain 10
        enable
        }

vm "vpngw" {
        owner _vmd
        disk "/home/vmd/disk0.qcow2"
        interface {
                rdomain 10
                switch "vswitch1"
                lladdr fe:e1:ba:d0:9b:d4
        }
        memory 1G
        enable
}

network is working.

vm is working

may the message  come when the host have an diffrent os as the vm ?

i upgrade first the host to 6.9 , the vm ist coming up at boot and run ,
in this case

6.8 .

Holger


then i did the vm upgrade to 6.9.
Post by Dave Voutila
Post by Holger Glaess
hi
i did the upgrade von 6.8 to 6.9 .
after reboot i get in my messages log
vmd[56]: vionet_enq_rx: descriptor too small for packet data
i run only one vm on my box, this is also upgraded to 6.9.
how can i fix this ?
Can you share some more details? Does networking work? How do you start
this vm (what are the networking arguments)? Need more info to reproduce
what you're seeing.
There were minimal changes in the virtio emulation between 6.8 and
6.9. One of the few changes involved dhcp/bootp packet intercept, so I'm
curious what your guest is doing.
-dv
Loading...