On 06/08/2016 08:13 AM, Shrikrishna Khare wrote: > The device emulation may send segCnt of 1 for LRO packets. > > Signed-off-by: Shrikrishna Khare <skh...@vmware.com> > Signed-off-by: Jin Heo <h...@vmware.com> > > --- > v2: fix subject line > --- > drivers/net/vmxnet3/vmxnet3_drv.c | 2 +- > drivers/net/vmxnet3/vmxnet3_int.h | 4 ++-- > 2 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/drivers/net/vmxnet3/vmxnet3_drv.c > b/drivers/net/vmxnet3/vmxnet3_drv.c > index db8022a..6f399b2 100644 > --- a/drivers/net/vmxnet3/vmxnet3_drv.c > +++ b/drivers/net/vmxnet3/vmxnet3_drv.c > @@ -1369,7 +1369,7 @@ vmxnet3_rq_rx_complete(struct vmxnet3_rx_queue *rq, > rcdlro = (struct Vmxnet3_RxCompDescExt *)rcd; > > segCnt = rcdlro->segCnt; > - BUG_ON(segCnt <= 1); > + BUG_ON(segCnt == 0);
What will the vmxnet3 driver do otherwise if segCnt == 0? Please see below. > mss = rcdlro->mss; > if (unlikely(segCnt <= 1)) > segCnt = 0; Based on this code, it looks like it can handle the case without taking down the kernel completely, so instead of a "BUG_ON", would it make sense with a WARN_ON_ONCE() or WARN_ON()? Thanks, Thomas