Re: [PATCH 07/17] net: Introduce sk_gfp_atomic() to allow additionof GFP flags depending on the individual socket

From: Mel Gorman
Date: Wed Jun 20 2012 - 10:20:31 EST


On Wed, Jun 20, 2012 at 02:06:39PM +0200, Eric Dumazet wrote:
> On Wed, 2012-06-20 at 12:44 +0100, Mel Gorman wrote:
> > Introduce sk_gfp_atomic(), this function allows to inject sock specific
> > flags to each sock related allocation. It is only used on allocation
> > paths that may be required for writing pages back to network storage.
> >
> > [davem@xxxxxxxxxxxxx: Use sk_gfp_atomic only when necessary]
> > Signed-off-by: Peter Zijlstra <a.p.zijlstra@xxxxxxxxx>
> > Signed-off-by: Mel Gorman <mgorman@xxxxxxx>
> > Acked-by: David S. Miller <davem@xxxxxxxxxxxxx>
> > ---
> > include/net/sock.h | 5 +++++
> > net/ipv4/tcp_output.c | 9 +++++----
> > net/ipv6/tcp_ipv6.c | 8 +++++---
> > 3 files changed, 15 insertions(+), 7 deletions(-)
> >
>
> > diff --git a/net/ipv4/tcp_output.c b/net/ipv4/tcp_output.c
> > index 803cbfe..440b47e 100644
> > --- a/net/ipv4/tcp_output.c
> > +++ b/net/ipv4/tcp_output.c
> > @@ -2461,7 +2461,8 @@ struct sk_buff *tcp_make_synack(struct sock *sk, struct dst_entry *dst,
> >
> > if (cvp != NULL && cvp->s_data_constant && cvp->s_data_desired)
> > s_data_desired = cvp->s_data_desired;
> > - skb = sock_wmalloc(sk, MAX_TCP_HEADER + 15 + s_data_desired, 1, GFP_ATOMIC);
> > + skb = sock_wmalloc(sk, MAX_TCP_HEADER + 15 + s_data_desired, 1,
> > + sk_gfp_atomic(sk, GFP_ATOMIC));
> > if (skb == NULL)
> >
>
> This bit no longer applies on net-next, sock_wmalloc() was changed to a
> mere alloc_skb()
>

Thanks, I'll rebase and retest.

--
Mel Gorman
SUSE Labs
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/