GithubHelp home page GithubHelp logo

Comments (10)

YanVugenfirer avatar YanVugenfirer commented on June 3, 2024

Related:

from kvm-guest-drivers-windows.

YanVugenfirer avatar YanVugenfirer commented on June 3, 2024

I think this is an unfortunate remnant of the support for the pre-1.0 virtio spec.

from kvm-guest-drivers-windows.

ybendito avatar ybendito commented on June 3, 2024

Probably was broken long time ago. Probably the driver should fail to start if this feature is not present until this is fixed. Thank you for pointing this out.

from kvm-guest-drivers-windows.

YanVugenfirer avatar YanVugenfirer commented on June 3, 2024

@ddaney-fungible Out of curiosity - do you experience issues with the non-compliant driver on HW or other than QEMU\KVM hypervisor?

from kvm-guest-drivers-windows.

ddaney-fungible avatar ddaney-fungible commented on June 3, 2024

@ddaney-fungible Out of curiosity - do you experience issues with the non-compliant driver on HW or other than QEMU\KVM hypervisor?

Yes. The failure was seen in a virtio-net function that is not part of Qemu. On the system in question EDK2 and Linux drivers seem to work well, but it was observed that this Windows driver was supplying buffers in two chunks, one of size 12 for the header and the second for the packet payload.

from kvm-guest-drivers-windows.

ybendito avatar ybendito commented on June 3, 2024

@ddaney-fungible Can you please share with us the device features as suggested during feature negotiation? (better in hex)
Thanks.

from kvm-guest-drivers-windows.

ddaney-fungible avatar ddaney-fungible commented on June 3, 2024

@ddaney-fungible Can you please share with us the host features as suggested during feature negotiation? (better in hex) Thanks.

device_feature[0] = 0x00010029
defice_feature[1] = 0x00000057

Driver is responding with:

driver_feature[0] = 0x00010029
driver_feature[1] = 0x00000007

from kvm-guest-drivers-windows.

ybendito avatar ybendito commented on June 3, 2024

@ddaney-fungible
Just some notes to the feature set:
The device sets VIRTIO_NET_F_CTRL_GUEST_OFFLOADS(2) but this does not have any effect as the device does not have a control queue and does not indicate support for any guest offloads,
The device sets VIRTIO_NET_F_GSO(6) which does not have any effect as this bit is somehow may make sense only for legacy device
The features 4 and 48 are not defined in the spec and so ignored but in further editions of the spec they may designate something unexpected
All this, of course, is not related to the fact that the driver currently ignores VIRTIO_NET_F_MRG_RXBUF

from kvm-guest-drivers-windows.

ddaney-fungible avatar ddaney-fungible commented on June 3, 2024

I think there is a misunderstanding of how to interpret those values.

device_feature[0] = VIRTIO_NET_F_CSUM |
VIRTIO_NET_F_MTU |
VIRTIO_NET_F_MAC |
VIRTIO_NET_F_STATUS

device_feature[1] = VIRTIO_F_VERSION_1 |
VIRTIO_F_NOTIFICATION_DATA |
VIRTIO_F_ACCESS_PLATFORM |
VIRTIO_F_ORDER_PLATFORM |
VIRTIO_F_RING_PACKED

from kvm-guest-drivers-windows.

ybendito avatar ybendito commented on June 3, 2024

@ddaney-fungible Sorry, by mistake I swapped them when read

from kvm-guest-drivers-windows.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.