Whamcloud - gitweb
LU-2456 lnet: DLC user/kernel space glue code
[fs/lustre-release.git] / lnet / include / lnet / lib-types.h
index ddfc7f4..3a1b667 100644 (file)
 #ifndef __LNET_LIB_TYPES_H__
 #define __LNET_LIB_TYPES_H__
 
-#if defined(__linux__)
 #include <lnet/linux/lib-types.h>
-#elif defined(__APPLE__)
-#include <lnet/darwin/lib-types.h>
-#else
-#error Unsupported Operating System
-#endif
 
 #include <libcfs/libcfs.h>
 #include <libcfs/list.h>
@@ -409,7 +403,7 @@ struct lnet_tx_queue {
        struct list_head        tq_delayed;     /* delayed TXs */
 };
 
-#define LNET_MAX_INTERFACES   16
+#define LNET_MAX_INTERFACES    16
 
 typedef struct lnet_ni {
 #ifdef __KERNEL__
@@ -592,18 +586,18 @@ typedef struct {
        lnet_kiov_t              rb_kiov[0];    /* the buffer space */
 } lnet_rtrbuf_t;
 
-typedef struct {
-        __u32        msgs_alloc;
-        __u32        msgs_max;
-        __u32        errors;
-        __u32        send_count;
-        __u32        recv_count;
-        __u32        route_count;
-        __u32        drop_count;
-        __u64        send_length;
-        __u64        recv_length;
-        __u64        route_length;
-        __u64        drop_length;
+typedef struct lnet_counters {
+       __u32 msgs_alloc;
+       __u32 msgs_max;
+       __u32 errors;
+       __u32 send_count;
+       __u32 recv_count;
+       __u32 route_count;
+       __u32 drop_count;
+       __u64 send_length;
+       __u64 recv_length;
+       __u64 route_length;
+       __u64 drop_length;
 } WIRE_ATTR lnet_counters_t;
 
 #define LNET_PEER_HASHSIZE   503                /* prime! */
@@ -850,6 +844,13 @@ typedef struct
        /* test protocol compatibility flags */
        int                             ln_testprotocompat;
 
+       /* 0 - load the NIs from the mod params
+        * 1 - do not load the NIs from the mod params
+        * Reverse logic to ensure that other calls to LNetNIInit
+        * need no change
+        */
+       bool                            ln_nis_from_mod_params;
+
 #ifndef __KERNEL__
        /* Temporary workaround to allow uOSS and test programs force
         * server mode in userspace. The only place where we use it is