Skip to content
  • Marcelo Ricardo Leitner's avatar
    sctp: delay as much as possible skb_linearize · 3acb50c1
    Marcelo Ricardo Leitner authored
    
    
    This patch is a preparation for the GSO one. In order to successfully
    handle GSO packets on rx path we must not call skb_linearize, otherwise
    it defeats any gain GSO may have had.
    
    This patch thus delays as much as possible the call to skb_linearize,
    leaving it to sctp_inq_pop() moment. For that the sanity checks
    performed now know how to deal with fragments.
    
    One positive side-effect of this is that if the socket is backlogged it
    will have the chance of doing it on backlog processing instead of
    during softirq.
    
    With this move, it's evident that a check for non-linearity in
    sctp_inq_pop was ineffective and is now removed. Note that a similar
    check is performed a bit below this one.
    
    Signed-off-by: default avatarMarcelo Ricardo Leitner <marcelo.leitner@gmail.com>
    Tested-by: default avatarXin Long <lucien.xin@gmail.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    3acb50c1