FreeBSD Big Endian in a VM and VirtIO
Timo Völker <[email protected]> Sat, 23 May 2026 08:15:33 +0000
| Newsgroups | gmane.os.freebsd.devel.ppc |
|---|---|
| Message-ID | <[email protected]> |
--Apple-Mail=_D6CDCB66-F858-4E61-A9CC-BFFB2C78450E Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=utf-8 Hi! How do you run FreeBSD with Big Endian in a VM? Is qemu the de facto only hypervisor used for this? To avoid CPU emulation, I installed Debian (Little Endian) on a Raptor = Blackbird to run a FreeBSD (Big Endian) VM with qemu. Currently, I=E2=80=99m investigating this bug: https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D294706 I think the cause is byte swaps in = sys/dev/virtio/pci/virtio_pci_modern.c (by virtio_htog*() or = virtio_gtoh*() function calls) that shouldn=E2=80=99t be done. At least = if I remove these in my setup, the bug disappears. Now, I wonder, are = these byte swaps incorrect in my setup but necessary in others (due to = another hypervisor or the endianness of the host system)? In my understanding, at the lines where virtio_pci_modern.c uses the = virtio_htog*() functions, it reads a value from the PCI bus. Since the = PCI bus uses little endian, it requires a byte swap in a big endian VM, = but this is already done internally by the bus_space API. So, this would = mean the byte swaps in virtio_pci_modern.c are incorrect in general and = shouldn=E2=80=99t be done. Timo= --Apple-Mail=_D6CDCB66-F858-4E61-A9CC-BFFB2C78450E Content-Disposition: attachment; filename="smime.p7s" Content-Type: application/pkcs7-signature; name="smime.p7s" Content-Transfer-Encoding: base64 MIAGCSqGSIb3DQEHAqCAMIACAQExDzANBglghkgBZQMEAgEFADCABgkqhkiG9w0BBwEAAKCCEfUw ggUSMIID+qADAgECAgkA4wvV+K8l2YEwDQYJKoZIhvcNAQELBQAwgYIxCzAJBgNVBAYTAkRFMSsw KQYDVQQKDCJULVN5c3RlbXMgRW50ZXJwcmlzZSBTZXJ2aWNlcyBHbWJIMR8wHQYDVQQLDBZULVN5 c3RlbXMgVHJ1c3QgQ2VudGVyMSUwIwYDVQQDDBxULVRlbGVTZWMgR2xvYmFsUm9vdCBDbGFzcyAy MB4XDTE2MDIyMjEzMzgyMloXDTMxMDIyMjIzNTk1OVowgZUxCzAJBgNVBAYTAkRFMUUwQwYDVQQK EzxWZXJlaW4genVyIEZvZXJkZXJ1bmcgZWluZXMgRGV1dHNjaGVuIEZvcnNjaHVuZ3NuZXR6ZXMg ZS4gVi4xEDAOBgNVBAsTB0RGTi1QS0kxLTArBgNVBAMTJERGTi1WZXJlaW4gQ2VydGlmaWNhdGlv biBBdXRob3JpdHkgMjCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMtg1/9moUHN0vqH l4pzq5lN6mc5WqFggEcVToyVsuXPztNXS43O+FZsFVV2B+pG/cgDRWM+cNSrVICxI5y+NyipCf8F XRgPxJiZN7Mg9mZ4F4fCnQ7MSjLnFp2uDo0peQcAIFTcFV9Kltd4tjTTwXS1nem/wHdN6r1ZB+Ba L2w8pQDcNb1lDY9/Mm3yWmpLYgHurDg0WUU2SQXaeMpqbVvAgWsRzNI8qIv4cRrKO+KA3Ra0Z3qL NupOkSk9s1FcragMvp0049ENF4N1xDkesJQLEvHVaY4l9Lg9K7/AjsMeO6W/VRCrKq4Xl14zzsjz 9AkH4wKGMUZrAcUQDBHHWekCAwEAAaOCAXQwggFwMA4GA1UdDwEB/wQEAwIBBjAdBgNVHQ4EFgQU k+PYMiba1fFKpZFK4OpL4qIMz+EwHwYDVR0jBBgwFoAUv1kgNgB5oKAia4zV8mHSuCzLgkowEgYD VR0TAQH/BAgwBgEB/wIBAjAzBgNVHSAELDAqMA8GDSsGAQQBga0hgiwBAQQwDQYLKwYBBAGBrSGC LB4wCAYGZ4EMAQICMEwGA1UdHwRFMEMwQaA/oD2GO2h0dHA6Ly9wa2kwMzM2LnRlbGVzZWMuZGUv cmwvVGVsZVNlY19HbG9iYWxSb290X0NsYXNzXzIuY3JsMIGGBggrBgEFBQcBAQR6MHgwLAYIKwYB BQUHMAGGIGh0dHA6Ly9vY3NwMDMzNi50ZWxlc2VjLmRlL29jc3ByMEgGCCsGAQUFBzAChjxodHRw Oi8vcGtpMDMzNi50ZWxlc2VjLmRlL2NydC9UZWxlU2VjX0dsb2JhbFJvb3RfQ2xhc3NfMi5jZXIw DQYJKoZIhvcNAQELBQADggEBAIcL/z4Cm2XIVi3WO5qYi3FP2ropqiH5Ri71sqQPrhE4eTizDnS6 dl2e6BiClmLbTDPo3flq3zK9LExHYFV/53RrtCyD2HlrtrdNUAtmB7Xts5et6u5/MOaZ/SLick0+ hFvu+c+Z6n/XUjkurJgARH5pO7917tALOxrN5fcPImxHhPalR6D90Bo0fa3SPXez7vTXTf/D6OWS T1k+kEcQSrCFWMBvf/iu7QhCnh7U3xQuTY+8npTD5+32GPg8SecmqKc22CzeIs2LgtjZeOJVEqM7 h0S2EQvVDFKvaYwPBt/QolOLV5h7z/0HJPT8vcP9SpIClxvyt7bPZYoaorVyGTkwggWsMIIElKAD AgECAgcbY7rQHiw9MA0GCSqGSIb3DQEBCwUAMIGVMQswCQYDVQQGEwJERTFFMEMGA1UEChM8VmVy ZWluIHp1ciBGb2VyZGVydW5nIGVpbmVzIERldXRzY2hlbiBGb3JzY2h1bmdzbmV0emVzIGUuIFYu MRAwDgYDVQQLEwdERk4tUEtJMS0wKwYDVQQDEyRERk4tVmVyZWluIENlcnRpZmljYXRpb24gQXV0 aG9yaXR5IDIwHhcNMTYwNTI0MTEzODQwWhcNMzEwMjIyMjM1OTU5WjCBjTELMAkGA1UEBhMCREUx RTBDBgNVBAoMPFZlcmVpbiB6dXIgRm9lcmRlcnVuZyBlaW5lcyBEZXV0c2NoZW4gRm9yc2NodW5n c25ldHplcyBlLiBWLjEQMA4GA1UECwwHREZOLVBLSTElMCMGA1UEAwwcREZOLVZlcmVpbiBHbG9i YWwgSXNzdWluZyBDQTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAJ07eRxH3h+Gy8Zp 1xCeOdfZojDbchwFfylfS2jxrRnWTOFrG7ELf6Gr4HuLi9gtzm6IOhDuV+UefwRRNuu6cG1joL6W LkDh0YNMZj0cZGnlm6Stcq5oOVGHecwX064vXWNxSzl660Knl5BpBb+Q/6RAcL0D57+eGIgfn5mI TQ5HjUhfZZkQ0tkqSe3BuS0dnxLLFdM/fx5ULzquk1enfnjK1UriGuXtQX1TX8izKvWKMKztFwUk P7agCwf9TRqaA1KgNpzeJIdl5Of6x5ZzJBTN0OgbaJ4YWa52fvfRCng8h0uwN89Tyjo4EPPLR22M ZD08WkVKusqAfLjz56dMTM0CAwEAAaOCAgUwggIBMBIGA1UdEwEB/wQIMAYBAf8CAQEwDgYDVR0P AQH/BAQDAgEGMCkGA1UdIAQiMCAwDQYLKwYBBAGBrSGCLB4wDwYNKwYBBAGBrSGCLAEBBDAdBgNV HQ4EFgQUazqYi/nyU4na4K2yMh4JH+iqO3QwHwYDVR0jBBgwFoAUk+PYMiba1fFKpZFK4OpL4qIM z+EwgY8GA1UdHwSBhzCBhDBAoD6gPIY6aHR0cDovL2NkcDEucGNhLmRmbi5kZS9nbG9iYWwtcm9v dC1nMi1jYS9wdWIvY3JsL2NhY3JsLmNybDBAoD6gPIY6aHR0cDovL2NkcDIucGNhLmRmbi5kZS9n bG9iYWwtcm9vdC1nMi1jYS9wdWIvY3JsL2NhY3JsLmNybDCB3QYIKwYBBQUHAQEEgdAwgc0wMwYI KwYBBQUHMAGGJ2h0dHA6Ly9vY3NwLnBjYS5kZm4uZGUvT0NTUC1TZXJ2ZXIvT0NTUDBKBggrBgEF BQcwAoY+aHR0cDovL2NkcDEucGNhLmRmbi5kZS9nbG9iYWwtcm9vdC1nMi1jYS9wdWIvY2FjZXJ0 L2NhY2VydC5jcnQwSgYIKwYBBQUHMAKGPmh0dHA6Ly9jZHAyLnBjYS5kZm4uZGUvZ2xvYmFsLXJv b3QtZzItY2EvcHViL2NhY2VydC9jYWNlcnQuY3J0MA0GCSqGSIb3DQEBCwUAA4IBAQCBeEWkTqR/ DlXwCbFqPnjMaDWpHPOVnj/z+N9rOHeJLI21rT7H8pTNoAauusyosa0zCLYkhmI2THhuUPDVbmCN T1IxQ5dGdfBi5G5mUcFCMWdQ5UnnOR7Ln8qGSN4IFP8VSytmm6A4nwDO/afr0X9XLchMX9wQEZc+ lgQCXISoKTlslPwQkgZ7nu7YRrQbtQMMONncsKk/cQYLsgMHM8KNSGMlJTx6e1du94oFOO+4oK4v 9NsH1VuEGMGpuEvObJAaguS5Pfp38dIfMwK/U+d2+dwmJUFvL6Yb+qQTkPp8ftkLYF3sv8pBoGH7 EUkp2KgtdRXYShjqFu9VNCIaE40GMIIHKzCCBhOgAwIBAgIMKJfu4Avrm9jD0KheMA0GCSqGSIb3 DQEBCwUAMIGNMQswCQYDVQQGEwJERTFFMEMGA1UECgw8VmVyZWluIHp1ciBGb2VyZGVydW5nIGVp bmVzIERldXRzY2hlbiBGb3JzY2h1bmdzbmV0emVzIGUuIFYuMRAwDgYDVQQLDAdERk4tUEtJMSUw IwYDVQQDDBxERk4tVmVyZWluIEdsb2JhbCBJc3N1aW5nIENBMB4XDTIzMDYwMTEwMjIxMloXDTI2 MDUzMTEwMjIxMlowgcAxCzAJBgNVBAYTAkRFMRwwGgYDVQQIDBNOb3JkcmhlaW4tV2VzdGZhbGVu MREwDwYDVQQHDAhNdWVuc3RlcjEUMBIGA1UECgwLRkggTXVlbnN0ZXIxMjAwBgNVBAsMKUZhY2hi ZXJlaWNoIEVsZWt0cm90ZWNobmlrIHVuZCBJbmZvcm1hdGlrMRAwDgYDVQQEDAdWb2Vsa2VyMQ0w CwYDVQQqDARUaW1vMRUwEwYDVQQDDAxUaW1vIFZvZWxrZXIwggIiMA0GCSqGSIb3DQEBAQUAA4IC DwAwggIKAoICAQC6NxkLlOUgXd/NKx6MIsuoXdSNJnOed0kk8gjm9T1jIUEnKPDG4sUDz2F16RX8 tCWulO4DgIf28Cw70fgs7BaLaC+p1xXjFVEb7ZwqRcjpGBQoWIK73zRz9i2RRgRuYsPVQvJsW4n3 /Z3IfG+W4xjKOfnx0ESQMbhxDcPvnqZh3PCi6twoGso5YS/6tvBgYnm6374N29+XWIvNMg7RL+Tw VFY8mgJyqhFpDjgkAd5HSdUMlAljdnLvqlzalJWoYK2cOWNvKtPgkWoP7puy2JzGEBrnSOF1vhQq cc/DAMO6IKS+TXiWQWTlLP4BpUlpMS81MnLZAmQgqtCIOZxfvGYjL4gdQ3TpgyYlVOV/tNzVhxKS xIbyzp4beIocjnwbtWoAB9hkb6ro47V/+1ZgetvHuMAN8wdY/VzjYEW/mPM18t3mmGhzeQVOT9p2 i9wXb222ztd4kZxJclv1jjWkaTthpgQubBsD/uUdYDVZJYdRn+h9pI/C+5JOrq9pOBHVoWSBZVRE PlIeCyzy3ZLLaNNKNJAPdhKXd9rL9XCirg/W7WZtb87nudMtUf7q1rVOFCt8r/QxyNDxtKAXQSrS fglP8uwah4Dhy9HBqD49HlFmZRbM7CFiFtptI4ia81GWMx5ecW3N3yhVA2d8kg+ZfeAdgjjmukCr /WhIBQjpIsL9iwIDAQABo4ICVDCCAlAwPgYDVR0gBDcwNTAPBg0rBgEEAYGtIYIsAQEEMBAGDisG AQQBga0hgiwBAQQLMBAGDisGAQQBga0hgiwCAQQLMAkGA1UdEwQCMAAwDgYDVR0PAQH/BAQDAgXg MB0GA1UdJQQWMBQGCCsGAQUFBwMCBggrBgEFBQcDBDAdBgNVHQ4EFgQU8bYP/Ib2y3qLDL+zAvav 1GuKqUMwHwYDVR0jBBgwFoAUazqYi/nyU4na4K2yMh4JH+iqO3QwJgYDVR0RBB8wHYEbdGltby52 b2Vsa2VyQGZoLW11ZW5zdGVyLmRlMIGNBgNVHR8EgYUwgYIwP6A9oDuGOWh0dHA6Ly9jZHAxLnBj YS5kZm4uZGUvZGZuLWNhLWdsb2JhbC1nMi9wdWIvY3JsL2NhY3JsLmNybDA/oD2gO4Y5aHR0cDov L2NkcDIucGNhLmRmbi5kZS9kZm4tY2EtZ2xvYmFsLWcyL3B1Yi9jcmwvY2FjcmwuY3JsMIHbBggr BgEFBQcBAQSBzjCByzAzBggrBgEFBQcwAYYnaHR0cDovL29jc3AucGNhLmRmbi5kZS9PQ1NQLVNl cnZlci9PQ1NQMEkGCCsGAQUFBzAChj1odHRwOi8vY2RwMS5wY2EuZGZuLmRlL2Rmbi1jYS1nbG9i YWwtZzIvcHViL2NhY2VydC9jYWNlcnQuY3J0MEkGCCsGAQUFBzAChj1odHRwOi8vY2RwMi5wY2Eu ZGZuLmRlL2Rmbi1jYS1nbG9iYWwtZzIvcHViL2NhY2VydC9jYWNlcnQuY3J0MA0GCSqGSIb3DQEB CwUAA4IBAQA8NfEk6w756jTGGqO7a6xfLcOb/YuNHD/nAQ78CQOZKp/Oq3ksmGCvzpaHKYjWSfS1 I++2iuyqMRYWV/6I5ln91LS4gr4fpIOQlriRolxkjHJoYXF1LW8AUP/TUNjZowfeq8WNd+6MW8+g 5nCmfz5uFIbssqszuQ1fTf+vOdV0EBB2g5iJ9zfK1YBlffxYZcWQKCjaawimATctPyH4hfKZbdUS 1lqN+xwyJotBVete21BbBU8Z2NTAQ+YdQxM1OKT4vMD1EKr60bAiziewAtVd/cfPp0jsUct9cvUl NnKpDGVNhKUlXLzAQC9IRsaeFca3KQ7N1pehFgt+xKc1wWKBMYIEnTCCBJkCAQEwgZ4wgY0xCzAJ BgNVBAYTAkRFMUUwQwYDVQQKDDxWZXJlaW4genVyIEZvZXJkZXJ1bmcgZWluZXMgRGV1dHNjaGVu IEZvcnNjaHVuZ3NuZXR6ZXMgZS4gVi4xEDAOBgNVBAsMB0RGTi1QS0kxJTAjBgNVBAMMHERGTi1W ZXJlaW4gR2xvYmFsIElzc3VpbmcgQ0ECDCiX7uAL65vYw9CoXjANBglghkgBZQMEAgEFAKCCAc8w GAYJKoZIhvcNAQkDMQsGCSqGSIb3DQEHATAcBgkqhkiG9w0BCQUxDxcNMjYwNTIzMDgxNTMzWjAv BgkqhkiG9w0BCQQxIgQg+M6WwLgxSBDyriOXFCDcezljmVG9yAn3+Y30Rca1l/wwga8GCSsGAQQB gjcQBDGBoTCBnjCBjTELMAkGA1UEBhMCREUxRTBDBgNVBAoMPFZlcmVpbiB6dXIgRm9lcmRlcnVu ZyBlaW5lcyBEZXV0c2NoZW4gRm9yc2NodW5nc25ldHplcyBlLiBWLjEQMA4GA1UECwwHREZOLVBL STElMCMGA1UEAwwcREZOLVZlcmVpbiBHbG9iYWwgSXNzdWluZyBDQQIMKJfu4Avrm9jD0KheMIGx BgsqhkiG9w0BCRACCzGBoaCBnjCBjTELMAkGA1UEBhMCREUxRTBDBgNVBAoMPFZlcmVpbiB6dXIg Rm9lcmRlcnVuZyBlaW5lcyBEZXV0c2NoZW4gRm9yc2NodW5nc25ldHplcyBlLiBWLjEQMA4GA1UE CwwHREZOLVBLSTElMCMGA1UEAwwcREZOLVZlcmVpbiBHbG9iYWwgSXNzdWluZyBDQQIMKJfu4Avr m9jD0KheMA0GCSqGSIb3DQEBCwUABIICAGiS1JrFg4vt1VNyvfwImph528kNQpHXEBkDg6iyMGB/ ay7oM+fwVzW7s8Hnf2T9uShDfdCW6tMQ3qumpEyDIbzNX/YJUfav7HDUV2KWJ6EX7n7I6xsnoHYK /5TdxfV8jfo80B4G+o1vJsPG3Qf83FNxagkDbMTGrP+UXEEUPcmMReK6fx6K4MsDLRN6BiK6XGV3 EbBT0RO+b7tjqIc9vrtdBmvEGSCFRRZd5q/oZRwaHGaqLArgiZI4v2epWT+vnl/VrHHymPp8LaWU cA/U+t00bZMvbBwUdQkYWMffY2Vry+ES8U2MX55or7LKcH0+FUaZ/q1qGY97jTJDSML7a+kWQicW ygdPY2bAdqfAuULTEdeGBR983dAJkAizRs/U18H1PwiHoVUBA0WQSfuFQE02j/6Q9ji90+yuz/18 dWHYucPG4sfAPg6ivFpmVYzMY/83yybNf7qtC7pjVrtRAOn24bv6Qg3yzWrks15MU1eSZyUBGJrJ vRvW1FGdSuFkB4zye0xMG1+cEYcPEXqtLFDRq878SKtkNBX4HpQvaI4MtesZLusjUH69rF5qW6mv mJfPuYcqzpBsjRLZ/UdXR2QmGdgFbt6QQIOSGtBLfU1a6nL933/GSG2FnlqvGjNWJYpJ2x9wyRJb +AQqbb9BfKk5t3Nr5cAaUb4GVHIUfeFyAAAAAAAA --Apple-Mail=_D6CDCB66-F858-4E61-A9CC-BFFB2C78450E--