Commit 8295b6d9 authored by Eric Dumazet's avatar Eric Dumazet Committed by David S. Miller

[SCTP]: Use the {DEFINE|REF}_PROTO_INUSE infrastructure

Trivial patch to make "sctcp,sctpv6" protocols uses the fast "inuse
sockets" infrastructure

Each protocol use then a static percpu var, instead of a dynamic one.
This saves some ram and some cpu cycles
Signed-off-by: default avatarEric Dumazet <dada1@cosmosbay.com>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent c5a432f1
...@@ -6455,6 +6455,8 @@ static void sctp_sock_migrate(struct sock *oldsk, struct sock *newsk, ...@@ -6455,6 +6455,8 @@ static void sctp_sock_migrate(struct sock *oldsk, struct sock *newsk,
} }
DEFINE_PROTO_INUSE(sctp)
/* This proto struct describes the ULP interface for SCTP. */ /* This proto struct describes the ULP interface for SCTP. */
struct proto sctp_prot = { struct proto sctp_prot = {
.name = "SCTP", .name = "SCTP",
...@@ -6483,9 +6485,12 @@ struct proto sctp_prot = { ...@@ -6483,9 +6485,12 @@ struct proto sctp_prot = {
.memory_pressure = &sctp_memory_pressure, .memory_pressure = &sctp_memory_pressure,
.enter_memory_pressure = sctp_enter_memory_pressure, .enter_memory_pressure = sctp_enter_memory_pressure,
.memory_allocated = &sctp_memory_allocated, .memory_allocated = &sctp_memory_allocated,
REF_PROTO_INUSE(sctp)
}; };
#if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE) #if defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE)
DEFINE_PROTO_INUSE(sctpv6)
struct proto sctpv6_prot = { struct proto sctpv6_prot = {
.name = "SCTPv6", .name = "SCTPv6",
.owner = THIS_MODULE, .owner = THIS_MODULE,
...@@ -6513,5 +6518,6 @@ struct proto sctpv6_prot = { ...@@ -6513,5 +6518,6 @@ struct proto sctpv6_prot = {
.memory_pressure = &sctp_memory_pressure, .memory_pressure = &sctp_memory_pressure,
.enter_memory_pressure = sctp_enter_memory_pressure, .enter_memory_pressure = sctp_enter_memory_pressure,
.memory_allocated = &sctp_memory_allocated, .memory_allocated = &sctp_memory_allocated,
REF_PROTO_INUSE(sctpv6)
}; };
#endif /* defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE) */ #endif /* defined(CONFIG_IPV6) || defined(CONFIG_IPV6_MODULE) */
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment