netdev
[Top] [All Lists]

Re: 1.03Mpps on e1000

To: Ray Lehtiniemi <rayl@xxxxxxxx>
Subject: Re: 1.03Mpps on e1000
From: P@xxxxxxxxxxxxxx
Date: Thu, 09 Dec 2004 17:12:30 +0000
Cc: netdev@xxxxxxxxxxx
In-reply-to: <20041209161825.GA32454@mail.com>
References: <20041201001107.GE4203@xi.wantstofly.org> <1101863399.4663.54.camel@sfeldma-mobl.dsl-verizon.net> <20041201182943.GA14470@xi.wantstofly.org> <20041201213550.GF14470@xi.wantstofly.org> <1101967983.4782.9.camel@localhost.localdomain> <20041205145051.GA647@xi.wantstofly.org> <Pine.LNX.4.58.0412051559350.29474@tux.rsn.bth.se> <Pine.LNX.4.58.0412051638290.29474@tux.rsn.bth.se> <20041208233617.GD8649@mail.com> <41B825A5.2000009@draigBrady.com> <20041209161825.GA32454@mail.com>
Sender: netdev-bounce@xxxxxxxxxxx
User-agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.6) Gecko/20040124
Ray Lehtiniemi wrote:
On Thu, Dec 09, 2004 at 10:15:01AM +0000, P@xxxxxxxxxxxxxx wrote:

That is very interesting!
I'm guessing it's due to some alignment bug?

Can you repeat for 60-68 ?

certainly. here are the raw results, and a summary oprofile for 60-68.

looking at the disassembly, it seems that the 'rdtsc' opcode
at 0x46f3 is causing the problem?

Well that wasn't obvious to me :-) I did some manipulating with sort/join and came up with the following percentage changes Note the % diff col adds to 37%

address  % @ 60b % @ 64b % diff
000046f5 14.6006 22.3856 7.785000 #instruction after rdtsc
00004737 15.0990 20.2242 5.125200 #instruction after rdtsc
0000474b 11.3857 12.9496 1.563900
00004726 1.5419 2.5867 1.044800
000046f7 0.6258 1.1922 0.566400
00004751 4.9377 5.4016 0.463900
000047a1 0.0118 0.4675 0.455700
00004739 1.2614 1.6962 0.434800
000044f7 1.0592 1.4506 0.391400
00004749 0.5467 0.9253 0.378600
0000475d 0.0879 0.1769 0.089000
0000445f 0.3785 0.4599 0.081400
000047c3 0.1003 0.1652 0.064900
000045cf 0.0804 0.1316 0.051200
000047aa 0.0048 0.0194 0.014600
000047bd 5.5e-04 0.0142 0.013650
000047b3 0.0106 0.0200 0.009400
00004598 0.0061 0.0147 0.008600
000045e9 0.0026 0.0103 0.007700
00004640 0.0692 0.0701 0.000900
00004465 0.0014 0.0020 0.000600
0000481b 4.3e-04 7.3e-04 0.000300
0000470e 6.1e-05 2.4e-04 0.000179
0000458d 1.2e-04 2.7e-04 0.000150
00004a47 1.8e-04 3.0e-04 0.000120
00004735 0.0085 0.0086 0.000100
00004745 1.2e-04 2.2e-04 0.000100
000047dd 0.0032 0.0033 0.000100
00004a49 0.0037 0.0038 0.000100
00004663 1.8e-04 2.7e-04 0.000090
0000489a 8.0e-04 8.9e-04 0.000090
00004514 9.2e-04 0.0010 0.000080
00004a61 6.1e-05 1.4e-04 0.000079
000046d4 6.1e-05 1.1e-04 0.000049
00004789 6.1e-05 1.1e-04 0.000049
00004683 1.2e-04 1.6e-04 0.000040
00004a51 1.8e-04 2.2e-04 0.000040
000047cc 9.2e-04 9.5e-04 0.000030
000045ba 6.8e-04 7.0e-04 0.000020
00004a36 6.1e-05 8.1e-05 0.000020
00004620 1.8e-04 1.9e-04 0.000010
0000474f 0.0042 0.0042 0.000000
0000466d 6.1e-05 5.4e-05 -0.000007
00004817 1.2e-04 1.1e-04 -0.000010
0000470c 4.9e-04 4.6e-04 -0.000030
000045eb 6.1e-05 2.7e-05 -0.000034
00004616 6.1e-05 2.7e-05 -0.000034
00004a1e 6.1e-05 2.7e-05 -0.000034
00004652 1.2e-04 8.1e-05 -0.000039
000047ee 1.2e-04 8.1e-05 -0.000039
00004685 1.2e-04 5.4e-05 -0.000066
00004894 3.1e-04 2.4e-04 -0.000070
00004714 6.1e-04 5.2e-04 -0.000090
00004524 1.2e-04 2.7e-05 -0.000093
0000467b 1.2e-04 2.7e-05 -0.000093
000046bb 1.2e-04 2.7e-05 -0.000093
00004446 0.0010 8.9e-04 -0.000110
0000488b 2.5e-04 1.4e-04 -0.000110
00004522 4.3e-04 2.7e-04 -0.000160
00004508 3.1e-04 1.4e-04 -0.000170
00004634 6.1e-04 4.3e-04 -0.000180
00004587 8.0e-04 6.0e-04 -0.000200
000047ae 0.0032 0.0030 -0.000200
00004440 5.5e-04 3.3e-04 -0.000220
00004459 0.0012 9.8e-04 -0.000220
00004506 9.2e-04 6.5e-04 -0.000270
000049ff 0.0021 0.0018 -0.000300
0000451c 0.0013 9.8e-04 -0.000320
000046c7 3.7e-04 2.7e-05 -0.000343
00004673 4.9e-04 1.1e-04 -0.000380
0000478f 4.9e-04 1.1e-04 -0.000380
00004450 0.0012 8.1e-04 -0.000390
00004541 6.1e-04 2.2e-04 -0.000390
000045a9 7.4e-04 3.5e-04 -0.000390
00004777 5.5e-04 1.6e-04 -0.000390
000047d0 6.8e-04 2.7e-04 -0.000410
00004457 0.0084 0.0079 -0.000500
000047ba 0.0018 0.0013 -0.000500
00004a6b 0.0031 0.0026 -0.000500
00004612 5.5e-04 2.7e-05 -0.000523
00004681 6.8e-04 1.4e-04 -0.000540
0000477b 7.4e-04 1.9e-04 -0.000550
00004503 0.0017 0.0011 -0.000600
000047df 0.0020 0.0014 -0.000600
000045b6 0.0010 3.8e-04 -0.000620
00004781 0.0010 3.8e-04 -0.000620
00004667 0.0012 5.2e-04 -0.000680
00004885 0.0015 8.1e-04 -0.000690
000045a3 0.0017 0.0010 -0.000700
000047da 0.0014 7.0e-04 -0.000700
00004747 8.6e-04 8.1e-05 -0.000779
0000446f 0.0151 0.0143 -0.000800
00004702 0.0019 0.0011 -0.000800
00004718 0.0157 0.0149 -0.000800
000047b6 0.0022 0.0014 -0.000800
00004a25 0.0054 0.0046 -0.000800
00004a65 0.0026 0.0018 -0.000800
0000477e 9.8e-04 1.4e-04 -0.000840
000045c8 0.0015 5.7e-04 -0.000930
00004543 0.0049 0.0039 -0.001000
00004604 0.0013 3.0e-04 -0.001000
00004787 0.0026 0.0016 -0.001000
00004a02 0.0018 7.6e-04 -0.001040
0000450e 0.0063 0.0052 -0.001100
0000465d 0.0022 0.0011 -0.001100
0000459d 0.0014 1.9e-04 -0.001210
0000464a 0.0017 3.8e-04 -0.001320
000047cf 0.0020 6.8e-04 -0.001320
00004a13 0.0016 1.1e-04 -0.001490
0000461e 0.0017 1.6e-04 -0.001540
000044ff 0.0040 0.0024 -0.001600
00004628 0.0020 3.5e-04 -0.001650
000045d5 0.0076 0.0055 -0.002100
00004638 0.0049 0.0027 -0.002200
00004650 0.0045 0.0021 -0.002400
00004632 0.0052 0.0026 -0.002600
00004769 0.0059 0.0033 -0.002600
00004444 0.0957 0.0930 -0.002700
00004610 0.0034 6.5e-04 -0.002750
000046fb 0.0097 0.0069 -0.002800
0000487f 0.0175 0.0146 -0.002900
000044f4 0.0071 0.0039 -0.003200
00004757 0.0068 0.0032 -0.003600
00004583 0.0176 0.0136 -0.004000
0000472d 0.0178 0.0138 -0.004000
00004624 0.0049 6.5e-04 -0.004250
00004700 0.0074 0.0029 -0.004500
00004763 0.0110 0.0059 -0.005100
00004755 0.0091 0.0037 -0.005400
000047b0 0.0201 0.0138 -0.006300
0000459b 0.0102 0.0035 -0.006700
000046fd 0.0146 0.0078 -0.006800
00004797 0.0253 0.0181 -0.007200
0000473f 0.0226 0.0153 -0.007300
0000476d 0.0253 0.0180 -0.007300
0000474d 0.0236 0.0152 -0.008400
000044f0 0.0191 0.0094 -0.009700
00004471 0.0332 0.0222 -0.011000
000046f3 0.0224 0.0112 -0.011200
0000472f 0.0221 0.0105 -0.011600
00004743 0.0146 0.0025 -0.012100
00004753 0.0311 0.0185 -0.012600
000044f9 0.0232 0.0100 -0.013200
000045f2 0.0781 0.0638 -0.014300
000045c0 0.0796 0.0632 -0.016400
000047a4 0.1020 0.0851 -0.016900
00004455 0.0468 0.0282 -0.018600
0000472a 0.0331 0.0140 -0.019100
00004720 0.0420 0.0228 -0.019200
00004741 0.0520 0.0255 -0.026500
0000460a 0.0296 6.8e-04 -0.028920
00004469 0.0696 0.0391 -0.030500
000047b8 0.0485 0.0164 -0.032100
00004771 0.0479 0.0151 -0.032800
000047d6 0.0634 0.0270 -0.036400
000045c2 0.1763 0.0500 -0.126300
0000488e 0.2228 0.0961 -0.126700
0000458f 0.2212 0.0932 -0.128000
00004709 0.8817 0.7529 -0.128800
0000479b 0.2469 0.1158 -0.131100
000047c6 0.2489 0.1103 -0.138600
00004775 0.2514 0.1124 -0.139000
00004657 0.2502 0.1105 -0.139700
0000444c 0.2555 0.1107 -0.144800
000045df 0.1822 0.0357 -0.146500
00004608 0.2596 0.1117 -0.147900
00004618 0.2635 0.1153 -0.148200
00004679 0.2580 0.1094 -0.148600
0000462c 0.2630 0.1134 -0.149600
00004594 0.2494 0.0958 -0.153600
000045f8 0.1934 0.0369 -0.156500
0000471a 0.8706 0.6718 -0.198800
000045e6 0.4986 0.2189 -0.279700
00004644 0.4393 0.1515 -0.287800
0000463c 0.5214 0.2247 -0.296700
000045fe 0.5160 0.2022 -0.313800
00004622 3.5942 1.5668 -2.027400
0000461c 3.6298 1.5695 -2.060300
00004716 19.2425 16.4027 -2.839800
00004600 5.2128 2.2837 -2.929100
000045b0 7.8500 3.3027 -4.547300



