Some netgraph node global locking patches

Gleb Smirnoff glebius at freebsd.org
Wed Jul 14 06:01:23 PDT 2004


On Wed, Jul 14, 2004 at 12:30:40AM -0400, Robert Watson wrote:
R>   //depot/vendor/freebsd/src/sys/netgraph/ng_eiface.c
R>   //depot/vendor/freebsd/src/sys/netgraph/ng_fec.c
R>   //depot/vendor/freebsd/src/sys/netgraph/ng_iface.c

Well, these three are quite straightforward and identical. Look fine.

R>   //depot/vendor/freebsd/src/sys/netgraph/ng_ppp.c

Is there any hidden obstacles for merging qsort_r() from libc to libkern?
It will help to remove this ugly hack.

R>   //depot/vendor/freebsd/src/sys/netgraph/ng_pppoe.c

Agreed with comment. Anyway, I'm planning to move this configuration
trigger to private data. sysctl's are not very elegant way to set
configaration of netgraph node. Moreover, I can imagine setup when you
need to serve non-standard PPPoE only on one interface, and normal PPPoE
on other interfaces: for example two different networks merged to use
one AC.

R>   //depot/vendor/freebsd/src/sys/netgraph/ng_tty.c
R> +/*
R> + * XXXRW: ngt_unit is protected by ng_tty_mtx.  ngt_ldisc is constant once
R> + * ng_tty is initialized.  ngt_nodeop_ok is untouched, and might want to be a
R> + * sleep lock in the future?
R> + */

One question: are any locks held when linesw callbacks (ngt_open, ngt_close,
etc..) are called?

-- 
Totus tuus, Glebius.
GLEBIUS-RIPN GLEB-RIPE


More information about the freebsd-current mailing list