// 遍历二叉树路径
// 宏的主要任务:
// 1.遍历到达目标节点的路径
// 2.将路径上经过的节点保存在stack中
// 3.栈顶为peer_avl_empty
// 4.stackptr指向下一个空闲的位置
1.2 #define lookup(_daddr,_stack) \
({ \
struct inet_peer *u, **v; \
if (_stack != NULL) { \
stackptr = _stack;//栈指针指向栈底 \
*stackptr++ = &peer_root;//栈底为root,移动栈指针 \
} \
for (u = peer_root; u != peer_avl_empty; ) { \
if (_daddr == u->v4daddr) \
break; \
if ((__force __u32)_daddr < (__force __u32)u->v4daddr) \
v &#