Re: [PATCH] change netfilter tunables to __read_mostly
From: Brian Haley <[EMAIL PROTECTED]> Date: Fri, 01 Sep 2006 11:32:06 -0400 > Change some netfilter tunables to __read_mostly. Also fixed some > incorrect file reference comments while I was in there. > > (this will be my last __read_mostly patch unless someone points out > something else that needs it) > > Signed-off-by: Brian Haley <[EMAIL PROTECTED]> Applied, thanks. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] change netfilter tunables to __read_mostly
Brian Haley wrote: > Sorry, next time I'll send them to you, or > [EMAIL PROTECTED] netfilter-devel is better, that way other people working on netfilter get a chance to see it as well. I think only a handful of people on netfilter-devel also follow netdev. > I'll cook-up another patch for the > others you mentioned and send it out. Thanks. -- VGER BF report: H 1.86495e-12 - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] change netfilter tunables to __read_mostly
Patrick McHardy wrote: Patrick McHardy wrote: Brian Haley wrote: Change some netfilter tunables to __read_mostly. Also fixed some incorrect file reference comments while I was in there. Please send these kind of patches for netfilter to me so I can make sure they don't clash with other pending patches. (this will be my last __read_mostly patch unless someone points out something else that needs it) This seems to be a bit random, there are quite a few more candidates for __read_mostly right next to the ones you marked. Ah sorry, I didn't really get why you chose these :) The patch doesn't clash with anything in my queue, so ACK from me. Sorry, next time I'll send them to you, or [EMAIL PROTECTED] I'll cook-up another patch for the others you mentioned and send it out. -Brian - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] change netfilter tunables to __read_mostly
Patrick McHardy wrote: > Brian Haley wrote: > >>Change some netfilter tunables to __read_mostly. Also fixed some >>incorrect file reference comments while I was in there. > > > Please send these kind of patches for netfilter to me so I can > make sure they don't clash with other pending patches. > > >>(this will be my last __read_mostly patch unless someone points out >>something else that needs it) > > > This seems to be a bit random, there are quite a few more candidates for > __read_mostly right next to the ones you marked. Ah sorry, I didn't really get why you chose these :) The patch doesn't clash with anything in my queue, so ACK from me. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] change netfilter tunables to __read_mostly
Brian Haley wrote: > Change some netfilter tunables to __read_mostly. Also fixed some > incorrect file reference comments while I was in there. Please send these kind of patches for netfilter to me so I can make sure they don't clash with other pending patches. > (this will be my last __read_mostly patch unless someone points out > something else that needs it) This seems to be a bit random, there are quite a few more candidates for __read_mostly right next to the ones you marked. > diff --git a/net/netfilter/nf_conntrack_core.c > b/net/netfilter/nf_conntrack_core.c > index 8f22619..3b64dbe 100644 > --- a/net/netfilter/nf_conntrack_core.c > +++ b/net/netfilter/nf_conntrack_core.c > @@ -77,12 +77,12 @@ LIST_HEAD(nf_conntrack_expect_list); > struct nf_conntrack_protocol **nf_ct_protos[PF_MAX]; Like this one > struct nf_conntrack_l3proto *nf_ct_l3protos[PF_MAX]; and this one > static LIST_HEAD(helpers); and this one > -unsigned int nf_conntrack_htable_size = 0; > -int nf_conntrack_max; > +unsigned int nf_conntrack_htable_size __read_mostly = 0; > +int nf_conntrack_max __read_mostly; > struct list_head *nf_conntrack_hash; and this one > static kmem_cache_t *nf_conntrack_expect_cachep; and this one > struct nf_conn nf_conntrack_untracked; > -unsigned int nf_ct_log_invalid; > +unsigned int nf_ct_log_invalid __read_mostly; > static LIST_HEAD(unconfirmed); > > static int nf_conntrack_vmalloc; and this one Same ones in ip_conntrack. > /* Log invalid packets of a given protocol */ > diff --git a/net/ipv4/netfilter/ip_queue.c b/net/ipv4/netfilter/ip_queue.c > index 276a964..80060cb 100644 > --- a/net/ipv4/netfilter/ip_queue.c > +++ b/net/ipv4/netfilter/ip_queue.c > @@ -53,7 +53,7 @@ struct ipq_queue_entry { > typedef int (*ipq_cmpfn)(struct ipq_queue_entry *, unsigned long); > > static unsigned char copy_mode = IPQ_COPY_NONE; > -static unsigned int queue_maxlen = IPQ_QMAX_DEFAULT; > +static unsigned int queue_maxlen __read_mostly = IPQ_QMAX_DEFAULT; > static DEFINE_RWLOCK(queue_lock); > static int peer_pid; > static unsigned int copy_range; Basically all these variables besides the lock are candidates. - To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH] change netfilter tunables to __read_mostly
Change some netfilter tunables to __read_mostly. Also fixed some incorrect file reference comments while I was in there. (this will be my last __read_mostly patch unless someone points out something else that needs it) Signed-off-by: Brian Haley <[EMAIL PROTECTED]> diff --git a/net/netfilter/nf_conntrack_core.c b/net/netfilter/nf_conntrack_core.c index 8f22619..3b64dbe 100644 --- a/net/netfilter/nf_conntrack_core.c +++ b/net/netfilter/nf_conntrack_core.c @@ -77,12 +77,12 @@ LIST_HEAD(nf_conntrack_expect_list); struct nf_conntrack_protocol **nf_ct_protos[PF_MAX]; struct nf_conntrack_l3proto *nf_ct_l3protos[PF_MAX]; static LIST_HEAD(helpers); -unsigned int nf_conntrack_htable_size = 0; -int nf_conntrack_max; +unsigned int nf_conntrack_htable_size __read_mostly = 0; +int nf_conntrack_max __read_mostly; struct list_head *nf_conntrack_hash; static kmem_cache_t *nf_conntrack_expect_cachep; struct nf_conn nf_conntrack_untracked; -unsigned int nf_ct_log_invalid; +unsigned int nf_ct_log_invalid __read_mostly; static LIST_HEAD(unconfirmed); static int nf_conntrack_vmalloc; diff --git a/net/netfilter/nf_conntrack_proto_generic.c b/net/netfilter/nf_conntrack_proto_generic.c index 46bc27e..26408bb 100644 --- a/net/netfilter/nf_conntrack_proto_generic.c +++ b/net/netfilter/nf_conntrack_proto_generic.c @@ -17,7 +17,7 @@ #include #include -unsigned int nf_ct_generic_timeout = 600*HZ; +unsigned int nf_ct_generic_timeout __read_mostly = 600*HZ; static int generic_pkt_to_tuple(const struct sk_buff *skb, unsigned int dataoff, diff --git a/net/netfilter/nf_conntrack_proto_sctp.c b/net/netfilter/nf_conntrack_proto_sctp.c index 9bd8a78..af56877 100644 --- a/net/netfilter/nf_conntrack_proto_sctp.c +++ b/net/netfilter/nf_conntrack_proto_sctp.c @@ -64,13 +64,13 @@ static const char *sctp_conntrack_names[ #define HOURS * 60 MINS #define DAYS * 24 HOURS -static unsigned int nf_ct_sctp_timeout_closed= 10 SECS; -static unsigned int nf_ct_sctp_timeout_cookie_wait = 3 SECS; -static unsigned int nf_ct_sctp_timeout_cookie_echoed = 3 SECS; -static unsigned int nf_ct_sctp_timeout_established = 5 DAYS; -static unsigned int nf_ct_sctp_timeout_shutdown_sent = 300 SECS / 1000; -static unsigned int nf_ct_sctp_timeout_shutdown_recd = 300 SECS / 1000; -static unsigned int nf_ct_sctp_timeout_shutdown_ack_sent = 3 SECS; +static unsigned int nf_ct_sctp_timeout_closed __read_mostly = 10 SECS; +static unsigned int nf_ct_sctp_timeout_cookie_wait __read_mostly = 3 SECS; +static unsigned int nf_ct_sctp_timeout_cookie_echoed __read_mostly = 3 SECS; +static unsigned int nf_ct_sctp_timeout_established __read_mostly = 5 DAYS; +static unsigned int nf_ct_sctp_timeout_shutdown_sent __read_mostly = 300 SECS / 1000; +static unsigned int nf_ct_sctp_timeout_shutdown_recd __read_mostly = 300 SECS / 1000; +static unsigned int nf_ct_sctp_timeout_shutdown_ack_sent __read_mostly = 3 SECS; static unsigned int * sctp_timeouts[] = { NULL, /* SCTP_CONNTRACK_NONE */ diff --git a/net/netfilter/nf_conntrack_proto_tcp.c b/net/netfilter/nf_conntrack_proto_tcp.c index 308d2ab..9fc0ee6 100644 --- a/net/netfilter/nf_conntrack_proto_tcp.c +++ b/net/netfilter/nf_conntrack_proto_tcp.c @@ -57,19 +57,19 @@ static DEFINE_RWLOCK(tcp_lock); /* "Be conservative in what you do, be liberal in what you accept from others." If it's non-zero, we mark only out of window RST segments as INVALID. */ -int nf_ct_tcp_be_liberal = 0; +int nf_ct_tcp_be_liberal __read_mostly = 0; /* When connection is picked up from the middle, how many packets are required to pass in each direction when we assume we are in sync - if any side uses window scaling, we lost the game. If it is set to zero, we disable picking up already established connections. */ -int nf_ct_tcp_loose = 3; +int nf_ct_tcp_loose __read_mostly = 3; /* Max number of the retransmitted packets without receiving an (acceptable) ACK from the destination. If this number is reached, a shorter timer will be started. */ -int nf_ct_tcp_max_retrans = 3; +int nf_ct_tcp_max_retrans __read_mostly = 3; /* FIXME: Examine ipfilter's timeouts and conntrack transitions more closely. They're more complex. --RR */ @@ -92,19 +92,19 @@ static const char *tcp_conntrack_names[] #define HOURS * 60 MINS #define DAYS * 24 HOURS -unsigned int nf_ct_tcp_timeout_syn_sent = 2 MINS; -unsigned int nf_ct_tcp_timeout_syn_recv = 60 SECS; -unsigned int nf_ct_tcp_timeout_established = 5 DAYS; -unsigned int nf_ct_tcp_timeout_fin_wait = 2 MINS; -unsigned int nf_ct_tcp_timeout_close_wait = 60 SECS; -unsigned int nf_ct_tcp_timeout_last_ack = 30 SECS; -unsigned int nf_ct_tcp_timeout_time_wait = 2 MINS; -unsigned int nf_ct_tcp_timeout_close =10 SECS; +unsigned int nf_ct_tcp_timeout_syn_sent __read_mostly = 2 MINS; +unsigned int nf_ct_tcp_timeout