Thanks for the reply. Sorry garbled URL in the previous message. 
 
Actually I was talk between the ixgb_start (Transmit function not the Transmit 
interrupt handler) and rx interrupt handler function ( Where we send the packet 
up using if_input function). 
 
We are using same lock between transmit and Rx_interrupt handler function, Will 
it affect the performance? Can we use seperate locks for these functions to 
increase the performance on multiproccessor system. 
 
For ex, if we assume that ixgb_start function is executed on CPU1 and it create 
the mbuf for transmit. We receive Rx interrupt and CPU2 is scheduled with Rx 
interrupt handler. Since we are holding the lock in ixgb_start function, the Rx 
interrupt handler can not proceed further as it needs ADAPTER LOCK.
 
Am I Correct ??
 
Thanks,
~Siva
 

________________________________

From: Jack Vogel [mailto:[EMAIL PROTECTED]
Sent: Tue 5/15/2007 1:47 PM
To: SIVAKUMAR SUBRAMANI (WT01 - Computing Storage and Software Products)
Cc: [email protected]
Subject: Re: IXGB networl driver and locking



On 5/14/07, [EMAIL PROTECTED] <[EMAIL PROTECTED]> wrote:
>
> Hi all,
>
> Same lock is being used in ixgb_intr and ixgb_start. If we get Receive
> interrupt while processing Xmit (ixgb_start), Will the calling of
> ixgb_intr() handler be delayed as we will not be getting lock in
> ixgb_intr since it is already locked in ixgb_start. If it is the case,
> are we making it as Half duplex, I mean we are allowing either of one Tx
> (or) Rx. Please clarify.

What was all this garbled URLs in your message, something is messing
with your content.

In any case, the device only has ONE interrupt registered, it can be
caused by either RX or TX or whatever.

This as well as the em driver has always had a single lock as well,
and, while it could be made more sophisticated, it has been adequate.
The em driver in CURRENT handles some interrupts without the lock.

In any case, the hardware operates independently of the driver to some
extent, processing RX from the wire, and doing the DMA to memory
without the driver being in control, it interrupts when it gets done with
an packet, and even then it can continue.

So, I dont know what your real issue is, but the single adapter lock
does not make things half duplex.

Jack





The information contained in this electronic message and any attachments to 
this message are intended for the exclusive use of the addressee(s) and may 
contain proprietary, confidential or privileged information. If you are not the 
intended recipient, you should not disseminate, distribute or copy this e-mail. 
Please notify the sender immediately and destroy all copies of this message and 
any attachments. 

WARNING: Computer viruses can be transmitted via email. The recipient should 
check this email and any attachments for the presence of viruses. The company 
accepts no liability for any damage caused by any virus transmitted by this 
email.
 
www.wipro.com
_______________________________________________
[email protected] mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-net
To unsubscribe, send any mail to "[EMAIL PROTECTED]"

Reply via email to