Note that IFCAP_HWCSUM has two bits set. Because of this, it doesn't XOR cleanly in the current if-else condition, but I'm not sure whether that was intended. I just wanted to pass this by people in case it was a logical bug.
--- dev/ixgb/if_ixgb.c.orig +++ dev/ixgb/if_ixgb.c @@ -599,10 +599,7 @@ ixgb_ioctl(struct ifnet * ifp, IOCTL_CMD } #endif /* DEVICE_POLLING */ if (mask & IFCAP_HWCSUM) { - if (IFCAP_HWCSUM & ifp->if_capenable) - ifp->if_capenable &= ~IFCAP_HWCSUM; - else - ifp->if_capenable |= IFCAP_HWCSUM; + ifp->if_capenable ^= IFCAP_HWCSUM; if (ifp->if_drv_flags & IFF_DRV_RUNNING) ixgb_init(adapter); } _______________________________________________ freebsd-current@freebsd.org mailing list https://lists.freebsd.org/mailman/listinfo/freebsd-current To unsubscribe, send any mail to "freebsd-current-unsubscr...@freebsd.org"