diff mbox

[v2] Fix velocity driver unmapping incorrect size.

Message ID 20090622053530.GA28382@redhat.com
State Accepted, archived
Delegated to: David Miller
Headers show

Commit Message

Dave Jones June 22, 2009, 5:35 a.m. UTC
this makes it even clearer what's going on.

Comments

David Miller June 22, 2009, 5:42 a.m. UTC | #1
From: Dave Jones <davej@redhat.com>
Date: Mon, 22 Jun 2009 01:35:30 -0400

> this makes it even clearer what's going on.
> -- 
> 
> When a packet is greater than ETH_ZLEN, we end up assigning the
> boolean result of a comparison to the size we unmap.
> 
> Signed-off-by: Dave Jones <davej@redhat.com>

Looks great Dave, thanks for figuring this out.

I'll queue this up for -stable too.
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
diff mbox

Patch

diff --git a/drivers/net/via-velocity.c b/drivers/net/via-velocity.c
index b02f7ad..3ba3595 100644
--- a/drivers/net/via-velocity.c
+++ b/drivers/net/via-velocity.c
@@ -1847,7 +1847,7 @@  static void velocity_free_tx_buf(struct velocity_info *vptr, struct velocity_td_
 	 */
 	if (tdinfo->skb_dma) {
 
-		pktlen = (skb->len > ETH_ZLEN ? : ETH_ZLEN);
+		pktlen = max_t(unsigned int, skb->len, ETH_ZLEN);
 		for (i = 0; i < tdinfo->nskb_dma; i++) {
 #ifdef VELOCITY_ZERO_COPY_SUPPORT
 			pci_unmap_single(vptr->pdev, tdinfo->skb_dma[i], le16_to_cpu(td->tdesc1.len), PCI_DMA_TODEVICE);