git: netisr: Add netisr barrier which stalls all netisrs

看板DFBSD_commit作者時間15年前 (2011/01/31 10:01), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串1/1
commit a91f9815c9eb424a4960bbd52fbbd85b7d27a510 Author: Sepherosa Ziehau <sephe@dragonflybsd.org> Date: Thu Dec 23 13:12:39 2010 +0800 netisr: Add netisr barrier which stalls all netisrs netisr_barrier_set() Set a netisr barrier, which stalls all netisr. Currently it must be called from netisr0. netisr_barrier_rem() Remove the netisr barrier, which unstalls all netisr. Currently it must be called from netisr0. These interfaces could be used to work out a lockless pcb lookup or iteration (on network hotpath e.g. input/output) at the cost of relatively expensive pcb adding and removing (e.g. connect(2)). Summary of changes: sys/net/netisr.c | 112 ++++++++++++++++++++++++++++++++++++++++++++++++++++++ sys/net/netisr.h | 4 ++ 2 files changed, 116 insertions(+), 0 deletions(-) http://gitweb.dragonflybsd.org/dragonfly.git/commitdiff/a91f9815c9eb424a4960bbd52fbbd85b7d27a510 -- DragonFly BSD source repository
文章代碼(AID): #1DHXVZ_G (DFBSD_commit)