socsvn commit: r271285 - soc2014/dpl/netmap-ipfwjit/sys/netpfil/ipfw

dpl at FreeBSD.org dpl at FreeBSD.org
Wed Jul 23 16:28:58 UTC 2014


Author: dpl
Date: Wed Jul 23 16:28:57 2014
New Revision: 271285
URL: http://svnweb.FreeBSD.org/socsvn/?view=rev&rev=271285

Log:
  Properly inline the functions. We want them inlined here.

Modified:
  soc2014/dpl/netmap-ipfwjit/sys/netpfil/ipfw/ip_fw2.c

Modified: soc2014/dpl/netmap-ipfwjit/sys/netpfil/ipfw/ip_fw2.c
==============================================================================
--- soc2014/dpl/netmap-ipfwjit/sys/netpfil/ipfw/ip_fw2.c	Wed Jul 23 16:27:43 2014	(r271284)
+++ soc2014/dpl/netmap-ipfwjit/sys/netpfil/ipfw/ip_fw2.c	Wed Jul 23 16:28:57 2014	(r271285)
@@ -127,109 +127,109 @@
 static unsigned int default_fw_tables = IPFW_TABLES_DEFAULT;
 
 /* Rule functions, ordered by appereance in the code */
-static inline void rule_nop(int *);
-static inline void rule_forward_mac(int);
-static inline void rule_jail(int *, u_short, uint8_t, ipfw_insn *, struct ip_fw_args *, int, void *);
-static inline void rule_recv(int *, ipfw_insn *, struct mbuf *, struct ip_fw_chain *, uint32_t *);
-static inline void rule_xmit(int *, struct ifnet *, ipfw_insn *, struct ip_fw_chain *, uint32_t *);
-static inline void rule_via(int *, struct ifnet *, struct mbuf *, ipfw_insn *, struct ip_fw_chain *, uint32_t *);
-static inline void rule_macaddr2(int *, struct ip_fw_args *, ipfw_insn *);
-static inline void rule_mac_type(int *, struct ip_fw_args *, ipfw_insn *, int, uint16_t);
-static inline void rule_frag(int *, u_short);
-static inline void rule_in(int *, struct ifnet *);
-static inline void rule_layer2(int *, struct ip_fw_args *);
-static inline void rule_diverted(int *, struct ip_fw_args *, ipfw_insn *);
-static inline void rule_proto(int *, uint8_t, ipfw_insn *);
-static inline void rule_ip_src(int *, int, ipfw_insn *, struct in_addr *);
-static inline void rule_ip_dst_lookup(int *, ipfw_insn *, int, struct ip_fw_args *, uint32_t *, int, int, struct ip *, struct in_addr *, struct in_addr *, uint16_t, uint16_t, u_short, uint8_t, int, void *, struct ip_fw_chain *);
-static inline void rule_ip_dst_mask(int *, int, ipfw_insn *, int, struct in_addr *, struct in_addr *);
-static inline void rule_ip_src_me(int *, int, int, struct in_addr *, struct ip_fw_args *);
+static __always_inline void rule_nop(int *);
+static __always_inline void rule_forward_mac(int);
+static __always_inline void rule_jail(int *, u_short, uint8_t, ipfw_insn *, struct ip_fw_args *, int, void *);
+static __always_inline void rule_recv(int *, ipfw_insn *, struct mbuf *, struct ip_fw_chain *, uint32_t *);
+static __always_inline void rule_xmit(int *, struct ifnet *, ipfw_insn *, struct ip_fw_chain *, uint32_t *);
+static __always_inline void rule_via(int *, struct ifnet *, struct mbuf *, ipfw_insn *, struct ip_fw_chain *, uint32_t *);
+static __always_inline void rule_macaddr2(int *, struct ip_fw_args *, ipfw_insn *);
+static __always_inline void rule_mac_type(int *, struct ip_fw_args *, ipfw_insn *, int, uint16_t);
+static __always_inline void rule_frag(int *, u_short);
+static __always_inline void rule_in(int *, struct ifnet *);
+static __always_inline void rule_layer2(int *, struct ip_fw_args *);
+static __always_inline void rule_diverted(int *, struct ip_fw_args *, ipfw_insn *);
+static __always_inline void rule_proto(int *, uint8_t, ipfw_insn *);
+static __always_inline void rule_ip_src(int *, int, ipfw_insn *, struct in_addr *);
+static __always_inline void rule_ip_dst_lookup(int *, ipfw_insn *, int, struct ip_fw_args *, uint32_t *, int, int, struct ip *, struct in_addr *, struct in_addr *, uint16_t, uint16_t, u_short, uint8_t, int, void *, struct ip_fw_chain *);
+static __always_inline void rule_ip_dst_mask(int *, int, ipfw_insn *, int, struct in_addr *, struct in_addr *);
+static __always_inline void rule_ip_src_me(int *, int, int, struct in_addr *, struct ip_fw_args *);
 
 #ifdef INET6
