Re: [PATCH 2/6]: powerpc/cell spidernet low watermark patch.

2006-09-30 Thread Arnd Bergmann
Am Saturday 30 September 2006 01:17 schrieb Linas Vepstas:
 Implement basic low-watermark support for the transmit queue.
 Hardware low-watermarks allow a properly configured kernel
 to continously stream data to a device and not have to handle
 any interrupts at all in doing so. Correct zero-interrupt
 operation can be actually observed for this driver, when the
 socket buffer is made large enough.

Acked-by: Arnd Bergmann [EMAIL PROTECTED]
-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 2/6]: powerpc/cell spidernet low watermark patch.

2006-08-23 Thread Linas Vepstas
On Sun, Aug 20, 2006 at 12:03:14PM +0200, Arnd Bergmann wrote:
 On Sunday 20 August 2006 08:31, Benjamin Herrenschmidt wrote:
   card-low_watermark-next-dmac_cmd_status |= SPIDER_NET_DESCR_TXDESFLG;
   mb();
   card-low_watermark-dmac_cmd_status = ~SPIDER_NET_DESCR_TXDESFLG;
   card-low_watermark = card-low_watermark-next;
   
   when we queue another frame for TX.
  
  I would have expected those to be racy vs. the hardware... what if the
  hardware is updating dmac_cmd_status just as your are trying to and the
  bit out of it ?
 
 Right, that doesn't work. It is the only bit we use in that byte though,
 so maybe it can be done with a single byte write.

Thanks, you're right, I missed that.  I'll change this to byte access 
shortly.  Any recommendations for style/api for byte access? 

I could create a searate patch to change struct descr {} to split 
the u32 into several u8's; there's a dozen spots that get touched.

Alternatel, I could do a cheesy cast to char[4] and access that way.
Opinions?

--linas
-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 2/6]: powerpc/cell spidernet low watermark patch.

2006-08-20 Thread Benjamin Herrenschmidt

 card-low_watermark-next-dmac_cmd_status |= SPIDER_NET_DESCR_TXDESFLG;
 mb();
 card-low_watermark-dmac_cmd_status = ~SPIDER_NET_DESCR_TXDESFLG;
 card-low_watermark = card-low_watermark-next;
 
 when we queue another frame for TX.

I would have expected those to be racy vs. the hardware... what if the
hardware is updating dmac_cmd_status just as your are trying to and the
bit out of it ?

Ben


-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html


Re: [PATCH 2/6]: powerpc/cell spidernet low watermark patch.

2006-08-20 Thread Arnd Bergmann
On Sunday 20 August 2006 08:31, Benjamin Herrenschmidt wrote:
  card-low_watermark-next-dmac_cmd_status |= SPIDER_NET_DESCR_TXDESFLG;
  mb();
  card-low_watermark-dmac_cmd_status = ~SPIDER_NET_DESCR_TXDESFLG;
  card-low_watermark = card-low_watermark-next;
  
  when we queue another frame for TX.
 
 I would have expected those to be racy vs. the hardware... what if the
 hardware is updating dmac_cmd_status just as your are trying to and the
 bit out of it ?

Right, that doesn't work. It is the only bit we use in that byte though,
so maybe it can be done with a single byte write.

Arnd 
-
To unsubscribe from this list: send the line unsubscribe netdev in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html