summaryrefslogtreecommitdiff
path: root/lib/ofpbuf.c
diff options
context:
space:
mode:
authorJoe Stringer <joestringer@nicira.com>2013-12-13 17:24:10 -0800
committerEthan Jackson <ethan@nicira.com>2013-12-14 14:16:54 -0800
commit881d47a9fa901e71953a34367e9cd9b1f0571808 (patch)
tree4cff01020bf5ed2dc5e0338af58628265d0343c7 /lib/ofpbuf.c
parent14ee471cb95f2b2e97be9826643e83805a6102cb (diff)
downloadopenvswitch-881d47a9fa901e71953a34367e9cd9b1f0571808.tar.gz
monitor: Replace monitor_seq with periodic wakeup
Currently, every time a monitoring port is added or reconfigured, the main thread notifies the monitoring thread to wake up immediately using monitor_seq. When adding a large number of ports at once, this causes contention as the threads fight over access to the monitor heap---one thread adding new ports, the other popping and processing the new ports. This patch removes this mechanism in favour of a simple periodic wakeup in the monitor thread. When configuring batches of 500 tunnels at once, up to a total of 5000 tunnels, this reduces configuration time by up to 35%. New port monitor port configuration may not take effect for as long as ~100ms, although it may be less if the timer has not recently timed out, or if a monitoring port is due to send a packet. Signed-off-by: Joe Stringer <joestringer@nicira.com> Signed-off-by: Ethan Jackson <ethan@nicira.com> Acked-by: Ethan Jackson <ethan@nicira.com>
Diffstat (limited to 'lib/ofpbuf.c')
0 files changed, 0 insertions, 0 deletions