Bug 33972 - Bogus UDP Fragmentation Offload packet generation
Summary: Bogus UDP Fragmentation Offload packet generation
Status: CLOSED DOCUMENTED
Alias: None
Product: Networking
Classification: Unclassified
Component: IPV4 (show other bugs)
Hardware: All Linux
: P1 high
Assignee: Stephen Hemminger
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-04-26 11:46 UTC by Leszek Urbanski
Modified: 2012-05-12 14:34 UTC (History)
2 users (show)

See Also:
Kernel Version: 2.6.32.x
Subsystem:
Regression: Yes
Bisected commit-id:


Attachments
udp: Fix bogus UFO packet generation (1.18 KB, patch)
2011-04-26 11:46 UTC, Leszek Urbanski
Details | Diff

Description Leszek Urbanski 2011-04-26 11:46:04 UTC
Created attachment 55552 [details]
udp: Fix bogus UFO packet generation

The new UFO software fallback path fails under certain conditions with NFS and causes partial connectivity loss due to generation of UFO packets smaller than the MTU, which are then discarded by the software fallback path.

How to reproduce: copy a large file to an NFS mount with UFO enabled and going through the software fallback path, e.g. on a KVM guest with virtio-net and qdev device syntax:

-device virtio-net-pci,netdev=tap1,mac=ab:cd:ef:01:23:45 \
-netdev type=tap,id=tap1,ifname=tap1

All NFS mounts immediately stall and processes go into D state, stuck
on nfs_wait_bit_uninterruptible. There is no further communication between
the client and the server.

It has been fixed in 2.6.35-rc4 by Herbert Xu (patch for net/ipv4/ip_output.c attached). However, it's still not in 2.6.32.x longterm (as of 2.6.32.39).
Comment 1 Paul Gortmaker 2011-04-26 22:16:28 UTC
Upstream commit ID is 26cde9f7e2747b6d254b704594eed87ab959afa5
Comment 2 Alan 2012-05-12 14:34:15 UTC
If it needs pushing to stable trees still please email Herbert and ask him to push it on

commit 26cde9f7e2747b6d254b704594eed87ab959afa5
Author: Herbert Xu <herbert@gondor.apana.org.au>
Date:   Tue Jun 15 01:52:25 2010 +0000

Note You need to log in before you can comment on or make changes to this bug.