it is worth noting that my box has become quite unstable since
i started to use oprofile and pktgen together.  sshd stops responding,
and the network seems to go down.  not sure what is happening there...
this instability seems to be persisting across reboots, unfortunately...






60 bytes --------

60 1195259
60 1206652
60 1139822
60 1206650
60 1206654
60 1136447
60 1206651
60 1148050
60 1206504
60 1206653

CPU: P4 / Xeon with 2 hyper-threads, speed 3067.25 MHz (estimated)
Counted GLOBAL_POWER_EVENTS events (time during which processor is not stopped) 
with a unit mask of 0x01 (mandatory) count 100000
vma      samples  %        image name               app name                 
symbol name
00004337 1626886  57.5170  pktgen.ko                pktgen                   
pktgen_thread_worker
c02f389d 282974   10.0043  vmlinux                  vmlinux                  
_spin_lock
c021adc0 219795    7.7706  vmlinux                  vmlinux                  
e1000_clean_tx
c02f3904 164371    5.8112  vmlinux                  vmlinux                  
_spin_lock_bh
c0219c74 160383    5.6702  vmlinux                  vmlinux                  
e1000_xmit_frame
c02f3870 124564    4.4038  vmlinux                  vmlinux                  
_spin_trylock
000041d1 48511     1.7151  pktgen.ko                pktgen                   
next_to_run
c02f399a 46205     1.6335  vmlinux                  vmlinux                  
_spin_unlock_irqrestore
c010c7d9 20876     0.7381  vmlinux                  vmlinux                  
mark_offset_tsc
c011fdb2 13116     0.4637  vmlinux                  vmlinux                  
local_bh_enable
c0107248 8166      0.2887  vmlinux                  vmlinux                  
timer_interrupt
c0103970 5607      0.1982  vmlinux                  vmlinux                  
apic_timer_interrupt
c010123a 5368      0.1898  vmlinux                  vmlinux                  
default_idle
c02f39a5 4256      0.1505  vmlinux                  vmlinux                  
_spin_unlock_bh
c0103c08 4042      0.1429  vmlinux                  vmlinux                  
page_fault
0804ae00 3930      0.1389  oprofiled                oprofiled                
sfile_find
0804aa10 3573      0.1263  oprofiled                oprofiled                
get_file



64 bytes
--------

64 606104
64 597737
64 594927
64 595531
64 606876
64 594751
64 595709
64 595070
64 606876
64 595600

CPU: P4 / Xeon with 2 hyper-threads, speed 3067.25 MHz (estimated)
Counted GLOBAL_POWER_EVENTS events (time during which processor is not stopped) 
with a unit mask of 0x01 (mandatory) count 100000
vma      samples  %        image name               app name                 
symbol name
00004337 3688998  68.9133  pktgen.ko                pktgen                   
pktgen_thread_worker
c02f389d 519536    9.7053  vmlinux                  vmlinux                  
_spin_lock
c021adc0 271791    5.0773  vmlinux                  vmlinux                  
e1000_clean_tx
c0219c74 214428    4.0057  vmlinux                  vmlinux                  
e1000_xmit_frame
c02f3904 166334    3.1072  vmlinux                  vmlinux                  
_spin_lock_bh
c02f3870 127623    2.3841  vmlinux                  vmlinux                  
_spin_trylock
000041d1 111650    2.0857  pktgen.ko                pktgen                   
next_to_run
c02f399a 47428     0.8860  vmlinux                  vmlinux                  
_spin_unlock_irqrestore
c010c7d9 39586     0.7395  vmlinux                  vmlinux                  
mark_offset_tsc
c0107248 14671     0.2741  vmlinux                  vmlinux                  
timer_interrupt
c011fdb2 12926     0.2415  vmlinux                  vmlinux                  
local_bh_enable
c0103970 11778     0.2200  vmlinux                  vmlinux                  
apic_timer_interrupt
c010123a 9282      0.1734  vmlinux                  vmlinux                  
default_idle
0804ae00 7449      0.1392  oprofiled                oprofiled                
sfile_find
0804aa10 6387      0.1193  oprofiled                oprofiled                
get_file
0804ac30 6234      0.1165  oprofiled                oprofiled                
sfile_log_sample
0804f4b0 5852      0.1093  oprofiled                oprofiled                
odb_insert



68 bytes
--------

68 1124822
68 1124805
68 1090006
68 1124822
68 1089775
68 1124812
68 1123305
68 1091796
68 1124820
68 1087043

