Re: [PATCH] declance: Restore tx descriptor ring locking

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



From: "Maciej W. Rozycki" <macro@xxxxxxxxxxxxxx>
Date: Mon, 8 Jun 2009 02:47:05 +0100 (WEST)

> A driver overhaul on 29 Feb 2000 (!) broke locking around fiddling with 
> the tx descriptor ring in start_xmit(); a follow-on "fix" removed the 
> broken remnants altogether.  Here's a patch to restore proper locking in 
> the function -- the complement in the interrupt handler has been correct 
> all the time.
> 
>  This *may* have been the reason for the occasional confusion of the chip 
> -- triggering a tx timeout followed by a chip reset sequence -- seen on 
> R4k-based DECstations with the onboard Ethernet interface.  Another theory 
> is the confusion is due to an unindentified problem -- perhaps a silicon 
> erratum -- associated with the variation of the MT ASIC used to interface 
> the R4k CPU to the rest of the system on these computers; with its 
> aggressive write-back buffering the design is particularly weakly ordered 
> when it comes to MMIO (in the absence of ordering barriers uncached reads 
> are allowed to bypass earlier uncached writes, even if to the same 
> location), which may trigger all kinds of corner cases in peripheral 
> hardware as well as software.
> 
> Either way this piece of code is buggy.
> 
> Signed-off-by: Maciej W. Rozycki <macro@xxxxxxxxxxxxxx>

Looks good to me, applied.


[Index of Archives]     [Linux MIPS Home]     [LKML Archive]     [Linux ARM Kernel]     [Linux ARM]     [Linux]     [Git]     [Yosemite News]     [Linux SCSI]     [Linux Hams]

  Powered by Linux