-static inline void rule_ip6_src_me(int *, int, struct ip_fw_args *);
+static __always_inline void rule_ip6_src_me(int *, int, struct ip_fw_args *);
 #endif /* INET6 */
 
-static inline void rule_ip_src_set(int *, int, ipfw_insn *, struct ip_fw_args *);
-static inline void rule_ip_dst(int *, int, ipfw_insn *, struct in_addr *);
-static inline void rule_ip_dst_me(int *, struct ip_fw_args *, int, int, struct in_addr *);
+static __always_inline void rule_ip_src_set(int *, int, ipfw_insn *, struct ip_fw_args *);
+static __always_inline void rule_ip_dst(int *, int, ipfw_insn *, struct in_addr *);
+static __always_inline void rule_ip_dst_me(int *, struct ip_fw_args *, int, int, struct in_addr *);
 
 #ifdef INET6
-static inline void rule_ip6_dst_me(int *, struct ip_fw_args *args, int is_ipv6);
+static __always_inline void rule_ip6_dst_me(int *, struct ip_fw_args *args, int is_ipv6);
 #endif /* INET6 */
 
-static inline void rule_ip_dstport(int *, uint8_t, u_short , ipfw_insn *, int , uint16_t , uint16_t);
-static inline void rule_icmptype(int *, u_short, uint8_t , void *, ipfw_insn *);
+static __always_inline void rule_ip_dstport(int *, uint8_t, u_short , ipfw_insn *, int , uint16_t , uint16_t);
+static __always_inline void rule_icmptype(int *, u_short, uint8_t , void *, ipfw_insn *);
 
 #ifdef INET6
-static inline void rule_icmp6type(int *, u_short, int, uint8_t, void *, ipfw_insn *);
+static __always_inline void rule_icmp6type(int *, u_short, int, uint8_t, void *, ipfw_insn *);
 #endif /* INET6 */
 