CPU: P4 / Xeon with 2 hyper-threads, speed 3067.25 MHz (estimated)
Counted GLOBAL_POWER_EVENTS events (time during which processor is not stopped) 
with a unit mask of 0x01 (mandatory) count 100000
vma      samples  %        image name               app name                 
symbol name
00004337 1753028  58.4510  pktgen.ko                pktgen                   
pktgen_thread_worker
c02f389d 301835   10.0641  vmlinux                  vmlinux                  
_spin_lock
c021adc0 223405    7.4490  vmlinux                  vmlinux                  
e1000_clean_tx
c02f3904 167118    5.5722  vmlinux                  vmlinux                  
_spin_lock_bh
c0219c74 166016    5.5355  vmlinux                  vmlinux                  
e1000_xmit_frame
c02f3870 131516    4.3851  vmlinux                  vmlinux                  
_spin_trylock
000041d1 56334     1.8783  pktgen.ko                pktgen                   
next_to_run
c02f399a 46860     1.5624  vmlinux                  vmlinux                  
_spin_unlock_irqrestore
c010c7d9 26188     0.8732  vmlinux                  vmlinux                  
mark_offset_tsc
c011fdb2 12199     0.4068  vmlinux                  vmlinux                  
local_bh_enable
c0107248 10399     0.3467  vmlinux                  vmlinux                  
timer_interrupt
c010123a 8799      0.2934  vmlinux                  vmlinux                  
default_idle
c0103970 8194      0.2732  vmlinux                  vmlinux                  
apic_timer_interrupt
c0117346 4822      0.1608  vmlinux                  vmlinux                  
find_busiest_group
0804ae00 4214      0.1405  oprofiled                oprofiled                
sfile_find
c02f39a5 3955      0.1319  vmlinux                  vmlinux                  
_spin_unlock_bh
0804aa10 3745      0.1249  oprofiled                oprofiled                
get_file



here is the detailed breakdown for the 60 byte pktgen:

CPU: P4 / Xeon with 2 hyper-threads, speed 3067.25 MHz (estimated)
Counted GLOBAL_POWER_EVENTS events (time during which processor is not stopped) 
with a unit mask of 0x01 (mandatory) count 100000
vma      samples  %        image name               app name                 
symbol name
00004337 1626886  57.5170  pktgen.ko                pktgen                   
pktgen_thread_worker
  00004440 9        5.5e-04
  00004444 1557      0.0957
  00004446 17        0.0010
  0000444c 4156      0.2555
  00004450 19        0.0012
  00004455 762       0.0468
  00004457 136       0.0084
  00004459 20        0.0012
  0000445f 6157      0.3785
  00004465 23        0.0014
  00004469 1133      0.0696
  0000446f 246       0.0151
  00004471 540       0.0332
  000044f0 310       0.0191
  000044f4 115       0.0071
  000044f7 17232     1.0592
  000044f9 377       0.0232
  000044ff 65        0.0040
  00004503 28        0.0017
  00004506 15       9.2e-04
  00004508 5        3.1e-04
  0000450e 102       0.0063
  00004514 15       9.2e-04
  0000451c 21        0.0013
  00004522 7        4.3e-04
  00004524 2        1.2e-04
  00004541 10       6.1e-04
  00004543 79        0.0049
  00004583 287       0.0176
  00004587 13       8.0e-04
  0000458d 2        1.2e-04
  0000458f 3598      0.2212
  00004594 4057      0.2494
  00004598 100       0.0061
  0000459b 166       0.0102
  0000459d 22        0.0014
  000045a3 28        0.0017
  000045a9 12       7.4e-04
  000045b0 127711    7.8500
  000045b6 17        0.0010
  000045ba 11       6.8e-04
  000045c0 1295      0.0796
  000045c2 2869      0.1763
  000045c8 24        0.0015
  000045cf 1308      0.0804
  000045d5 123       0.0076
  000045df 2964      0.1822
  000045e6 8111      0.4986
  000045e9 42        0.0026
  000045eb 1        6.1e-05
  000045f2 1271      0.0781
  000045f8 3146      0.1934
  000045fe 8395      0.5160
  00004600 84807     5.2128
  00004604 21        0.0013
  00004608 4223      0.2596
  0000460a 481       0.0296
  00004610 55        0.0034
  00004612 9        5.5e-04
  00004616 1        6.1e-05
  00004618 4287      0.2635
  0000461a 3        1.8e-04
  0000461c 59052     3.6298
  0000461e 28        0.0017
  00004620 3        1.8e-04
  00004622 58473     3.5942
  00004624 79        0.0049
  00004628 33        0.0020
  0000462c 4279      0.2630
  00004632 84        0.0052
  00004634 10       6.1e-04
  00004638 80        0.0049
  0000463c 8483      0.5214
  00004640 1126      0.0692
  00004644 7147      0.4393
  0000464a 27        0.0017
  00004650 73        0.0045
  00004652 2        1.2e-04
  00004657 4070      0.2502
  0000465d 36        0.0022
  00004663 3        1.8e-04
  00004665 2        1.2e-04
  00004667 20        0.0012
  0000466d 1        6.1e-05
  00004673 8        4.9e-04
  00004679 4197      0.2580
  0000467b 2        1.2e-04
  00004681 11       6.8e-04
  00004683 2        1.2e-04
  00004685 2        1.2e-04
  000046bb 2        1.2e-04
  000046c1 2        1.2e-04
  000046c7 6        3.7e-04
  000046d4 1        6.1e-05
  000046f3 365       0.0224
  000046f5 237535   14.6006
  000046f7 10181     0.6258
  000046fb 157       0.0097
  000046fd 238       0.0146
  00004700 120       0.0074
  00004702 31        0.0019
  00004709 14344     0.8817
  0000470c 8        4.9e-04
  0000470e 1        6.1e-05
  00004714 10       6.1e-04
  00004716 313053   19.2425
  00004718 255       0.0157
  0000471a 14164     0.8706
  00004720 683       0.0420
  00004726 25085     1.5419
  0000472a 538       0.0331
  0000472d 290       0.0178
  0000472f 359       0.0221
  00004735 139       0.0085
  00004737 245644   15.0990
  00004739 20521     1.2614
  0000473f 368       0.0226
  00004741 846       0.0520
  00004743 237       0.0146
  00004745 2        1.2e-04
  00004747 14       8.6e-04
  00004749 8894      0.5467
  0000474b 185233   11.3857
  0000474d 384       0.0236
  0000474f 69        0.0042
  00004751 80331     4.9377
  00004753 506       0.0311
  00004755 148       0.0091
  00004757 111       0.0068
  0000475d 1430      0.0879
  00004763 179       0.0110
  00004769 96        0.0059
  0000476d 411       0.0253
  00004771 780       0.0479
  00004775 4090      0.2514
  00004777 9        5.5e-04
  0000477b 12       7.4e-04
  0000477e 16       9.8e-04
  00004781 17        0.0010
  00004787 43        0.0026
  00004789 1        6.1e-05
  0000478f 8        4.9e-04
  00004797 412       0.0253
  0000479b 4016      0.2469
  000047a1 192       0.0118
  000047a4 1660      0.1020
  000047aa 78        0.0048
  000047ae 52        0.0032
  000047b0 327       0.0201
  000047b3 173       0.0106
  000047b6 35        0.0022
  000047b8 789       0.0485
  000047ba 29        0.0018
  000047bd 9        5.5e-04
  000047c3 1632      0.1003
  000047c6 4049      0.2489
  000047cc 15       9.2e-04
  000047cf 33        0.0020
  000047d0 11       6.8e-04
  000047d6 1032      0.0634
  000047da 22        0.0014
  000047dd 52        0.0032
  000047df 33        0.0020
  000047ea 1        6.1e-05
  000047ee 2        1.2e-04
  000047f6 1        6.1e-05
  000047ff 1        6.1e-05
  00004809 1        6.1e-05
  0000480e 1        6.1e-05
  00004817 2        1.2e-04
  0000481b 7        4.3e-04
  0000487f 284       0.0175
  00004885 24        0.0015
  0000488b 4        2.5e-04
  0000488e 3625      0.2228
  00004894 5        3.1e-04
  0000489a 13       8.0e-04
  000049ff 34        0.0021
  00004a02 30        0.0018
  00004a04 4        2.5e-04
  00004a0f 3        1.8e-04
  00004a13 26        0.0016
  00004a1e 1        6.1e-05
  00004a25 88        0.0054
  00004a36 1        6.1e-05
  00004a47 3        1.8e-04
  00004a49 60        0.0037
  00004a51 3        1.8e-04
  00004a61 1        6.1e-05
  00004a65 42        0.0026
  00004a6b 50        0.0031



