Hi Vishal,
You are right about the variable 'pkt_count'. If the packet count
exceeds a limit - rx_limit_onintr, the function will return, and the
outstanding packets will be received with the next interrupt.
The limit "rx_limit_onintr" is connected with the tunable
"_max_num_rcv_packets". We can change it by using the command
"dladm set-linkprop ...".
If you want to check the packet count per interrupt, you can use dtrace
to trace every function call of e1000g_receive() and check the variable
"rx_pkt_cnt" in the e1000g_t structure.
Regards,
Ted
Hi Ted,
I was going through the function e1000g_receive() in
e1000g_rx.c, and I noticed that there is a variable 'pkt_count', and it
looks like that it is being used to count the number of packets for
every interrupt. Can you please confirm this. The thing is that I am
doing some very controlled experiments using UDP, wherein a single
message will fit into a single UDP packet. If you think that pkt_count
does hold the number of packets per interrupt, then can you please
suggest a way to capture this information as well.
Thank you,
Vishal
On Tue, Sep 8, 2009 at 7:16 PM, Ted You <[email protected]
<mailto:[email protected]>> wrote:
Hi Vhiz,
You can check the source file of uts/common/io/e1000g/e1000g_main.c,
search the variables of intr_throttling_rate, rx_intr_delay, and
rx_intr_abs_delay. However, in the e1000g driver, the code just provides
a method for users to configure those parameters. It does not explicitly
explain how they affect the rx interrupt. The Intel document AP450 has
more details about it.
And you can also check the file uts/common/io/e1000g/e1000g_rx.c. The
function e1000g_receive() in e1000g_rx.c, and the functions
e1000g_intr_work() / e1000g_poll_ring() in e1000g_main.c are the major
packet receiving routines of the driver.
Hope this helps.
Regards,
Ted
Thank you for that! I had a look at the document, but
I could not find anything useful for my problem. Will
it help if I ponder at the driver code? If yes, can
someone please point out any specific parts which I
should look at.
Thanks.
Can someone please help here..
_______________________________________________
driver-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/driver-discuss