Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit bb5f133d authored by Sakari Ailus's avatar Sakari Ailus Committed by David S. Miller
Browse files

tlan: Fix pci memory unmapping



Fix pci unmapping problem introduced by commit id
8953f128 "tlan: Fix small (< 64 bytes)
datagram transmissions".

Signed-off-by: default avatarSakari Ailus <sakari.ailus@iki.fi>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent 2c413a64
Loading
Loading
Loading
Loading
+9 −4
Original line number Diff line number Diff line
@@ -1433,7 +1433,9 @@ static u32 TLan_HandleTxEOF( struct net_device *dev, u16 host_int )
		if ( ! bbuf ) {
			struct sk_buff *skb = TLan_GetSKB(head_list);
			pci_unmap_single(priv->pciDev, head_list->buffer[0].address,
					 skb->len, PCI_DMA_TODEVICE);
					 max(skb->len,
					     (unsigned int)TLAN_MIN_FRAME_SIZE),
					 PCI_DMA_TODEVICE);
			dev_kfree_skb_any(skb);
			head_list->buffer[8].address = 0;
			head_list->buffer[9].address = 0;
@@ -2057,8 +2059,11 @@ static void TLan_FreeLists( struct net_device *dev )
			list = priv->txList + i;
			skb = TLan_GetSKB(list);
			if ( skb ) {
				pci_unmap_single(priv->pciDev,
						 list->buffer[0].address, skb->len,
				pci_unmap_single(
					priv->pciDev,
					list->buffer[0].address,
					max(skb->len,
					    (unsigned int)TLAN_MIN_FRAME_SIZE),
					PCI_DMA_TODEVICE);
				dev_kfree_skb_any( skb );
				list->buffer[8].address = 0;