* sendfile() broken with 2.6.26 + Apache 2 ?
@ 2008-07-15 17:00 Ian Jeffray
2008-07-16 5:38 ` Eric Dumazet
2008-07-19 12:31 ` J. K. Cliburn
0 siblings, 2 replies; 9+ messages in thread
From: Ian Jeffray @ 2008-07-15 17:00 UTC (permalink / raw)
To: linux-kernel
All,
I moved from kernel 2.6.25.4 to 2.6.26 yesterday and observed that
large files sent via Apache2 are partially corrupt.
This appears to be linked to sendfile() -- disabling the use of
sendfile in the apache config (EnableSendfile Off) allows it to
function as normal.
My system is a simple Core2Duo running Debian lenny/sid; nothing
special, and I have never observed problems like this before.
The problem feels certainly related to sendfile() since the data
reads correctly from disc in other programs, and via CIFS etc.
The corruption happens part-way in to the file... I've no exact
figure but it would seem like maybe 32KB -- I'm seeing broken
PNGs served from Apache, where the top few dozen lines decode
correctly, and the rest is garbage.
I've made basically no configuration changes between 2.6.25.4 and
2.6.26 and have explicitly tried both enabling and disabling the
new PAT support to no effect.
This is completely repeatable and reproducible.
Is anyone else seeing this broken behaviour?
Ian.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: sendfile() broken with 2.6.26 + Apache 2 ?
2008-07-15 17:00 sendfile() broken with 2.6.26 + Apache 2 ? Ian Jeffray
@ 2008-07-16 5:38 ` Eric Dumazet
2008-07-16 7:30 ` Ian Jeffray
2008-07-19 12:31 ` J. K. Cliburn
1 sibling, 1 reply; 9+ messages in thread
From: Eric Dumazet @ 2008-07-16 5:38 UTC (permalink / raw)
To: Ian Jeffray; +Cc: linux-kernel, Linux Netdev List
CC to netdev where this report might find better answers
Ian Jeffray a écrit :
> All,
>
> I moved from kernel 2.6.25.4 to 2.6.26 yesterday and observed that
> large files sent via Apache2 are partially corrupt.
>
> This appears to be linked to sendfile() -- disabling the use of
> sendfile in the apache config (EnableSendfile Off) allows it to
> function as normal.
>
> My system is a simple Core2Duo running Debian lenny/sid; nothing
> special, and I have never observed problems like this before.
>
> The problem feels certainly related to sendfile() since the data
> reads correctly from disc in other programs, and via CIFS etc.
>
> The corruption happens part-way in to the file... I've no exact
> figure but it would seem like maybe 32KB -- I'm seeing broken
> PNGs served from Apache, where the top few dozen lines decode
> correctly, and the rest is garbage.
>
> I've made basically no configuration changes between 2.6.25.4 and
> 2.6.26 and have explicitly tried both enabling and disabling the
> new PAT support to no effect.
>
> This is completely repeatable and reproducible.
>
> Is anyone else seeing this broken behaviour?
>
What kind of network adapter are you using ? (lspci | grep -i ether)
If you disable TCP segmentation offload on this NIC (ethtool -K eth0 tso off) , is this problem still present ?
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: sendfile() broken with 2.6.26 + Apache 2 ?
2008-07-16 5:38 ` Eric Dumazet
@ 2008-07-16 7:30 ` Ian Jeffray
2008-07-16 9:08 ` Eric Dumazet
0 siblings, 1 reply; 9+ messages in thread
From: Ian Jeffray @ 2008-07-16 7:30 UTC (permalink / raw)
To: Eric Dumazet; +Cc: linux-kernel, Linux Netdev List
Hi Eric,
Thanks for directing me to a better list.
Further responses below:
Eric Dumazet wrote:
> CC to netdev where this report might find better answers
>
> Ian Jeffray a écrit :
>> All,
>>
>> I moved from kernel 2.6.25.4 to 2.6.26 yesterday and observed that
>> large files sent via Apache2 are partially corrupt.
>>
>> This appears to be linked to sendfile() -- disabling the use of
>> sendfile in the apache config (EnableSendfile Off) allows it to
>> function as normal.
>>
>> My system is a simple Core2Duo running Debian lenny/sid; nothing
>> special, and I have never observed problems like this before.
>>
>> The problem feels certainly related to sendfile() since the data
>> reads correctly from disc in other programs, and via CIFS etc.
>>
>> The corruption happens part-way in to the file... I've no exact
>> figure but it would seem like maybe 32KB -- I'm seeing broken
>> PNGs served from Apache, where the top few dozen lines decode
>> correctly, and the rest is garbage.
>>
>> I've made basically no configuration changes between 2.6.25.4 and
>> 2.6.26 and have explicitly tried both enabling and disabling the
>> new PAT support to no effect.
>>
>> This is completely repeatable and reproducible.
>>
>> Is anyone else seeing this broken behaviour?
>>
>
>
> What kind of network adapter are you using ? (lspci | grep -i ether)
02:00.0 Ethernet controller: Attansic Technology Corp. L1 Gigabit
Ethernet Adapter (rev b0)
> If you disable TCP segmentation offload on this NIC (ethtool -K eth0 tso
> off) , is this problem still present ?
Wow. That 'solves' the problem! Great.
Does this therefore point to an attansic driver issue?
Ian.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: sendfile() broken with 2.6.26 + Apache 2 ?
2008-07-16 7:30 ` Ian Jeffray
@ 2008-07-16 9:08 ` Eric Dumazet
2008-07-16 13:38 ` J. K. Cliburn
2008-07-16 14:58 ` Holger Hoffstaette
0 siblings, 2 replies; 9+ messages in thread
From: Eric Dumazet @ 2008-07-16 9:08 UTC (permalink / raw)
To: Ian Jeffray; +Cc: linux-kernel, Linux Netdev List, jacliburn, csnook, jeff
Ian Jeffray a écrit :
> Hi Eric,
>
> Thanks for directing me to a better list.
>
> Further responses below:
>
> Eric Dumazet wrote:
>> CC to netdev where this report might find better answers
>>
>> Ian Jeffray a écrit :
>>> All,
>>>
>>> I moved from kernel 2.6.25.4 to 2.6.26 yesterday and observed that
>>> large files sent via Apache2 are partially corrupt.
>>>
>>> This appears to be linked to sendfile() -- disabling the use of
>>> sendfile in the apache config (EnableSendfile Off) allows it to
>>> function as normal.
>>>
>>> My system is a simple Core2Duo running Debian lenny/sid; nothing
>>> special, and I have never observed problems like this before.
>>>
>>> The problem feels certainly related to sendfile() since the data
>>> reads correctly from disc in other programs, and via CIFS etc.
>>>
>>> The corruption happens part-way in to the file... I've no exact
>>> figure but it would seem like maybe 32KB -- I'm seeing broken
>>> PNGs served from Apache, where the top few dozen lines decode
>>> correctly, and the rest is garbage.
>>>
>>> I've made basically no configuration changes between 2.6.25.4 and
>>> 2.6.26 and have explicitly tried both enabling and disabling the
>>> new PAT support to no effect.
>>>
>>> This is completely repeatable and reproducible.
>>>
>>> Is anyone else seeing this broken behaviour?
>>>
>>
>>
>> What kind of network adapter are you using ? (lspci | grep -i ether)
>
> 02:00.0 Ethernet controller: Attansic Technology Corp. L1 Gigabit
> Ethernet Adapter (rev b0)
>
>
>> If you disable TCP segmentation offload on this NIC (ethtool -K eth0
>> tso off) , is this problem still present ?
>
> Wow. That 'solves' the problem! Great.
>
> Does this therefore point to an attansic driver issue?
>
Yes, maybe related to commit 9d90fb1ac9d97da86e24d9ea947bf2a2f333829a
In this patch, Jay Cliburn enabled TSO by default for atl1 driver.
This might be a driver problem, or a generic sendfile() problem, I dont know...
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: sendfile() broken with 2.6.26 + Apache 2 ?
2008-07-16 9:08 ` Eric Dumazet
@ 2008-07-16 13:38 ` J. K. Cliburn
2008-07-16 13:41 ` Pekka Enberg
2008-07-16 14:58 ` Holger Hoffstaette
1 sibling, 1 reply; 9+ messages in thread
From: J. K. Cliburn @ 2008-07-16 13:38 UTC (permalink / raw)
To: Eric Dumazet; +Cc: Ian Jeffray, linux-kernel, Linux Netdev List, csnook, jeff
Eric Dumazet wrote:
> Ian Jeffray a écrit :
>> Hi Eric,
>>
>> Thanks for directing me to a better list.
>>
>> Further responses below:
>>
>> Eric Dumazet wrote:
>>> CC to netdev where this report might find better answers
>>>
>>> Ian Jeffray a écrit :
>>>> All,
>>>>
>>>> I moved from kernel 2.6.25.4 to 2.6.26 yesterday and observed that
>>>> large files sent via Apache2 are partially corrupt.
>>>>
>>>> This appears to be linked to sendfile() -- disabling the use of
>>>> sendfile in the apache config (EnableSendfile Off) allows it to
>>>> function as normal.
>>>
>>>
>>> What kind of network adapter are you using ? (lspci | grep -i ether)
>>
>> 02:00.0 Ethernet controller: Attansic Technology Corp. L1 Gigabit
>> Ethernet Adapter (rev b0)
>>
>>
>>> If you disable TCP segmentation offload on this NIC (ethtool -K eth0
>>> tso off) , is this problem still present ?
>>
>> Wow. That 'solves' the problem! Great.
>>
>> Does this therefore point to an attansic driver issue?
>>
>
>
> Yes, maybe related to commit 9d90fb1ac9d97da86e24d9ea947bf2a2f333829a
> In this patch, Jay Cliburn enabled TSO by default for atl1 driver.
>
> This might be a driver problem, or a generic sendfile() problem, I dont
> know...
I'm currently traveling and unable to delve into this issue and its
relation to the atl1 driver. I should be able to look at it this
weekend when I get back home.
Jay
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: sendfile() broken with 2.6.26 + Apache 2 ?
2008-07-16 13:38 ` J. K. Cliburn
@ 2008-07-16 13:41 ` Pekka Enberg
2008-07-16 14:00 ` J. K. Cliburn
0 siblings, 1 reply; 9+ messages in thread
From: Pekka Enberg @ 2008-07-16 13:41 UTC (permalink / raw)
To: jacliburn
Cc: Eric Dumazet, Ian Jeffray, linux-kernel, Linux Netdev List,
csnook, jeff
On Wed, Jul 16, 2008 at 4:38 PM, J. K. Cliburn <jcliburn@gmail.com> wrote:
>> Yes, maybe related to commit 9d90fb1ac9d97da86e24d9ea947bf2a2f333829a
>> In this patch, Jay Cliburn enabled TSO by default for atl1 driver.
>>
>> This might be a driver problem, or a generic sendfile() problem, I dont
>> know...
>
> I'm currently traveling and unable to delve into this issue and its relation
> to the atl1 driver. I should be able to look at it this weekend when I get
> back home.
Ehh... shouldn't we disable atl1 TSO by default for -stable, then?
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: sendfile() broken with 2.6.26 + Apache 2 ?
2008-07-16 13:41 ` Pekka Enberg
@ 2008-07-16 14:00 ` J. K. Cliburn
0 siblings, 0 replies; 9+ messages in thread
From: J. K. Cliburn @ 2008-07-16 14:00 UTC (permalink / raw)
To: Pekka Enberg
Cc: Eric Dumazet, Ian Jeffray, linux-kernel, Linux Netdev List,
csnook, jeff
Pekka Enberg wrote:
> On Wed, Jul 16, 2008 at 4:38 PM, J. K. Cliburn <jcliburn@gmail.com> wrote:
>>> Yes, maybe related to commit 9d90fb1ac9d97da86e24d9ea947bf2a2f333829a
>>> In this patch, Jay Cliburn enabled TSO by default for atl1 driver.
>>>
>>> This might be a driver problem, or a generic sendfile() problem, I dont
>>> know...
>> I'm currently traveling and unable to delve into this issue and its relation
>> to the atl1 driver. I should be able to look at it this weekend when I get
>> back home.
>
> Ehh... shouldn't we disable atl1 TSO by default for -stable, then?
Based upon my inability to look at the problem for a couple more days?
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: sendfile() broken with 2.6.26 + Apache 2 ?
2008-07-16 9:08 ` Eric Dumazet
2008-07-16 13:38 ` J. K. Cliburn
@ 2008-07-16 14:58 ` Holger Hoffstaette
1 sibling, 0 replies; 9+ messages in thread
From: Holger Hoffstaette @ 2008-07-16 14:58 UTC (permalink / raw)
To: linux-kernel; +Cc: netdev
On Wed, 16 Jul 2008 11:08:04 +0200, Eric Dumazet wrote:
> Ian Jeffray a écrit :
>> Hi Eric,
>>
>> Thanks for directing me to a better list.
>>
>> Further responses below:
>>
>> Eric Dumazet wrote:
>>> CC to netdev where this report might find better answers
>>>
>>> Ian Jeffray a écrit :
>>>> All,
>>>>
>>>> I moved from kernel 2.6.25.4 to 2.6.26 yesterday and observed that
>>>> large files sent via Apache2 are partially corrupt.
>>>>
>>>> This appears to be linked to sendfile() -- disabling the use of
>>>> sendfile in the apache config (EnableSendfile Off) allows it to
>>>> function as normal.
>>>>
>>>> My system is a simple Core2Duo running Debian lenny/sid; nothing
>>>> special, and I have never observed problems like this before.
>>>>
>>>> The problem feels certainly related to sendfile() since the data reads
>>>> correctly from disc in other programs, and via CIFS etc.
>>>>
>>>> The corruption happens part-way in to the file... I've no exact figure
>>>> but it would seem like maybe 32KB -- I'm seeing broken PNGs served
>>>> from Apache, where the top few dozen lines decode correctly, and the
>>>> rest is garbage.
>>>>
>>>> I've made basically no configuration changes between 2.6.25.4 and
>>>> 2.6.26 and have explicitly tried both enabling and disabling the new
>>>> PAT support to no effect.
>>>>
>>>> This is completely repeatable and reproducible.
>>>>
>>>> Is anyone else seeing this broken behaviour?
>>>>
>>>>
>>>
>>> What kind of network adapter are you using ? (lspci | grep -i ether)
>>
>> 02:00.0 Ethernet controller: Attansic Technology Corp. L1 Gigabit
>> Ethernet Adapter (rev b0)
>>
>>
>>> If you disable TCP segmentation offload on this NIC (ethtool -K eth0
>>> tso off) , is this problem still present ?
>>
>> Wow. That 'solves' the problem! Great.
>>
>> Does this therefore point to an attansic driver issue?
>
> Yes, maybe related to commit 9d90fb1ac9d97da86e24d9ea947bf2a2f333829a
>
> In this patch, Jay Cliburn enabled TSO by default for atl1 driver.
>
> This might be a driver problem, or a generic sendfile() problem, I dont
> know...
Maybe related to http://lkml.org/lkml/2007/12/6/229 ?
I switched to a different server with e1000 NIC in the meantime and so I
cannot test if this is still a problem in 2.6.26, but apparently it seems
so. For me the combo e1000/e1000e + sendfile works reliably..
Holger
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: sendfile() broken with 2.6.26 + Apache 2 ?
2008-07-15 17:00 sendfile() broken with 2.6.26 + Apache 2 ? Ian Jeffray
2008-07-16 5:38 ` Eric Dumazet
@ 2008-07-19 12:31 ` J. K. Cliburn
1 sibling, 0 replies; 9+ messages in thread
From: J. K. Cliburn @ 2008-07-19 12:31 UTC (permalink / raw)
To: Ian Jeffray; +Cc: linux-kernel, netdev
Ian Jeffray wrote:
> All,
>
> I moved from kernel 2.6.25.4 to 2.6.26 yesterday and observed that
> large files sent via Apache2 are partially corrupt.
>
> This appears to be linked to sendfile() -- disabling the use of
> sendfile in the apache config (EnableSendfile Off) allows it to
> function as normal.
>
> My system is a simple Core2Duo running Debian lenny/sid; nothing
> special, and I have never observed problems like this before.
>
> The problem feels certainly related to sendfile() since the data
> reads correctly from disc in other programs, and via CIFS etc.
>
> The corruption happens part-way in to the file... I've no exact
> figure but it would seem like maybe 32KB -- I'm seeing broken
> PNGs served from Apache, where the top few dozen lines decode
> correctly, and the rest is garbage.
>
> I've made basically no configuration changes between 2.6.25.4 and
> 2.6.26 and have explicitly tried both enabling and disabling the
> new PAT support to no effect.
>
> This is completely repeatable and reproducible.
>
> Is anyone else seeing this broken behaviour?
Can you please enable verbose logging
echo 8 > /proc/sys/kernel/printk
ethtool -s eth0 msglvl 0xffff
and see if the driver issues any error messages as the file is transferred?
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2008-07-19 12:32 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-07-15 17:00 sendfile() broken with 2.6.26 + Apache 2 ? Ian Jeffray
2008-07-16 5:38 ` Eric Dumazet
2008-07-16 7:30 ` Ian Jeffray
2008-07-16 9:08 ` Eric Dumazet
2008-07-16 13:38 ` J. K. Cliburn
2008-07-16 13:41 ` Pekka Enberg
2008-07-16 14:00 ` J. K. Cliburn
2008-07-16 14:58 ` Holger Hoffstaette
2008-07-19 12:31 ` J. K. Cliburn
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox