public inbox for newlib-cvs@sourceware.org
help / color / mirror / Atom feed
* [newlib-cygwin] Although most of the NIC drivers are epoch ready,
@ 2022-07-11 11:51 Sebastian Huber
  0 siblings, 0 replies; only message in thread
From: Sebastian Huber @ 2022-07-11 11:51 UTC (permalink / raw)
  To: newlib-cvs

https://sourceware.org/git/gitweb.cgi?p=newlib-cygwin.git;h=f3303cf1d5c9fe8236a576fc994052bc7718759a

commit f3303cf1d5c9fe8236a576fc994052bc7718759a
Author: Gleb Smirnoff <glebius@FreeBSD.org>
Date:   Mon Feb 24 21:07:30 2020 +0000

    Although most of the NIC drivers are epoch ready,
    
    due to peer pressure switch over to opt-in instead of opt-out for epoch.
    
    Instead of IFF_NEEDSEPOCH, provide IFF_KNOWSEPOCH. If driver marks
    itself with IFF_KNOWSEPOCH, then ether_input() would not enter epoch
    when processing its packets.
    
    Now this will create recursive entrance in epoch in >90% network
    drivers, but will guarantee safeness of the transition.
    
    Mark several tested drivers as IFF_KNOWSEPOCH.
    
    Reviewed by:            hselasky, jeff, bz, gallatin
    Differential Revision:  https://reviews.freebsd.org/D23674

Diff:
---
 newlib/libc/sys/rtems/include/net/if.h | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/newlib/libc/sys/rtems/include/net/if.h b/newlib/libc/sys/rtems/include/net/if.h
index 2c1ecdf32..78b1654dc 100644
--- a/newlib/libc/sys/rtems/include/net/if.h
+++ b/newlib/libc/sys/rtems/include/net/if.h
@@ -144,7 +144,7 @@ struct if_data {
 #define	IFF_DEBUG	0x4		/* (n) turn on debugging */
 #define	IFF_LOOPBACK	0x8		/* (i) is a loopback net */
 #define	IFF_POINTOPOINT	0x10		/* (i) is a point-to-point link */
-#define	IFF_NEEDSEPOCH	0x20		/* (i) calls if_input w/o epoch */
+#define	IFF_KNOWSEPOCH	0x20		/* (i) calls if_input in net epoch */
 #define	IFF_DRV_RUNNING	0x40		/* (d) resources allocated */
 #define	IFF_NOARP	0x80		/* (n) no address resolution protocol */
 #define	IFF_PROMISC	0x100		/* (n) receive all packets */
@@ -178,7 +178,7 @@ struct if_data {
 #define	IFF_CANTCHANGE \
 	(IFF_BROADCAST|IFF_POINTOPOINT|IFF_DRV_RUNNING|IFF_DRV_OACTIVE|\
 	    IFF_SIMPLEX|IFF_MULTICAST|IFF_ALLMULTI|IFF_PROMISC|\
-	    IFF_DYING|IFF_CANTCONFIG)
+	    IFF_DYING|IFF_CANTCONFIG|IFF_KNOWSEPOCH)
 
 /*
  * Values for if_link_state.


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-07-11 11:51 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-11 11:51 [newlib-cygwin] Although most of the NIC drivers are epoch ready, Sebastian Huber

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).