[ CCed Hans Schillstrom and Julian Anastasov ] On Sun, Dec 12, 2010 at 07:42:29PM +0800, Tinggong Wang wrote: > Signed-off-by: Tinggong Wang <wangtinggong@xxxxxxxxx> > --- > net/netfilter/ipvs/ip_vs_sync.c | 13 ++++++++----- > 1 files changed, 8 insertions(+), 5 deletions(-) > > diff --git a/net/netfilter/ipvs/ip_vs_sync.c b/net/netfilter/ipvs/ip_vs_sync.c > index 7632a17..2b6b0cb 100644 > --- a/net/netfilter/ipvs/ip_vs_sync.c > +++ b/net/netfilter/ipvs/ip_vs_sync.c > @@ -315,11 +315,6 @@ static void ip_vs_process_message(const char *buffer, const size_t buflen) > char *p; > int i; > > - if (buflen < SYNC_MESG_HEADER_LEN) { > - IP_VS_ERR_RL("sync message header too short\n"); > - return; > - } > - > /* Convert size back to host byte order */ > m->size = ntohs(m->size); > > @@ -823,6 +818,14 @@ static int sync_thread_backup(void *data) > break; > } > > + /* throw invalid data before local_bh_disable, > + * so performance won't be downgraded by it > + */ > + if (len < SYNC_MESG_HEADER_LEN) { > + IP_VS_ERR_RL("sync message header too short\n"); > + continue; > + } > + > /* disable bottom half, because it accesses the data > shared by softirq while getting/creating conns */ > local_bh_disable(); > -- > 1.7.2.3 > Could you explain the motivation for this change? -- To unsubscribe from this list: send the line "unsubscribe lvs-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html