Hi Daneil,

I'll attempt to answer your questions:

>> * what does Tx Unit Hang means?
We check to make sure transmits are occurring after a set period of time.  If 
during that time a transmit has not occurred and we have transmits pending we 
set a bit saying we are concerned.  This bit will be cleared if we receive a 
pause frame. If during the next check the same conditions are true and the bit 
is still set we say we have a TX hang.

>> * what is the state of the driver after this kind of messages?
After entering this state we should schedule a reset.  The idea being that it 
will restart transmits.  Sounds like you are not seeing this.

>> * does 'resetting adapter' means that driver tries to recover from
>error?
Yes, like I mentioned above we will reset the port to try and restart 
transmits.  I'm confused on why your adapter didn't reset. 

>> * how can I control 'Tx Unit Hang' ?(e.g disable tx hang check, or
>> increase the timeout for check).
You can't disable it.  If transmit is really hung you pretty much need to 
reset.  There is no interface for increasing the timeout and it would be 
difficult to hack into the driver as Tx hang detection logic is part of the 
service tasklet.  Basically a tasklet that does all our periodic and functions 
that need to run outside of interrupt contexts.  This tasklet gets schedule 
when any of that work needs to be done.
 
Which leads me to my questions. :)
- What driver are you seeing this on.  And if not the latest Source Forge 
driver have you tried that one.
- What is the system doing when this event occurs?
- Is Pause Frames enabled?
- What kernel version (or distro) are you running on?

Thanks,
Don Skidmore <donald.c.skidm...@intel.com>

>-----Original Message-----
>From: Daniel Baluta [mailto:daniel.bal...@gmail.com]
>Sent: Tuesday, June 07, 2011 6:32 AM
>To: e1000-devel@lists.sourceforge.net
>Subject: Re: [E1000-devel] ixgbe: Detected Tx Unit Hang
>
>On Tue, Jun 7, 2011 at 11:16 AM, Daniel Baluta <daniel.bal...@gmail.com>
>wrote:
>> Hello,
>>
>> I am using ixgbe driver for an Ethernet 82599EB controller.
>> Under high load I see the messages pasted below:
>>
>> [44403.560/9] ixgbe: eth2: ixgbe_check_tx_hang: Detected Tx Unit Hang
>> [44403.560/9]   Tx Queue             <9>
>> [44403.560/9]   TDH, TDT             <730>, <714>
>> [44403.560/9]   next_to_use          <714>
>> [44403.560/9]   next_to_clean        <72a>
>> [44403.583/9] ixgbe: eth2: ixgbe_check_tx_hang:
>tx_buffer_info[next_to_clean]
>> [44403.583/9]   time_stamp           <102a28e51>
>> [44403.583/9]   jiffies              <102a29262>
>> [44403.598/9] ixgbe: eth2: ixgbe_clean_tx_irq: tx hang 1 detected,
>> resetting adapter
>>
>>
>> I am now analyzing the code and I try to understand the following
>things:
>> * what does Tx Unit Hang means?
>> * what is the state of the driver after this kind of messages?
>> * does 'resetting adapter' means that driver tries to recover from
>error?
>> * how can I control 'Tx Unit Hang' ?(e.g disable tx hang check, or
>> increase the timeout for check).
>>
>> Could you help me?
>>
>> My real problem is that after I see this message, the interface isn't
>> able to transmit any other message, even if I bring the interface
>down/up.
>
>OK, after more testing I found out that after bringing down/up the
>interface
>I can use it again for sending/receiving traffic.
>
>Anyhow, isn't ixgbe_reset_task which is call on TX hang supposed to
>have the same effect as if eth0 down; ifconfig eth0 up?
>
>thanks,
>Daniel.
>
>------------------------------------------------------------------------
>------
>EditLive Enterprise is the world's most technically advanced content
>authoring tool. Experience the power of Track Changes, Inline Image
>Editing and ensure content is compliant with Accessibility Checking.
>http://p.sf.net/sfu/ephox-dev2dev
>_______________________________________________
>E1000-devel mailing list
>E1000-devel@lists.sourceforge.net
>https://lists.sourceforge.net/lists/listinfo/e1000-devel
>To learn more about Intel&#174; Ethernet, visit
>http://communities.intel.com/community/wired

------------------------------------------------------------------------------
EditLive Enterprise is the world's most technically advanced content
authoring tool. Experience the power of Track Changes, Inline Image
Editing and ensure content is compliant with Accessibility Checking.
http://p.sf.net/sfu/ephox-dev2dev
_______________________________________________
E1000-devel mailing list
E1000-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/e1000-devel
To learn more about Intel&#174; Ethernet, visit 
http://communities.intel.com/community/wired

Reply via email to