here is the detailed breakdown for the 64 byte pktgen:

CPU: P4 / Xeon with 2 hyper-threads, speed 3067.25 MHz (estimated)
Counted GLOBAL_POWER_EVENTS events (time during which processor is not stopped) 
with a unit mask of 0x01 (mandatory) count 100000
vma      samples  %        image name               app name                 
symbol name
00004337 3688998  68.9133  pktgen.ko                pktgen                   
pktgen_thread_worker
  00004440 12       3.3e-04
  00004444 3431      0.0930
  00004446 33       8.9e-04
  0000444c 4082      0.1107
  00004450 30       8.1e-04
  00004455 1041      0.0282
  00004457 292       0.0079
  00004459 36       9.8e-04
  0000445f 16964     0.4599
  00004465 73        0.0020
  00004469 1442      0.0391
  0000446f 528       0.0143
  00004471 818       0.0222
  000044f0 347       0.0094
  000044f4 145       0.0039
  000044f7 53514     1.4506
  000044f9 369       0.0100
  000044ff 90        0.0024
  00004503 41        0.0011
  00004506 24       6.5e-04
  00004508 5        1.4e-04
  0000450e 192       0.0052
  00004514 37        0.0010
  00004516 5        1.4e-04
  0000451c 36       9.8e-04
  00004522 10       2.7e-04
  00004524 1        2.7e-05
  00004541 8        2.2e-04
  00004543 144       0.0039
  00004583 503       0.0136
  00004587 22       6.0e-04
  0000458d 10       2.7e-04
  0000458f 3437      0.0932
  00004594 3533      0.0958
  00004598 541       0.0147
  0000459b 129       0.0035
  0000459d 7        1.9e-04
  000045a3 38        0.0010
  000045a9 13       3.5e-04
  000045b0 121838    3.3027
  000045b6 14       3.8e-04
  000045ba 26       7.0e-04
  000045c0 2330      0.0632
  000045c2 1843      0.0500
  000045c8 21       5.7e-04
  000045cf 4855      0.1316
  000045d5 203       0.0055
  000045df 1317      0.0357
  000045e6 8076      0.2189
  000045e9 381       0.0103
  000045eb 1        2.7e-05
  000045f2 2355      0.0638
  000045f8 1362      0.0369
  000045fe 7460      0.2022
  00004600 84246     2.2837
  00004604 11       3.0e-04
  00004608 4122      0.1117
  0000460a 25       6.8e-04
  00004610 24       6.5e-04
  00004612 1        2.7e-05
  00004614 1        2.7e-05
  00004616 1        2.7e-05
  00004618 4254      0.1153
  0000461c 57898     1.5695
  0000461e 6        1.6e-04
  00004620 7        1.9e-04
  00004622 57801     1.5668
  00004624 24       6.5e-04
  00004628 13       3.5e-04
  0000462c 4185      0.1134
  00004632 97        0.0026
  00004634 16       4.3e-04
  00004638 99        0.0027
  0000463c 8288      0.2247
  00004640 2585      0.0701
  00004644 5590      0.1515
  0000464a 14       3.8e-04
  00004650 77        0.0021
  00004652 3        8.1e-05
  00004657 4077      0.1105
  0000465d 41        0.0011
  00004663 10       2.7e-04
  00004667 19       5.2e-04
  0000466d 2        5.4e-05
  00004673 4        1.1e-04
  00004679 4035      0.1094
  0000467b 1        2.7e-05
  00004681 5        1.4e-04
  00004683 6        1.6e-04
  00004685 2        5.4e-05
  000046bb 1        2.7e-05
  000046c7 1        2.7e-05
  000046d4 4        1.1e-04
  000046f3 415       0.0112
  000046f5 825806   22.3856
  000046f7 43980     1.1922
  000046fb 256       0.0069
  000046fd 286       0.0078
  00004700 108       0.0029
  00004702 41        0.0011
  00004705 5        1.4e-04
  00004709 27774     0.7529
  0000470c 17       4.6e-04
  0000470e 9        2.4e-04
  00004714 19       5.2e-04
  00004716 605096   16.4027
  00004718 548       0.0149
  0000471a 24782     0.6718
  00004720 842       0.0228
  00004726 95423     2.5867
  0000472a 516       0.0140
  0000472d 510       0.0138
  0000472f 389       0.0105
  00004735 316       0.0086
  00004737 746069   20.2242
  00004739 62574     1.6962
  0000473f 565       0.0153
  00004741 941       0.0255
  00004743 91        0.0025
  00004745 8        2.2e-04
  00004747 3        8.1e-05
  00004749 34135     0.9253
  0000474b 477712   12.9496
  0000474d 561       0.0152
  0000474f 155       0.0042
  00004751 199265    5.4016
  00004753 684       0.0185
  00004755 137       0.0037
  00004757 119       0.0032
  0000475d 6527      0.1769
  00004763 217       0.0059
  00004769 120       0.0033
  0000476d 665       0.0180
  00004771 558       0.0151
  00004775 4148      0.1124
  00004777 6        1.6e-04
  0000477b 7        1.9e-04
  0000477e 5        1.4e-04
  00004781 14       3.8e-04
  00004787 60        0.0016
  00004789 4        1.1e-04
  0000478f 4        1.1e-04
  00004797 669       0.0181
  0000479b 4271      0.1158
  000047a1 17245     0.4675
  000047a4 3138      0.0851
  000047aa 716       0.0194
  000047ae 112       0.0030
  000047b0 508       0.0138
  000047b3 736       0.0200
  000047b6 53        0.0014
  000047b8 604       0.0164
  000047ba 47        0.0013
  000047bd 525       0.0142
  000047c3 6094      0.1652
  000047c6 4068      0.1103
  000047cc 35       9.5e-04
  000047cf 25       6.8e-04
  000047d0 10       2.7e-04
  000047d6 995       0.0270
  000047da 26       7.0e-04
  000047dd 120       0.0033
  000047df 50        0.0014
  000047ee 3        8.1e-05
  000047fa 1        2.7e-05
  00004817 4        1.1e-04
  0000481b 27       7.3e-04
  0000487f 539       0.0146
  00004885 30       8.1e-04
  0000488b 5        1.4e-04
  0000488e 3544      0.0961
  00004894 9        2.4e-04
  0000489a 33       8.9e-04
  000049ff 67        0.0018
  00004a02 28       7.6e-04
  00004a11 1        2.7e-05
  00004a13 4        1.1e-04
  00004a18 3        8.1e-05
  00004a1e 1        2.7e-05
  00004a25 168       0.0046
  00004a36 3        8.1e-05
  00004a47 11       3.0e-04
  00004a49 139       0.0038
  00004a51 8        2.2e-04
  00004a59 1        2.7e-05
  00004a61 5        1.4e-04
  00004a65 67        0.0018
  00004a6b 97        0.0026


and finally, here's the disasm of the threadworker function:


