sock: add net to prot->enter_memory_pressure callback
The tcp_enter_memory_pressure calls NET_INC_STATS, but doesn't have where to get the net from. I decided to add a sk argument, not the net itself, only to factor all the required sock_net(sk) calls inside the enter_memory_pressure callback itself. Signed-off-by: Pavel Emelyanov <xemul@openvz.org> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:

committed by
David S. Miller

parent
cf1100a7a4
commit
5c52ba170f
@@ -565,7 +565,7 @@ struct proto {
|
||||
#endif
|
||||
|
||||
/* Memory pressure */
|
||||
void (*enter_memory_pressure)(void);
|
||||
void (*enter_memory_pressure)(struct sock *sk);
|
||||
atomic_t *memory_allocated; /* Current allocated memory. */
|
||||
atomic_t *sockets_allocated; /* Current number of sockets. */
|
||||
/*
|
||||
@@ -1210,7 +1210,7 @@ static inline struct page *sk_stream_alloc_page(struct sock *sk)
|
||||
|
||||
page = alloc_pages(sk->sk_allocation, 0);
|
||||
if (!page) {
|
||||
sk->sk_prot->enter_memory_pressure();
|
||||
sk->sk_prot->enter_memory_pressure(sk);
|
||||
sk_stream_moderate_sndbuf(sk);
|
||||
}
|
||||
return page;
|
||||
|
Reference in New Issue
Block a user