HomeFreeBSD

xen-netfront: attempt to make cleanup idempotent

Description

xen-netfront: attempt to make cleanup idempotent

Current cleanup code assumes that all the fields are allocated and/or setup by
the time cleanup is called, but this is not always true: a failure in mid-setup
of the device will cause the functions to be called with possibly uninitialized
fields.

Fix the functions to cope with such sate, while also attempting to make the
cleanup idempotent.

Finally fix an error path during setup that would not mark the device as
closed, and hence prevents the kernel from finishing booting.

Fixes: 96375eac945c ("xen-netfront: add multiqueue support")
Sponsored by: Citrix Systems R&D

Details

Provenance
roygerAuthored on Nov 3 2023, 9:28 AM
Parents
rG1a12f0aea81b: xen: fix initialization of grant table frame array
Branches
Unknown
Tags
Unknown