-static inline void rule_ipopt(int *, int, struct ip *, ipfw_insn *);
-static inline void rule_ipver(int *, int, ipfw_insn *, struct ip *);
-static inline void rule_ipttl(int *, int, ipfw_insn *, int, struct ip *, uint16_t);
-static inline void rule_ipprecedence(int *, int, ipfw_insn *, struct ip *);
-static inline void rule_iptos(int *, int, ipfw_insn *, struct ip *);
-static inline void rule_dscp(int *, int, int, ipfw_insn *, struct ip *);
-static inline void rule_tcpdatalen(int *, uint8_t, u_short, void *, uint16_t, int, ipfw_insn *, struct ip *);
-static inline void rule_tcpflags(int *, uint8_t, u_short, ipfw_insn *, void *);
-static inline int rule_tcpopts(int *, u_int, void *, uint8_t, u_short, ipfw_insn *, struct mbuf *, struct ip_fw_args *);
-static inline void rule_tcpseq(int *, uint8_t, u_short, ipfw_insn *, void *);
-static inline void rule_tcpack(int *, uint8_t, u_short, ipfw_insn *, void *);
-static inline void rule_tcpwin(int *, uint8_t, u_short, ipfw_insn *, int, void *);
-static inline void rule_estab(int *, uint8_t, u_short, void *);
-static inline void rule_altq(int *, ipfw_insn *, struct mbuf *, struct ip *);
-static inline void rule_log(int *, struct ip_fw *, u_int, struct ip_fw_args *, struct mbuf *, struct ifnet *, u_short, u_short, uint32_t, struct ip *);
-static inline void rule_prob(int *, ipfw_insn *);
-static inline void rule_verrevpath(int *, struct ifnet *, struct mbuf *, int, struct ip_fw_args *, struct in_addr *);
-static inline void rule_versrcreach(int *, u_int, struct ifnet *, int, struct ip_fw_args *, struct in_addr *);
-static inline void rule_antispoof(int *, struct ifnet *, u_int, int, int, struct in_addr *, struct ip_fw_args *, struct mbuf *);
+static __always_inline void rule_ipopt(int *, int, struct ip *, ipfw_insn *);
+static __always_inline void rule_ipver(int *, int, ipfw_insn *, struct ip *);
+static __always_inline void rule_ipttl(int *, int, ipfw_insn *, int, struct ip *, uint16_t);
+static __always_inline void rule_ipprecedence(int *, int, ipfw_insn *, struct ip *);
+static __always_inline void rule_iptos(int *, int, ipfw_insn *, struct ip *);
+static __always_inline void rule_dscp(int *, int, int, ipfw_insn *, struct ip *);
+static __always_inline void rule_tcpdatalen(int *, uint8_t, u_short, void *, uint16_t, int, ipfw_insn *, struct ip *);
+static __always_inline void rule_tcpflags(int *, uint8_t, u_short, ipfw_insn *, void *);
+static __always_inline int rule_tcpopts(int *, u_int, void *, uint8_t, u_short, ipfw_insn *, struct mbuf *, struct ip_fw_args *);
+static __always_inline void rule_tcpseq(int *, uint8_t, u_short, ipfw_insn *, void *);
+static __always_inline void rule_tcpack(int *, uint8_t, u_short, ipfw_insn *, void *);
+static __always_inline void rule_tcpwin(int *, uint8_t, u_short, ipfw_insn *, int, void *);
+static __always_inline void rule_estab(int *, uint8_t, u_short, void *);
+static __always_inline void rule_altq(int *, ipfw_insn *, struct mbuf *, struct ip *);
+static __always_inline void rule_log(int *, struct ip_fw *, u_int, struct ip_fw_args *, struct mbuf *, struct ifnet *, u_short, u_short, uint32_t, struct ip *);
+static __always_inline void rule_prob(int *, ipfw_insn *);
+static __always_inline void rule_verrevpath(int *, struct ifnet *, struct mbuf *, int, struct ip_fw_args *, struct in_addr *);
+static __always_inline void rule_versrcreach(int *, u_int, struct ifnet *, int, struct ip_fw_args *, struct in_addr *);
+static __always_inline void rule_antispoof(int *, struct ifnet *, u_int, int, int, struct in_addr *, struct ip_fw_args *, struct mbuf *);
 
 #ifdef IPSEC
-static inline void rule_ipsec(int *match, struct mbuf *);
+static __always_inline void rule_ipsec(int *match, struct mbuf *);
 #endif /* IPSEC */
 
 #ifdef INET6
