All qlocks are initialized
[akaros.git] / kern / include / ip.h
index dede04f..c8eef0c 100644 (file)
@@ -80,7 +80,7 @@ struct conv
        struct queue*   wq;                     /* queued data waiting to be written */
        struct queue*   eq;                     /* returned error packets */
        struct queue*   sq;                     /* snooping queue */
-       struct kref     snoopers;               /* number of processes with snoop open */
+       atomic_t        snoopers;               /* number of processes with snoop open */
 
        struct rendez   cr;
        char    cerr[ERRMAX];
@@ -280,6 +280,7 @@ struct Proto
        int             (*remote)(struct conv*, char *unused_char_p_t, int);
        int             (*inuse)(struct conv*);
        int             (*gc)(struct Proto*);   /* returns true if any conversations are freed */
+       void    (*newconv)(struct Proto *udp, struct conv *conv);
 
        struct Fs               *f;             /* file system this proto is part of */
        struct conv             **conv;         /* array of conversations */
@@ -326,7 +327,7 @@ struct Fs
        struct route    *v6root[1<<Lroot];      /* v6 routing forest */
        struct route    *queue;                 /* used as temp when reinjecting routes */
 
-       //Netlog        *alog;
+       struct Netlog   *alog;
        struct Ifclog   *ilog;
 
        char    ndb[1024];              /* an ndb entry for this interface */
@@ -846,10 +847,4 @@ extern int ReTransTimer;
 
 int kdial(char *dest, char *local, char *dir, int *cfdp);
 
-#define netlog(f, mask, ...)\
-{\
-       printk("netlog: f %p, mask %d: ", f, mask);\
-       _warn(__FILE__, __LINE__, __VA_ARGS__);\
-}
-
 #endif /* ROS_KERN_IP_H */