lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20081025000033.GA2967@localhost>
Date:	Sat, 25 Oct 2008 01:00:33 +0100
From:	Robert Fitzsimons <robfitz@...k.net>
To:	Manfred Scherer <manfred.scherer.mhm@...nline.de>
Cc:	Michal Ostrowski <mostrows@...il.com>,
	Andrew Morton <akpm@...ux-foundation.org>,
	netdev@...r.kernel.org, bugme-daemon@...zilla.kernel.org,
	Robert Fitzsimons <robfitz@...k.net>
Subject: Re: [Bugme-new] [Bug 11754] New: tlan network driver does not work

I've double checked my patch and still think it's correct.  Lets quickly
review it:

@@ -360,8 +360,8 @@ TLan_GetSKB( const struct tlan_list_tag *tag)
 {
 	unsigned long addr;
 
-	addr = tag->buffer[8].address;
-	addr |= (tag->buffer[9].address << 16) << 16;
+	addr = tag->buffer[9].address;
+	addr |= (tag->buffer[8].address << 16) << 16;
 	return (struct sk_buff *) addr;
 }

The hardware structure tlan_list_tag is used (abused?) to store
non-hardware related data.  So buffer[8].address is used to store the
upper 32 bits and buffer[9].address is the lower 32 bits of the
sk_buffer address.


@@ -1984,7 +1984,6 @@ static void TLan_ResetLists( struct net_device *dev )
 	TLanList	*list;
 	dma_addr_t	list_phys;
 	struct sk_buff	*skb;
-	void		*t = NULL;
 
 	priv->txHead = 0;
 	priv->txTail = 0;
@@ -2022,7 +2021,8 @@ static void TLan_ResetLists( struct net_device *dev )
 			}
 
 			skb_reserve( skb, NET_IP_ALIGN );
-			list->buffer[0].address = pci_map_single(priv->pciDev, t,
+			list->buffer[0].address = pci_map_single(priv->pciDev,
+								 skb->data,
 								 TLAN_MAX_FRAME_SIZE,
 								 PCI_DMA_FROMDEVICE);
 			TLan_StoreSKB(list, skb);


buffer[0].address is the hardware address which the card can DMA the
received frame to.  The previous version of the code mapped a null
pointer.  So my change uses the sk_buffer data pointer which is what the
TLan_HandleRxEOF does and expected objective.


Manfred, where are you getting the source from, how much ram does the
computer have, and can you send your .config file.

Robert


On Fri, Oct 24, 2008 at 06:12:12AM +0200, Manfred Scherer wrote:
> I had a look on the ethernet pci-card LAN-LED and the DSL-Modem LAN-LED. 
> It seems to be that the packets were sent out are going over the
> wire, the ethernet pci-card LAN-LED and the DSL-Modem LAN-LED blinks
> three times. It seems so that the replayed packets are dropped.
> 
> Manfred Scherer
--
To unsubscribe from this list: send the line "unsubscribe netdev" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