View | Details | Raw Unified | Return to bug 241489 | Differences between
and this patch

Collapse All | Expand All

(-)b/sys/dev/netmap/netmap_generic.c (+9 lines)
Lines 669-674 generic_netmap_txsync(struct netmap_kring *kring, int flags) Link Here
669
	if (nm_i != head) {	/* we have new packets to send */
669
	if (nm_i != head) {	/* we have new packets to send */
670
		struct nm_os_gen_arg a;
670
		struct nm_os_gen_arg a;
671
		u_int event = -1;
671
		u_int event = -1;
672
#ifdef __FreeBSD__
673
		struct epoch_tracker et;
674
675
		NET_EPOCH_ENTER(et);
676
#endif
672
677
673
		if (gna->txqdisc && nm_kr_txempty(kring)) {
678
		if (gna->txqdisc && nm_kr_txempty(kring)) {
674
			/* In txqdisc mode, we ask for a delayed notification,
679
			/* In txqdisc mode, we ask for a delayed notification,
Lines 776-781 generic_netmap_txsync(struct netmap_kring *kring, int flags) Link Here
776
		/* Update hwcur to the next slot to transmit. Here nm_i
781
		/* Update hwcur to the next slot to transmit. Here nm_i
777
		 * is not necessarily head, we could break early. */
782
		 * is not necessarily head, we could break early. */
778
		kring->nr_hwcur = nm_i;
783
		kring->nr_hwcur = nm_i;
784
785
#ifdef __FreeBSD__
786
		NET_EPOCH_EXIT(et);
787
#endif
779
	}
788
	}
780
789
781
	/*
790
	/*

Return to bug 241489