#
6346be87 |
| 25-Feb-2023 |
riastradh <riastradh@NetBSD.org> |
xennetback(4): Nix trailing whitespace.
No functional change intended.
|
#
f2f092a8 |
| 25-Feb-2023 |
riastradh <riastradh@NetBSD.org> |
xennetback(4): Omit needless membars in xennetback_connect.
xneti is a private data structure to which we have exclusive access here; ordering the stores doesn't make sense.
|
#
21c45acc |
| 25-Feb-2023 |
riastradh <riastradh@NetBSD.org> |
xennetback(4): Fix membars in xennetback_rx_copy_process.
- No need for barrier around touching req_cons and rsp_prod_pvt, which are private.
- RING_PUSH_RESPONSES_AND_CHECK_NOTIFY already issues
xennetback(4): Fix membars in xennetback_rx_copy_process.
- No need for barrier around touching req_cons and rsp_prod_pvt, which are private.
- RING_PUSH_RESPONSES_AND_CHECK_NOTIFY already issues xen_wmb, no need to add one explicitly.
- After pushing responses, must issue xen_wmb (not xen_rmb) before hypervisor_notify_via_evtchn.
show more ...
|
#
a9d64eec |
| 25-Feb-2023 |
riastradh <riastradh@NetBSD.org> |
xennetback(4): Fix xennetback_evthandler loop.
- After observing the other side has produced pending tx requests by reading sring->req_prod, must issue xen_rmb before touching them.
Despite all
xennetback(4): Fix xennetback_evthandler loop.
- After observing the other side has produced pending tx requests by reading sring->req_prod, must issue xen_rmb before touching them.
Despite all the effort to use the heavy-weight RING_FINAL_CHECK_FOR_REQUESTS on each request in the loop, this barrier was missing.
- No need to update req_cons at each iteration in the loop. It's private. Just update it once at the end.
- After consuming requests, must issue xen_wmb before releasing the slots with RING_FINAL_CHECK_FOR_REQUEST for the other side to reuse.
XXX pullup-8 (requires patch; at least add xen_rmb between RING_FINAL_CHECK_FOR_REQUESTS and RING_COPY_REQUEST) XXX pullup-9 (requires patch; at least add xen_rmb between RING_FINAL_CHECK_FOR_REQUESTS and RING_COPY_REQUEST) XXX pullup-10
show more ...
|
#
e20e2cb2 |
| 02-Sep-2022 |
thorpej <thorpej@NetBSD.org> |
Remove unnecessary inclusion of <net/netisr.h>.
|
#
f80400e5 |
| 01-Sep-2022 |
bouyer <bouyer@NetBSD.org> |
in backend drivers, use xen_shm_(un)map for the rings instead of inline, mostly duplicate code.
|
#
7fa0b562 |
| 01-Sep-2022 |
bouyer <bouyer@NetBSD.org> |
Add PVH support for backend drivers grant operation. Now a domU in a PVH dom0 boots multiuser.
|
#
2aa4ec1b |
| 05-May-2020 |
bouyer <bouyer@NetBSD.org> |
Make DOM0OPS build for PVH/PVHVM too
|
#
bab05fdf |
| 04-May-2020 |
jdolecek <jdolecek@NetBSD.org> |
remove IPv4 csum offloading for xennet(4) - it's not complete, and even if it was, it doesn't work with Linux Dom0 as it expects the IPv4 csum present
|
#
6f353e1c |
| 03-May-2020 |
jdolecek <jdolecek@NetBSD.org> |
add support for scatter-gather also for frontend Rx path (backend -> frontend)
enable ETHERCAP_JUMBO_MTU and feature-sg
|
#
b5c0a615 |
| 02-May-2020 |
jdolecek <jdolecek@NetBSD.org> |
fix gref offset when setting up copy of multi-fragment packet so data for second and further fragments gets copied into correct place
|
#
44c3b1e7 |
| 01-May-2020 |
jdolecek <jdolecek@NetBSD.org> |
destroy dma maps in xennetback_xenbus_destroy() to avoid memory leak when xvif(4) is destroyed
|
#
2c252179 |
| 01-May-2020 |
jdolecek <jdolecek@NetBSD.org> |
make the csum blank/undefer counters per interface
|
#
a129ad82 |
| 30-Apr-2020 |
jdolecek <jdolecek@NetBSD.org> |
add support for scatter-gather when accepting packets on frontend Tx path (frontend -> backend)
don't enable ETHERCAP_JUMBO_MTU nor feature-sg yet, need to implement support also for the frontend Rx
add support for scatter-gather when accepting packets on frontend Tx path (frontend -> backend)
don't enable ETHERCAP_JUMBO_MTU nor feature-sg yet, need to implement support also for the frontend Rx side
show more ...
|
#
e689f973 |
| 26-Apr-2020 |
jdolecek <jdolecek@NetBSD.org> |
bump send queue to 2*NET_TX_RING_SIZE to make it less likely packets are dropped on load
m_defrag() short packets before calling bus_dmamap_load_mbuf() - if it's fragmented load_mbuf would fail anyw
bump send queue to 2*NET_TX_RING_SIZE to make it less likely packets are dropped on load
m_defrag() short packets before calling bus_dmamap_load_mbuf() - if it's fragmented load_mbuf would fail anyway, and even with eventual feature-sg support it's way faster to pass the short packet in single fragment
show more ...
|
#
4aefddb8 |
| 25-Apr-2020 |
jdolecek <jdolecek@NetBSD.org> |
use m_defrag() instead of local code now that it returns single mbuf
|
#
6715ee74 |
| 11-Apr-2020 |
jdolecek <jdolecek@NetBSD.org> |
convert to bus_dma(9), no explicit xpmap_*() calls any more
as part of this move some global arrays into struct xnetback_instance, and fix race for xnetif_lookup()
|
#
fc5aa4a9 |
| 09-Apr-2020 |
jdolecek <jdolecek@NetBSD.org> |
remove check for matching ethernet address on Tx - the higher levels do this check anyway, and the check did not handle VLANs
|
#
8f8a356f |
| 07-Apr-2020 |
jdolecek <jdolecek@NetBSD.org> |
change xenbus_read() interface so that caller supplies the buffer and it's size, caller doesn't free(9) the returned value any more
|
#
f0b850de |
| 06-Apr-2020 |
jdolecek <jdolecek@NetBSD.org> |
pass and use feature-ipv6-csum-offload for ipv6 csum support, matches Linux Dom0/DomU
|
#
57c95ff9 |
| 05-Apr-2020 |
jdolecek <jdolecek@NetBSD.org> |
remove support for legacy rx-flip mode for xennet(4)/xvif(4), making rx-copy (first shipped in NetBSD 6.0 in 2012) the only supported mode
this is mostly to simplify maintenance and future developme
remove support for legacy rx-flip mode for xennet(4)/xvif(4), making rx-copy (first shipped in NetBSD 6.0 in 2012) the only supported mode
this is mostly to simplify maintenance and future development
rx-flip is not supported by Linux Dom0/DomU, and NetBSD Dom0/DomU defaults to rx-copy for over 8 years now too, so there is little need to keep the support for compatibility
besides compatibility there is no other reason to keep rx-flip - page transfer is generally slower than copy due to necessary MMU/TLB manipulation, especially on MP systems
show more ...
|
#
62f1fc0a |
| 04-Apr-2020 |
jdolecek <jdolecek@NetBSD.org> |
enable Rx checkum offload (i.e. skip) for xen netback; it works well as long as netfront in DomU is configured to fill the checksum
documentation will be updated to recommend how the flags should be
enable Rx checkum offload (i.e. skip) for xen netback; it works well as long as netfront in DomU is configured to fill the checksum
documentation will be updated to recommend how the flags should be setup on each side of the xennet(4)/xvif(4) pair
show more ...
|
#
95cc0bd6 |
| 30-Mar-2020 |
jdolecek <jdolecek@NetBSD.org> |
don't check for IFF_OACTIVE, nothing sets it
|
#
89d06f67 |
| 30-Mar-2020 |
jdolecek <jdolecek@NetBSD.org> |
batch the GNTTABOP_copy hypervisor calls in xvif(4) when processing DomU requests in xennetback_evthandler()
some 25% speed increase observed over the single-copy version
|
#
bc7c0811 |
| 29-Mar-2020 |
jdolecek <jdolecek@NetBSD.org> |
completely g/c the #if 0'ed xennetback_tx_free(), it's not used any more
|