00004337 <pktgen_Thread_worker>:
4337: 55 push %ebp
4338: 57 push %edi
4339: 56 push %esi
433a: 53 push %ebx
433b: bb 00 e0 ff ff mov $0xffffe000,%ebx
4340: 21 e3 and %esp,%ebx
4342: 83 ec 2c sub $0x2c,%esp
4345: 89 44 24 28 mov %eax,0x28(%esp)
4349: 8b b0 bc 02 00 00 mov 0x2bc(%eax),%esi
434f: c7 44 24 20 00 00 00 movl $0x0,0x20(%esp)
4356: 00 4357: c7 04 24 c2 06 00 00 movl $0x6c2,(%esp)
435e: 89 74 24 04 mov %esi,0x4(%esp)
4362: e8 fc ff ff ff call 4363 <pktgen_thread_worker+0x2c>
4367: 8b 03 mov (%ebx),%eax
4369: 8b 80 90 04 00 00 mov 0x490(%eax),%eax
436f: 05 04 05 00 00 add $0x504,%eax
4374: e8 fc ff ff ff call 4375 <pktgen_thread_worker+0x3e>
4379: 8b 03 mov (%ebx),%eax
437b: c7 80 94 04 00 00 ff movl $0xfffbbeff,0x494(%eax)
4382: be fb ff 4385: c7 80 98 04 00 00 ff movl $0xffffffff,0x498(%eax)
438c: ff ff ff 438f: e8 fc ff ff ff call 4390 <pktgen_thread_worker+0x59>
4394: 8b 03 mov (%ebx),%eax
4396: 8b 80 90 04 00 00 mov 0x490(%eax),%eax
439c: 05 04 05 00 00 add $0x504,%eax
43a1: e8 fc ff ff ff call 43a2 <pktgen_thread_worker+0x6b>
43a6: 89 f1 mov %esi,%ecx
43a8: ba 01 00 00 00 mov $0x1,%edx
43ad: d3 e2 shl %cl,%edx
43af: 8b 03 mov (%ebx),%eax
43b1: e8 fc ff ff ff call 43b2 <pktgen_thread_worker+0x7b>
43b6: 39 73 10 cmp %esi,0x10(%ebx)
43b9: 74 08 je 43c3 <pktgen_thread_worker+0x8c>
43bb: 0f 0b ud2a 43bd: 27 daa 43be: 0b b0 06 00 00 8b or 0x8b000006(%eax),%esi
43c4: 44 inc %esp
43c5: 24 28 and $0x28,%al
43c7: 8b 54 24 28 mov 0x28(%esp),%edx
43cb: 05 c0 02 00 00 add $0x2c0,%eax
43d0: 89 44 24 1c mov %eax,0x1c(%esp)
43d4: c7 82 c0 02 00 00 01 movl $0x1,0x2c0(%edx)
43db: 00 00 00 43de: 89 d0 mov %edx,%eax
43e0: 8b 4c 24 1c mov 0x1c(%esp),%ecx
43e4: 05 c4 02 00 00 add $0x2c4,%eax
43e9: 89 41 04 mov %eax,0x4(%ecx)
43ec: 89 41 08 mov %eax,0x8(%ecx)
43ef: 83 a2 b4 02 00 00 f0 andl $0xfffffff0,0x2b4(%edx)
43f6: 8b 03 mov (%ebx),%eax
43f8: 8b 80 a8 00 00 00 mov 0xa8(%eax),%eax
43fe: 89 82 b8 02 00 00 mov %eax,0x2b8(%edx)
4404: 8b 03 mov (%ebx),%eax
4406: 8b 80 a8 00 00 00 mov 0xa8(%eax),%eax
440c: 89 74 24 04 mov %esi,0x4(%esp)
4410: c7 04 24 a0 06 00 00 movl $0x6a0,(%esp)
4417: 89 44 24 08 mov %eax,0x8(%esp)
441b: e8 fc ff ff ff call 441c <pktgen_thread_worker+0xe5>
4420: 8b 44 24 28 mov 0x28(%esp),%eax
4424: 8b 80 b0 02 00 00 mov 0x2b0(%eax),%eax
442a: 89 44 24 24 mov %eax,0x24(%esp)
442e: 8b 03 mov (%ebx),%eax
4430: c7 00 01 00 00 00 movl $0x1,(%eax)
4436: f0 83 44 24 00 00 lock addl $0x0,0x0(%esp)
443c: 89 5c 24 18 mov %ebx,0x18(%esp)
4440: 8b 54 24 18 mov 0x18(%esp),%edx
4444: 8b 02 mov (%edx),%eax
4446: c7 00 00 00 00 00 movl $0x0,(%eax)
444c: 8b 44 24 28 mov 0x28(%esp),%eax
4450: e8 7c fd ff ff call 41d1 <next_to_run>
4455: 85 c0 test %eax,%eax
4457: 89 c6 mov %eax,%esi
4459: 0f 84 aa 03 00 00 je 4809 <pktgen_thread_worker+0x4d2>
445f: 8b 88 44 04 00 00 mov 0x444(%eax),%ecx
4465: 89 4c 24 14 mov %ecx,0x14(%esp)
4469: 8b b8 90 02 00 00 mov 0x290(%eax),%edi
446f: 85 ff test %edi,%edi
4471: 74 7d je 44f0 <pktgen_thread_worker+0x1b9>
4473: 0f 31 rdtsc 4475: 89 44 24 0c mov %eax,0xc(%esp)
4479: 89 54 24 10 mov %edx,0x10(%esp)
447d: 85 d2 test %edx,%edx
447f: 8b 1d 1c 00 00 00 mov 0x1c,%ebx
4485: 89 d1 mov %edx,%ecx
4487: 89 c5 mov %eax,%ebp
4489: 74 08 je 4493 <pktgen_thread_worker+0x15c>
448b: 89 d0 mov %edx,%eax
448d: 31 d2 xor %edx,%edx
448f: f7 f3 div %ebx
4491: 89 c1 mov %eax,%ecx
4493: 89 e8 mov %ebp,%eax
4495: f7 f3 div %ebx
4497: 89 ca mov %ecx,%edx
4499: 89 d3 mov %edx,%ebx
449b: 8b 96 b8 02 00 00 mov 0x2b8(%esi),%edx
44a1: 39 d3 cmp %edx,%ebx
44a3: 89 c1 mov %eax,%ecx
44a5: 8b 86 b4 02 00 00 mov 0x2b4(%esi),%eax
44ab: 77 37 ja 44e4 <pktgen_thread_worker+0x1ad>
44ad: 72 04 jb 44b3 <pktgen_thread_worker+0x17c>
44af: 39 c1 cmp %eax,%ecx
44b1: 73 31 jae 44e4 <pktgen_thread_worker+0x1ad>
44b3: 8b be b4 02 00 00 mov 0x2b4(%esi),%edi
44b9: 29 cf sub %ecx,%edi
44bb: 81 ff 0f 27 00 00 cmp $0x270f,%edi
44c1: 0f 86 ee 04 00 00 jbe 49b5 <pktgen_thread_worker+0x67e>
44c7: b9 d3 4d 62 10 mov $0x10624dd3,%ecx
44cc: 89 f8 mov %edi,%eax
44ce: f7 e1 mul %ecx
44d0: 89 d1 mov %edx,%ecx
44d2: 89 f2 mov %esi,%edx
44d4: c1 e9 06 shr $0x6,%ecx
44d7: 89 c8 mov %ecx,%eax
44d9: e8 10 e4 ff ff call 28ee <pg_udelay>
44de: 8b be 90 02 00 00 mov 0x290(%esi),%edi
44e4: 81 ff ff ff ff 7f cmp $0x7fffffff,%edi
44ea: 0f 84 d5 04 00 00 je 49c5 <pktgen_thread_worker+0x68e>
44f0: 8b 54 24 14 mov 0x14(%esp),%edx
44f4: 8b 42 24 mov 0x24(%edx),%eax
44f7: a8 01 test $0x1,%al
44f9: 0f 85 f4 01 00 00 jne 46f3 <pktgen_thread_worker+0x3bc>
44ff: 8b 4c 24 18 mov 0x18(%esp),%ecx
4503: 8b 41 08 mov 0x8(%ecx),%eax
4506: a8 08 test $0x8,%al
4508: 0f 85 e5 01 00 00 jne 46f3 <pktgen_thread_worker+0x3bc>
450e: 8b 86 c8 02 00 00 mov 0x2c8(%esi),%eax
4514: 85 c0 test %eax,%eax
4516: 0f 85 63 03 00 00 jne 487f <pktgen_thread_worker+0x548>
451c: 8b 96 40 04 00 00 mov 0x440(%esi),%edx
4522: 85 d2 test %edx,%edx
4524: 75 5d jne 4583 <pktgen_thread_worker+0x24c>
4526: 8b 86 c4 02 00 00 mov 0x2c4(%esi),%eax
452c: 83 c0 01 add $0x1,%eax
452f: 3b 86 e8 02 00 00 cmp 0x2e8(%esi),%eax
4535: 89 86 c4 02 00 00 mov %eax,0x2c4(%esi)
453b: 0f 83 5f 03 00 00 jae 48a0 <pktgen_thread_worker+0x569>
4541: 85 d2 test %edx,%edx
4543: 75 3e jne 4583 <pktgen_thread_worker+0x24c>
4545: f6 86 81 02 00 00 02 testb $0x2,0x281(%esi)
454c: 0f 84 87 03 00 00 je 48d9 <pktgen_thread_worker+0x5a2>
4552: 89 f2 mov %esi,%edx
4554: 8b 44 24 14 mov 0x14(%esp),%eax
4558: e8 fc f1 ff ff call 3759 <fill_packet_ipv6>
455d: 85 c0 test %eax,%eax
455f: 89 86 40 04 00 00 mov %eax,0x440(%esi)
4565: 0f 84 87 03 00 00 je 48f2 <pktgen_thread_worker+0x5bb>
456b: 83 86 bc 02 00 00 01 addl $0x1,0x2bc(%esi)
4572: c7 86 c4 02 00 00 00 movl $0x0,0x2c4(%esi)
4579: 00 00 00 457c: 83 96 c0 02 00 00 00 adcl $0x0,0x2c0(%esi)
4583: 8b 7c 24 14 mov 0x14(%esp),%edi
4587: 81 c7 2c 01 00 00 add $0x12c,%edi
458d: 89 f8 mov %edi,%eax
458f: e8 fc ff ff ff call 4590 <pktgen_thread_worker+0x259>
4594: 8b 54 24 14 mov 0x14(%esp),%edx
4598: 8b 42 24 mov 0x24(%edx),%eax
459b: a8 01 test $0x1,%al
459d: 0f 85 6c 03 00 00 jne 490f <pktgen_thread_worker+0x5d8>
45a3: 8b 86 40 04 00 00 mov 0x440(%esi),%eax
45a9: f0 ff 80 94 00 00 00 lock incl 0x94(%eax)
45b0: 8b 86 40 04 00 00 mov 0x440(%esi),%eax
45b6: 8b 54 24 14 mov 0x14(%esp),%edx
45ba: ff 92 6c 01 00 00 call *0x16c(%edx)
45c0: 85 c0 test %eax,%eax
45c2: 0f 85 37 04 00 00 jne 49ff <pktgen_thread_worker+0x6c8>
45c8: 83 86 9c 02 00 00 01 addl $0x1,0x29c(%esi)
45cf: 8b 86 2c 04 00 00 mov 0x42c(%esi),%eax
45d5: c7 86 c8 02 00 00 01 movl $0x1,0x2c8(%esi)
45dc: 00 00 00 45df: 83 96 a0 02 00 00 00 adcl $0x0,0x2a0(%esi)
45e6: 83 c0 04 add $0x4,%eax
45e9: 31 d2 xor %edx,%edx
45eb: 83 86 e4 02 00 00 01 addl $0x1,0x2e4(%esi)
45f2: 01 86 a4 02 00 00 add %eax,0x2a4(%esi)
45f8: 11 96 a8 02 00 00 adc %edx,0x2a8(%esi)
45fe: 0f 31 rdtsc 4600: 89 44 24 0c mov %eax,0xc(%esp)
4604: 89 54 24 10 mov %edx,0x10(%esp)
4608: 85 d2 test %edx,%edx
460a: 8b 1d 1c 00 00 00 mov 0x1c,%ebx
4610: 89 d1 mov %edx,%ecx
4612: 89 c5 mov %eax,%ebp
4614: 74 08 je 461e <pktgen_thread_worker+0x2e7>
4616: 89 d0 mov %edx,%eax
4618: 31 d2 xor %edx,%edx
461a: f7 f3 div %ebx
461c: 89 c1 mov %eax,%ecx
461e: 89 e8 mov %ebp,%eax
4620: f7 f3 div %ebx
4622: 89 ca mov %ecx,%edx
4624: 89 54 24 10 mov %edx,0x10(%esp)
4628: 89 44 24 0c mov %eax,0xc(%esp)
462c: 8b 8e 90 02 00 00 mov 0x290(%esi),%ecx
4632: 31 db xor %ebx,%ebx
4634: 01 4c 24 0c add %ecx,0xc(%esp)
4638: 11 5c 24 10 adc %ebx,0x10(%esp)
463c: 8b 54 24 0c mov 0xc(%esp),%edx
4640: 8b 4c 24 10 mov 0x10(%esp),%ecx
4644: 89 96 b4 02 00 00 mov %edx,0x2b4(%esi)
464a: 89 8e b8 02 00 00 mov %ecx,0x2b8(%esi)
4650: 89 f8 mov %edi,%eax
4652: e8 fc ff ff ff call 4653 <pktgen_thread_worker+0x31c>
4657: 8b 96 98 02 00 00 mov 0x298(%esi),%edx
465d: 8b 86 94 02 00 00 mov 0x294(%esi),%eax
4663: 89 d1 mov %edx,%ecx
4665: 09 c1 or %eax,%ecx
4667: 0f 84 f6 00 00 00 je 4763 <pktgen_thread_worker+0x42c>
466d: 8b 9e a0 02 00 00 mov 0x2a0(%esi),%ebx
4673: 8b 8e 9c 02 00 00 mov 0x29c(%esi),%ecx
4679: 39 d3 cmp %edx,%ebx
467b: 0f 82 e2 00 00 00 jb 4763 <pktgen_thread_worker+0x42c>
4681: 77 08 ja 468b <pktgen_thread_worker+0x354>
4683: 39 c1 cmp %eax,%ecx
4685: 0f 82 d8 00 00 00 jb 4763 <pktgen_thread_worker+0x42c>
468b: 8b 8e 40 04 00 00 mov 0x440(%esi),%ecx
4691: 8b 81 94 00 00 00 mov 0x94(%ecx),%eax
4697: 83 f8 01 cmp $0x1,%eax
469a: 74 4e je 46ea <pktgen_thread_worker+0x3b3>
469c: 0f 31 rdtsc 469e: 89 c7 mov %eax,%edi
46a0: 8b 81 94 00 00 00 mov 0x94(%ecx),%eax
46a6: 83 f8 01 cmp $0x1,%eax
46a9: 89 d5 mov %edx,%ebp
46ab: 74 2b je 46d8 <pktgen_thread_worker+0x3a1>
46ad: bb 00 e0 ff ff mov $0xffffe000,%ebx
46b2: 21 e3 and %esp,%ebx
46b4: eb 16 jmp 46cc <pktgen_thread_worker+0x395>
46b6: e8 fc ff ff ff call 46b7 <pktgen_thread_worker+0x380>
46bb: 8b 86 40 04 00 00 mov 0x440(%esi),%eax
46c1: 8b 80 94 00 00 00 mov 0x94(%eax),%eax
46c7: 83 f8 01 cmp $0x1,%eax
46ca: 74 0c je 46d8 <pktgen_thread_worker+0x3a1>
46cc: 8b 03 mov (%ebx),%eax
46ce: 8b 40 04 mov 0x4(%eax),%eax
46d1: 8b 40 08 mov 0x8(%eax),%eax
46d4: a8 04 test $0x4,%al
46d6: 74 de je 46b6 <pktgen_thread_worker+0x37f>
46d8: 0f 31 rdtsc 46da: 29 f8 sub %edi,%eax
46dc: 19 ea sbb %ebp,%edx
46de: 01 86 dc 02 00 00 add %eax,0x2dc(%esi)
46e4: 11 96 e0 02 00 00 adc %edx,0x2e0(%esi)
46ea: 89 f0 mov %esi,%eax
46ec: e8 2f fa ff ff call 4120 <pktgen_stop_device>
46f1: eb 70 jmp 4763 <pktgen_thread_worker+0x42c>
46f3: 0f 31 rdtsc 46f5: 89 d5 mov %edx,%ebp
46f7: 8b 54 24 14 mov 0x14(%esp),%edx
46fb: 89 c7 mov %eax,%edi
46fd: 8b 42 24 mov 0x24(%edx),%eax
4700: a8 02 test $0x2,%al
4702: 2e 74 e5 je,pn 46ea <pktgen_thread_worker+0x3b3>
4705: 8b 4c 24 18 mov 0x18(%esp),%ecx
4709: 8b 41 08 mov 0x8(%ecx),%eax
470c: a8 08 test $0x8,%al
470e: 0f 85 e1 02 00 00 jne 49f5 <pktgen_thread_worker+0x6be>
4714: 0f 31 rdtsc 4716: 29 f8 sub %edi,%eax
4718: 19 ea sbb %ebp,%edx
471a: 01 86 dc 02 00 00 add %eax,0x2dc(%esi)
4720: 11 96 e0 02 00 00 adc %edx,0x2e0(%esi)
4726: 8b 54 24 14 mov 0x14(%esp),%edx
472a: 8b 42 24 mov 0x24(%edx),%eax
472d: a8 01 test $0x1,%al
472f: 0f 84 d9 fd ff ff je 450e <pktgen_thread_worker+0x1d7>
4735: 0f 31 rdtsc 4737: 85 d2 test %edx,%edx
4739: 8b 1d 1c 00 00 00 mov 0x1c,%ebx
473f: 89 d1 mov %edx,%ecx
4741: 89 c7 mov %eax,%edi
4743: 74 08 je 474d <pktgen_thread_worker+0x416>
4745: 89 d0 mov %edx,%eax
4747: 31 d2 xor %edx,%edx
4749: f7 f3 div %ebx
474b: 89 c1 mov %eax,%ecx
474d: 89 f8 mov %edi,%eax
474f: f7 f3 div %ebx
4751: 89 ca mov %ecx,%edx
4753: 89 c1 mov %eax,%ecx
4755: 89 d3 mov %edx,%ebx
4757: 89 8e b4 02 00 00 mov %ecx,0x2b4(%esi)
475d: 89 9e b8 02 00 00 mov %ebx,0x2b8(%esi)
4763: 8b 96 c8 02 00 00 mov 0x2c8(%esi),%edx
4769: 8b 4c 24 24 mov 0x24(%esp),%ecx
476d: 01 54 24 20 add %edx,0x20(%esp)
4771: 39 4c 24 20 cmp %ecx,0x20(%esp)
4775: 76 20 jbe 4797 <pktgen_thread_worker+0x460>
4777: 8b 54 24 18 mov 0x18(%esp),%edx
477b: 8b 42 10 mov 0x10(%edx),%eax
477e: c1 e0 07 shl $0x7,%eax
4781: 8b b8 00 00 00 00 mov 0x0(%eax),%edi
4787: 85 ff test %edi,%edi
4789: 0f 85 1c 02 00 00 jne 49ab <pktgen_thread_worker+0x674>
478f: c7 44 24 20 00 00 00 movl $0x0,0x20(%esp)
4796: 00 4797: 8b 4c 24 28 mov 0x28(%esp),%ecx
479b: 8b 91 b4 02 00 00 mov 0x2b4(%ecx),%edx
47a1: f6 c2 01 test $0x1,%dl
47a4: 0f 85 7c 00 00 00 jne 4826 <pktgen_thread_worker+0x4ef>
47aa: 8b 4c 24 18 mov 0x18(%esp),%ecx
47ae: 8b 01 mov (%ecx),%eax
47b0: 8b 40 04 mov 0x4(%eax),%eax
47b3: 8b 40 08 mov 0x8(%eax),%eax
47b6: a8 04 test $0x4,%al
47b8: 75 6c jne 4826 <pktgen_thread_worker+0x4ef>
47ba: f6 c2 02 test $0x2,%dl
47bd: 0f 85 c7 01 00 00 jne 498a <pktgen_thread_worker+0x653>
47c3: f6 c2 04 test $0x4,%dl
47c6: 0f 85 9d 01 00 00 jne 4969 <pktgen_thread_worker+0x632>
47cc: 80 e2 08 and $0x8,%dl
47cf: 90 nop 47d0: 0f 85 7a 01 00 00 jne 4950 <pktgen_thread_worker+0x619>
47d6: 8b 54 24 18 mov 0x18(%esp),%edx
47da: 8b 42 08 mov 0x8(%edx),%eax
47dd: a8 08 test $0x8,%al
47df: 0f 84 5b fc ff ff je 4440 <pktgen_thread_worker+0x109>
47e5: e8 fc ff ff ff call 47e6 <pktgen_thread_worker+0x4af>
47ea: 8b 54 24 18 mov 0x18(%esp),%edx
47ee: 8b 02 mov (%edx),%eax
47f0: c7 00 00 00 00 00 movl $0x0,(%eax)
47f6: 8b 44 24 28 mov 0x28(%esp),%eax
47fa: e8 d2 f9 ff ff call 41d1 <next_to_run>
47ff: 85 c0 test %eax,%eax
4801: 89 c6 mov %eax,%esi
4803: 0f 85 56 fc ff ff jne 445f <pktgen_thread_worker+0x128>
4809: ba 64 00 00 00 mov $0x64,%edx
480e: 8b 44 24 1c mov 0x1c(%esp),%eax
4812: e8 fc ff ff ff call 4813 <pktgen_thread_worker+0x4dc>
4817: 8b 4c 24 28 mov 0x28(%esp),%ecx
481b: 8b 91 b4 02 00 00 mov 0x2b4(%ecx),%edx
4821: f6 c2 01 test $0x1,%dl
4824: 74 84 je 47aa <pktgen_thread_worker+0x473>
4826: 8b 5c 24 28 mov 0x28(%esp),%ebx
482a: c7 04 24 c8 06 00 00 movl $0x6c8,(%esp)
4831: 83 c3 0c add $0xc,%ebx
4834: 89 5c 24 04 mov %ebx,0x4(%esp)
4838: e8 fc ff ff ff call 4839 <pktgen_thread_worker+0x502>
483d: 8b 44 24 28 mov 0x28(%esp),%eax
4841: e8 f6 f9 ff ff call 423c <pktgen_stop>
4846: 89 5c 24 04 mov %ebx,0x4(%esp)
484a: c7 04 24 e8 06 00 00 movl $0x6e8,(%esp)
4851: e8 fc ff ff ff call 4852 <pktgen_thread_worker+0x51b>
4856: 8b 44 24 28 mov 0x28(%esp),%eax
485a: e8 1b fa ff ff call 427a <pktgen_rem_all_ifs>
485f: 89 5c 24 04 mov %ebx,0x4(%esp)
4863: c7 04 24 cc 06 00 00 movl $0x6cc,(%esp)
486a: e8 fc ff ff ff call 486b <pktgen_thread_worker+0x534>
486f: 8b 44 24 28 mov 0x28(%esp),%eax
4873: 83 c4 2c add $0x2c,%esp
4876: 5b pop %ebx
4877: 5e pop %esi
4878: 5f pop %edi
4879: 5d pop %ebp
487a: e9 27 fa ff ff jmp 42a6 <pktgen_rem_thread>
487f: 8b 96 40 04 00 00 mov 0x440(%esi),%edx
4885: 8b 86 c4 02 00 00 mov 0x2c4(%esi),%eax
488b: 83 c0 01 add $0x1,%eax
488e: 3b 86 e8 02 00 00 cmp 0x2e8(%esi),%eax
4894: 89 86 c4 02 00 00 mov %eax,0x2c4(%esi)
489a: 0f 82 a1 fc ff ff jb 4541 <pktgen_thread_worker+0x20a>
48a0: 85 d2 test %edx,%edx
48a2: 0f 84 9d fc ff ff je 4545 <pktgen_thread_worker+0x20e>
48a8: 8b 82 94 00 00 00 mov 0x94(%edx),%eax
48ae: 83 f8 01 cmp $0x1,%eax
48b1: 74 12 je 48c5 <pktgen_thread_worker+0x58e>
48b3: f0 ff 8a 94 00 00 00 lock decl 0x94(%edx)
48ba: 0f 94 c0 sete %al
48bd: 84 c0 test %al,%al
48bf: 0f 84 80 fc ff ff je 4545 <pktgen_thread_worker+0x20e>
48c5: 89 d0 mov %edx,%eax
48c7: e8 fc ff ff ff call 48c8 <pktgen_thread_worker+0x591>
48cc: f6 86 81 02 00 00 02 testb $0x2,0x281(%esi)
48d3: 0f 85 79 fc ff ff jne 4552 <pktgen_thread_worker+0x21b>
48d9: 89 f2 mov %esi,%edx
48db: 8b 44 24 14 mov 0x14(%esp),%eax
48df: e8 22 e7 ff ff call 3006 <fill_packet_ipv4>
48e4: 85 c0 test %eax,%eax
48e6: 89 86 40 04 00 00 mov %eax,0x440(%esi)
48ec: 0f 85 79 fc ff ff jne 456b <pktgen_thread_worker+0x234>
48f2: c7 04 24 08 07 00 00 movl $0x708,(%esp)
48f9: e8 fc ff ff ff call 48fa <pktgen_thread_worker+0x5c3>
48fe: e8 fc ff ff ff call 48ff <pktgen_thread_worker+0x5c8>
4903: 83 ae c4 02 00 00 01 subl $0x1,0x2c4(%esi)
490a: e9 54 fe ff ff jmp 4763 <pktgen_thread_worker+0x42c>
490f: c7 86 c8 02 00 00 00 movl $0x0,0x2c8(%esi)
4916: 00 00 00 4919: 0f 31 rdtsc 491b: 89 44 24 0c mov %eax,0xc(%esp)
491f: 89 54 24 10 mov %edx,0x10(%esp)
4923: 85 d2 test %edx,%edx
4925: 8b 1d 1c 00 00 00 mov 0x1c,%ebx
492b: 89 d1 mov %edx,%ecx
492d: 89 c5 mov %eax,%ebp
492f: 74 08 je 4939 <pktgen_thread_worker+0x602>
4931: 89 d0 mov %edx,%eax
4933: 31 d2 xor %edx,%edx
4935: f7 f3 div %ebx
4937: 89 c1 mov %eax,%ecx
4939: 89 e8 mov %ebp,%eax
493b: f7 f3 div %ebx
493d: 89 ca mov %ecx,%edx
493f: 89 86 b4 02 00 00 mov %eax,0x2b4(%esi)
4945: 89 96 b8 02 00 00 mov %edx,0x2b8(%esi)
494b: e9 00 fd ff ff jmp 4650 <pktgen_thread_worker+0x319>
4950: 8b 44 24 28 mov 0x28(%esp),%eax
4954: e8 21 f9 ff ff call 427a <pktgen_rem_all_ifs>
4959: 8b 44 24 28 mov 0x28(%esp),%eax
495d: 83 a0 b4 02 00 00 f7 andl $0xfffffff7,0x2b4(%eax)
4964: e9 6d fe ff ff jmp 47d6 <pktgen_thread_worker+0x49f>
4969: 8b 44 24 28 mov 0x28(%esp),%eax
496d: e8 d7 f2 ff ff call 3c49 <pktgen_run>
4972: 8b 4c 24 28 mov 0x28(%esp),%ecx
4976: 8b 91 b4 02 00 00 mov 0x2b4(%ecx),%edx
497c: 83 e2 fb and $0xfffffffb,%edx
497f: 89 91 b4 02 00 00 mov %edx,0x2b4(%ecx)
4985: e9 42 fe ff ff jmp 47cc <pktgen_thread_worker+0x495>
498a: 8b 44 24 28 mov 0x28(%esp),%eax
498e: e8 a9 f8 ff ff call 423c <pktgen_stop>
4993: 8b 44 24 28 mov 0x28(%esp),%eax
4997: 8b 90 b4 02 00 00 mov 0x2b4(%eax),%edx
499d: 83 e2 fd and $0xfffffffd,%edx
49a0: 89 90 b4 02 00 00 mov %edx,0x2b4(%eax)
49a6: e9 18 fe ff ff jmp 47c3 <pktgen_thread_worker+0x48c>
49ab: e8 fc ff ff ff call 49ac <pktgen_thread_worker+0x675>
49b0: e9 da fd ff ff jmp 478f <pktgen_thread_worker+0x458>
49b5: 89 f2 mov %esi,%edx
49b7: 89 f8 mov %edi,%eax
49b9: e8 cc de ff ff call 288a <nanospin>
49be: 89 f6 mov %esi,%esi
49c0: e9 19 fb ff ff jmp 44de <pktgen_thread_worker+0x1a7>
49c5: 0f 31 rdtsc 49c7: 85 d2 test %edx,%edx
49c9: 8b 1d 1c 00 00 00 mov 0x1c,%ebx
49cf: 89 d1 mov %edx,%ecx
49d1: 89 c7 mov %eax,%edi
49d3: 74 08 je 49dd <pktgen_thread_worker+0x6a6>
49d5: 89 d0 mov %edx,%eax
49d7: 31 d2 xor %edx,%edx
49d9: f7 f3 div %ebx
49db: 89 c1 mov %eax,%ecx
49dd: 89 f8 mov %edi,%eax
49df: f7 f3 div %ebx
49e1: 89 ca mov %ecx,%edx
49e3: 89 c1 mov %eax,%ecx
49e5: 89 d3 mov %edx,%ebx
49e7: 81 c1 ff ff ff 7f add $0x7fffffff,%ecx
49ed: 83 d3 00 adc $0x0,%ebx
49f0: e9 62 fd ff ff jmp 4757 <pktgen_thread_worker+0x420>
49f5: e8 fc ff ff ff call 49f6 <pktgen_thread_worker+0x6bf>
49fa: e9 15 fd ff ff jmp 4714 <pktgen_thread_worker+0x3dd>
49ff: 83 f8 ff cmp $0xffffffff,%eax
4a02: 75 14 jne 4a18 <pktgen_thread_worker+0x6e1>
4a04: 8b 4c 24 14 mov 0x14(%esp),%ecx
4a08: f6 81 59 01 00 00 10 testb $0x10,0x159(%ecx)
4a0f: 74 07 je 4a18 <pktgen_thread_worker+0x6e1>
4a11: f3 90 pause 4a13: e9 98 fb ff ff jmp 45b0 <pktgen_thread_worker+0x279>
4a18: 8b 86 40 04 00 00 mov 0x440(%esi),%eax
4a1e: f0 ff 88 94 00 00 00 lock decl 0x94(%eax)
4a25: 8b 2d 08 00 00 00 mov 0x8,%ebp
4a2b: 85 ed test %ebp,%ebp
4a2d: 75 4f jne 4a7e <pktgen_thread_worker+0x747>
4a2f: 83 86 ac 02 00 00 01 addl $0x1,0x2ac(%esi)
4a36: c7 86 c8 02 00 00 00 movl $0x0,0x2c8(%esi)
4a3d: 00 00 00 4a40: 83 96 b0 02 00 00 00 adcl $0x0,0x2b0(%esi)
4a47: 0f 31 rdtsc 4a49: 89 44 24 0c mov %eax,0xc(%esp)
4a4d: 89 54 24 10 mov %edx,0x10(%esp)
4a51: 85 d2 test %edx,%edx
4a53: 8b 1d 1c 00 00 00 mov 0x1c,%ebx
4a59: 89 d1 mov %edx,%ecx
4a5b: 89 c5 mov %eax,%ebp
4a5d: 74 08 je 4a67 <pktgen_thread_worker+0x730>
4a5f: 89 d0 mov %edx,%eax
4a61: 31 d2 xor %edx,%edx
4a63: f7 f3 div %ebx
4a65: 89 c1 mov %eax,%ecx
4a67: 89 e8 mov %ebp,%eax
4a69: f7 f3 div %ebx
4a6b: 89 ca mov %ecx,%edx
4a6d: 89 86 b4 02 00 00 mov %eax,0x2b4(%esi)
4a73: 89 96 b8 02 00 00 mov %edx,0x2b8(%esi)
4a79: e9 80 fb ff ff jmp 45fe <pktgen_thread_worker+0x2c7>
4a7e: e8 fc ff ff ff call 4a7f <pktgen_thread_worker+0x748>
4a83: 85 c0 test %eax,%eax
4a85: 74 a8 je 4a2f <pktgen_thread_worker+0x6f8>
4a87: c7 04 24 e9 06 00 00 movl $0x6e9,(%esp)
4a8e: e8 fc ff ff ff call 4a8f <pktgen_thread_worker+0x758>
4a93: eb 9a jmp 4a2f <pktgen_thread_worker+0x6f8>



-- Pádraig Brady - http://www.pixelbeat.org --

<Prev in Thread] Current Thread [Next in Thread>