diff options
Diffstat (limited to 'sys/netgraph/NOTES')
-rw-r--r-- | sys/netgraph/NOTES | 26 |
1 files changed, 24 insertions, 2 deletions
diff --git a/sys/netgraph/NOTES b/sys/netgraph/NOTES index 69d8b71..0ddc02f 100644 --- a/sys/netgraph/NOTES +++ b/sys/netgraph/NOTES @@ -13,6 +13,8 @@ Archie's suggestions... :-) - They allow conditional compilation which keeps statistics & counters on various memory allocation (or so it seems) + - Now tend to have NG_FREE_XX() macros. they + allow better debugging - In struct ng_mesg: at least make "header" into "hdr", if not getting rid of it altogether. It doesn't seem necessary and @@ -34,9 +36,12 @@ Archie's suggestions... :-) #define NG_MSG_HDR_SIZE (sizeof(struct ng_message) - 1) #endif + - inertia rules :-b + + - Have a user level program to print out and manipulate nodes, etc. - [DONE] - see ngctl + see ngctl, nghook - "Netgraph global" flags to turn on tracing, etc. @@ -57,6 +62,8 @@ Archie's suggestions... :-) colon character at the end of the name. Note ngctl allows you to do it either way! [DONE] (I think) + - bind on a control socket has been disabled + it was a bad idea. - Need to implement passing meta information through socket nodes using sendmsg() and recvmsg(). @@ -64,14 +71,16 @@ Archie's suggestions... :-) - Stuff needing to be added to manual: - Awareness of SPL level, use ng_queue*() functions when necessary. - - Malloc all memory with type M_NETGRAPH. + - Malloc all memory with type M_NETGRAPH. -DONE - Write code so it can be an LKM or built into the kernel.. this means be careful with things like #ifdef INET. - All nodes assume that all data mbufs have the M_PKTHDR flag set! The ng_send_data() and related functions should have an #ifdef DIAGNOSTICS check to check this assumption for every mbuf. + -DONE with INVARIANTS. Framework should test this more. - More generally, netgraph code should make liberal use of the #ifdef DIAGNOSTICS definition. + -INVARIANTS. - Since data and messages are sent functionally, programmers need to watch out for infinite feedback loops. Should ng_base.c detect this automatically? @@ -79,3 +88,16 @@ Archie's suggestions... :-) which is set to the colour of the packet as you pass through. hitting a node already of your colour would abort. Each packet has another (incremented) colour. + -new 'item' type can hold a hopcount... + +NEW in 2001 +All piggyback responses have gone away. +use the node ID in the return address field for quick response delivery. + +Every node has a queue, plus there is a list of nodes that have queued work. +Extensive use of Mutexes. Getting in shape for SMP. + +Messages and data are deliverd in a new form. An Item now has +all information needed to queue such a request and deliver it later, so +it is now the basis of all data transfer since any transfer may need to +be queued. |