[lvs-users] LVS and Broadcom bug
horms at verge.net.au
Mon Nov 30 07:03:13 GMT 2009
On Sat, Nov 21, 2009 at 02:41:49AM +0200, Julian Anastasov wrote:
> On Fri, 20 Nov 2009, Aleksey Chudov wrote:
> > Hello!
> > I have HP ProLiant BL460c G6 servers with Broadcom Corporation NetXtreme II
> > BCM57711E 10-Gigabit PCIe controller. After enabling Virtual Server in
> > kernel and placing server to the test environment with just 10Mbit/s traffic
> > I see a lot of error messages in logs.
> > I try different kernel versions 126.96.36.199, 188.8.131.52, 184.108.40.206 but every time
> > I see the same error:
> > With 2.6.31.x kernel:
> > Nov 19 23:35:30 bsrvm8-1 kernel: ------------[ cut here ]------------
> > Nov 19 23:35:30 bsrvm8-1 kernel: WARNING: at net/core/dev.c:1563
> > skb_gso_segment+0x10f/0x260()
> > Nov 19 23:35:30 bsrvm8-1 kernel: Hardware name: ProLiant BL460c G6
> > Nov 19 23:35:30 bsrvm8-1 kernel: bnx2x: caps=(0x198829, 0x0) len=719
> > data_len=119 ip_summed=1Pid: 0, comm: swapper Tainted: G W
> caps 0x198829 has 0x8000 (NETIF_F_LRO). It seems LRO is
> not disabled for your devices, may be it should happen when
> you enable the IP forwarding for the concerned devices. It
> seems you didn't enabled IP forwarding. Can you confirm it?
> Also, may be LRO can be disabled with ethtool.
> The problem exists because IPVS does not
> disable LRO, it must be done under RTNL and IPVS never runs
> in this context. And LRO is not supported for forwarding:
> IPVS does not call ip_forward for DR method, that
> is why you do not need forwarding and the LRO warning
> does not occur before hitting the GSO code. ip_forward
> just drops LRO packets:
> if (skb_warn_if_lro(skb))
> goto drop;
do you have any thoughts on how the code might be improved
to handle this case a bit better?
Perhaps something along the lines of the
code for LRO in ip_forward?
More information about the lvs-users