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
| ||
|
Date: Thu, 28 Mar 2013 01:01:05 +0000 From: "Huang, Xiong" <xiong@....qualcomm.com> To: Hannes Frederic Sowa <hannes@...essinduktion.org> CC: Sven Hartge <sven@...nhartge.de>, "netdev@...r.kernel.org" <netdev@...r.kernel.org> Subject: RE: Atheros Communications Inc. AR8121/AR8113/AR8114 Gigabit or Fast Ethernet (rev b0) 1.0.0.7 md5/sha1 corrupted using NFS and samba (updated) Version 2 Please try to use following define in atl1e_hw.h #define GPHY_CTRL_DEFAULT (\ GPHY_CTRL_SEL_ANA_RST |\ GPHY_CTRL_HIB_PULSE |\ GPHY_CTRL_HIB_EN) BR Xiong > -----Original Message----- > From: Hannes Frederic Sowa [mailto:hannes@...essinduktion.org] > Sent: Thursday, March 28, 2013 8:40 AM > To: Huang, Xiong > Cc: Sven Hartge; netdev@...r.kernel.org > Subject: Re: Atheros Communications Inc. AR8121/AR8113/AR8114 Gigabit or > Fast Ethernet (rev b0) 1.0.0.7 md5/sha1 corrupted using NFS and samba > (updated) Version 2 > > On Thu, Mar 28, 2013 at 12:10:57AM +0000, Huang, Xiong wrote: > > There is no much difference on those registers :( But you could try to > > replace : > > > > static void atl1e_cal_ring_size(struct atl1e_adapter *adapter, u32 > > *ring_size) { > > *ring_size = ((u32)(adapter->tx_ring.count * > > sizeof(struct atl1e_tpd_desc) + 7 > > /* tx ring, qword align */ > > + adapter->rx_ring.real_page_size * > AT_PAGE_NUM_PER_QUEUE * > > adapter->num_rx_queues + 31 > > /* rx ring, 32 bytes align */ > > + (1 + AT_PAGE_NUM_PER_QUEUE * adapter- > >num_rx_queues) * > > 16 + 15)); > > /* tx, rx cmd, dword align */ > > } > > > > > > static int atl1e_setup_ring_resources(struct atl1e_adapter *adapter) { > > ..... > > /* Init CMB dma address */ > > offset = roundup(offset, 16); > > tx_ring->cmb_dma = adapter->ring_dma + offset; > > tx_ring->cmb = adapter->ring_vir_addr + offset; > > offset += sizeof(u32); > > offset = roundup(offset, 16); > > > > for (i = 0; i < adapter->num_rx_queues; i++) { > > for (j = 0; j < AT_PAGE_NUM_PER_QUEUE; j++) { > > rx_page_desc[i].rx_page[j].write_offset_dma = > > adapter->ring_dma + offset; > > rx_page_desc[i].rx_page[j].write_offset_addr = > > adapter->ring_vir_addr + offset; > > offset += sizeof(u32); > > offset = roundup(offset, 16); > > } > > } > > ..... > > > > > > > > Just guess, no confidence on it .... > > No, problem still persists. :( > > Btw, in the meantime I extracted another mmiotrace (this time with a dhcp > exchange) and resolved the symbols: > > https://gist.github.com/hannes/5259468/raw/4c22dff854254c46534c1b87e47 > 7eff7d3ca2c5d/mmiotrace.txt > > Perhaps it helps. > > Thanks, > > Hannes
Powered by blists - more mailing lists