Fix incorrect DMA size freeing error in via-velocity.

This commit is contained in:
Dave Jones 2010-08-31 11:44:00 -04:00
parent 27e8302707
commit 10931f1112
2 changed files with 27 additions and 1 deletions

View File

@ -687,7 +687,7 @@ Patch2915: lirc-staging-2.6.36.patch
#Patch2916: lirc-staging-2.6.36-fixes.patch
Patch2917: hdpvr-ir-enable.patch
# fs fixes
Patch3000: linux-2.6-via-velocity-dma-fix.patch
# NFSv4
@ -1288,6 +1288,9 @@ ApplyPatch lirc-staging-2.6.36.patch
# enable IR receiver on Hauppauge HD PVR (v4l-dvb merge pending)
ApplyPatch hdpvr-ir-enable.patch
# Fix DMA bug on via-velocity
ApplyPatch linux-2.6-via-velocity-dma-fix.patch
# Patches headed upstream
ApplyPatch disable-i8042-check-on-apple-mac.patch
@ -1889,6 +1892,9 @@ fi
# and build.
%changelog
* Tue Aug 31 2010 Dave Jones <davej@redhat.com>
- Fix incorrect DMA size freeing error in via-velocity.
* Fri Aug 27 2010 Chuck Ebbert <cebbert@redhat.com> 2.6.35.4-12
- Linux 2.6.35.4
- kprobes-x86-fix-kprobes-to-skip-prefixes-correctly.patch (#610941)

View File

@ -0,0 +1,20 @@
From: Simon Kagstrom <simon.kagstrom@netinsight.net>
Date: Tue, 31 Aug 2010 08:41:26 +0200
Subject: [PATCH] via-velocity: Correct packet length on tx free
Signed-off-by: Simon Kagstrom <simon.kagstrom@netinsight.net>
---
drivers/net/via-velocity.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
--- linux-2.6.35.x86_64/drivers/net/via-velocity.c~ 2010-08-31 11:40:51.000000000 -0400
+++ linux-2.6.35.x86_64/drivers/net/via-velocity.c 2010-08-31 11:40:58.000000000 -0400
@@ -1721,7 +1721,7 @@ static void velocity_free_tx_buf(struct
/* For scatter-gather */
if (skb_shinfo(skb)->nr_frags > 0)
pktlen = max_t(size_t, pktlen,
- td->td_buf[i].size & ~TD_QUEUE);
+ skb_headlen(skb));
pci_unmap_single(vptr->pdev, tdinfo->skb_dma[i],
le16_to_cpu(pktlen), PCI_DMA_TODEVICE);