-static inline void rule_ip6_src(int *, int, struct ip_fw_args *, ipfw_insn *);
-static inline void rule_ip6_dst(int *, int, struct ip_fw_args *, ipfw_insn *);
-static inline void rule_ip6_dst_mask(int *, struct ip_fw_args *, ipfw_insn *, int, int);
-static inline void rule_flow6id(int *, int, struct ip_fw_args *, ipfw_insn *);
-static inline void rule_ext_hdr(int *, int, uint16_t, ipfw_insn *);
-static inline void rule_ip6(int *, int);
+static __always_inline void rule_ip6_src(int *, int, struct ip_fw_args *, ipfw_insn *);
+static __always_inline void rule_ip6_dst(int *, int, struct ip_fw_args *, ipfw_insn *);
+static __always_inline void rule_ip6_dst_mask(int *, struct ip_fw_args *, ipfw_insn *, int, int);
+static __always_inline void rule_flow6id(int *, int, struct ip_fw_args *, ipfw_insn *);
+static __always_inline void rule_ext_hdr(int *, int, uint16_t, ipfw_insn *);
+static __always_inline void rule_ip6(int *, int);
 #endif /* INET6 */
 
-static inline void rule_ip4(int *, int);
-static inline void rule_tag(int *, ipfw_insn *, struct mbuf *, uint32_t);
-static inline void rule_fib(int *, struct ip_fw_args *, ipfw_insn *);
-static inline void rule_sockarg(int *, int, uint8_t, struct in_addr *, struct in_addr *, uint16_t, uint16_t, struct ip_fw_args *, uint32_t *);
-static inline void rule_tagged(int *, ipfw_insn *, int, struct mbuf *, uint32_t);
+static __always_inline void rule_ip4(int *, int);
+static __always_inline void rule_tag(int *, ipfw_insn *, struct mbuf *, uint32_t);
+static __always_inline void rule_fib(int *, struct ip_fw_args *, ipfw_insn *);
+static __always_inline void rule_sockarg(int *, int, uint8_t, struct in_addr *, struct in_addr *, uint16_t, uint16_t, struct ip_fw_args *, uint32_t *);
+static __always_inline void rule_tagged(int *, ipfw_insn *, int, struct mbuf *, uint32_t);
 
 /* The second sets of opcodes. They represent the actions of a rule. */
-static inline void rule_keep_state(int *, struct ip_fw *f, ipfw_insn *, struct ip_fw_args *, uint32_t, int *, int *, int *);
-static inline void rule_check_state(int *, int *, ipfw_dyn_rule *, struct ip_fw_args *, uint8_t, void *, int, struct ip_fw *, int *, struct ip_fw_chain *, ipfw_insn *, int *, int *);
-static inline void rule_accept(int *, int *, int *);
-static inline void rule_queue(struct ip_fw_args *, int, struct ip_fw_chain *, ipfw_insn *, uint32_t, int *, int *, int *);
-static inline void rule_tee(int *, int *, int *, ipfw_insn *, struct ip_fw_args *, int, uint32_t, struct ip_fw_chain *);
-static inline void rule_count(int *, struct ip_fw *, int);
-static inline void rule_skipto(int *, int *, ipfw_insn *, int *, int *, int *, struct ip_fw *, int, struct ip_fw_chain *, uint32_t);
-static inline void rule_callreturn(ipfw_insn *, struct mbuf *, struct ip_fw *, struct ip_fw_chain *, uint32_t, int, int *, int *, int *, int *);
-static inline void rule_reject(u_int, int, u_short, uint8_t, void *, struct mbuf *, struct in_addr *, struct ip_fw_args *, ipfw_insn *, uint16_t, struct ip *);
+static __always_inline void rule_keep_state(int *, struct ip_fw *f, ipfw_insn *, struct ip_fw_args *, uint32_t, int *, int *, int *);
+static __always_inline void rule_check_state(int *, int *, ipfw_dyn_rule *, struct ip_fw_args *, uint8_t, void *, int, struct ip_fw *, int *, struct ip_fw_chain *, ipfw_insn *, int *, int *);
+static __always_inline void rule_accept(int *, int *, int *);
+static __always_inline void rule_queue(struct ip_fw_args *, int, struct ip_fw_chain *, ipfw_insn *, uint32_t, int *, int *, int *);
+static __always_inline void rule_tee(int *, int *, int *, ipfw_insn *, struct ip_fw_args *, int, uint32_t, struct ip_fw_chain *);
+static __always_inline void rule_count(int *, struct ip_fw *, int);
+static __always_inline void rule_skipto(int *, int *, ipfw_insn *, int *, int *, int *, struct ip_fw *, int, struct ip_fw_chain *, uint32_t);
+static __always_inline void rule_callreturn(ipfw_insn *, struct mbuf *, struct ip_fw *, struct ip_fw_chain *, uint32_t, int, int *, int *, int *, int *);
+static __always_inline void rule_reject(u_int, int, u_short, uint8_t, void *, struct mbuf *, struct in_addr *, struct ip_fw_args *, ipfw_insn *, uint16_t, struct ip *);
 
 #ifdef INET6
-static inline void rule_unreach6(u_int, int, u_short, uint8_t, uint8_t, struct mbuf *, struct ip_fw_args *, ipfw_insn *, struct ip *);
+static __always_inline void rule_unreach6(u_int, int, u_short, uint8_t, uint8_t, struct mbuf *, struct ip_fw_args *, ipfw_insn *, struct ip *);
 #endif /* INET6 */
 
-static inline void rule_deny(int *, int *, int *);
-static inline void rule_forward_ip(struct ip_fw_args *, ipfw_dyn_rule *, struct ip_fw *, int, ipfw_insn *, uint32_t, int *, int *, int *);
+static __always_inline void rule_deny(int *, int *, int *);
+static __always_inline void rule_forward_ip(struct ip_fw_args *, ipfw_dyn_rule *, struct ip_fw *, int, ipfw_insn *, uint32_t, int *, int *, int *);
 
 #ifdef INET6
-static inline void rule_forward_ip6(struct ip_fw_args *, ipfw_dyn_rule *, struct ip_fw *, int, ipfw_insn *, int *, int *, int *);
+static __always_inline void rule_forward_ip6(struct ip_fw_args *, ipfw_dyn_rule *, struct ip_fw *, int, ipfw_insn *, int *, int *, int *);
 #endif /* INET6 */
 
-static inline void rule_ngtee(struct ip_fw_args *, int, struct ip_fw_chain *, ipfw_insn *, uint32_t, int *, int *, int *);
-static inline void rule_setfib(struct ip_fw *, int, uint32_t, ipfw_insn *, struct mbuf *, struct ip_fw_args *, int *);
-static inline void rule_setdscp(ipfw_insn *, struct ip *, int, int, uint32_t, struct ip_fw *, int, int *);
-static inline void rule_nat(struct ip_fw_args *, int, struct ip_fw_chain *, ipfw_insn *, struct mbuf *, uint32_t, int *, int *, int *);
-static inline void rule_reass(struct ip_fw *, int, struct ip_fw_chain *, int, struct ip *, struct ip_fw_args *, struct mbuf *, int *, int *, int *);
+static __always_inline void rule_ngtee(struct ip_fw_args *, int, struct ip_fw_chain *, ipfw_insn *, uint32_t, int *, int *, int *);
+static __always_inline void rule_setfib(struct ip_fw *, int, uint32_t, ipfw_insn *, struct mbuf *, struct ip_fw_args *, int *);
+static __always_inline void rule_setdscp(ipfw_insn *, struct ip *, int, int, uint32_t, struct ip_fw *, int, int *);
+static __always_inline void rule_nat(struct ip_fw_args *, int, struct ip_fw_chain *, ipfw_insn *, struct mbuf *, uint32_t, int *, int *, int *);
+static __always_inline void rule_reass(struct ip_fw *, int, struct ip_fw_chain *, int, struct ip *, struct ip_fw_args *, struct mbuf *, int *, int *, int *);
 
 /* JIT compiling API */
 typedef int (*funcptr)();


More information about the svn-soc-all mailing list