Whamcloud - gitweb
Get the RC from update_oldconfig properly.
[fs/lustre-release.git] / lnet / lnet / lib-init.c
index 9d97bc1..6d0099c 100644 (file)
@@ -6,9 +6,8 @@
  * Called by the NAL when it initializes.  Safe to call multiple times.
  *
  *  Copyright (c) 2001-2003 Cluster File Systems, Inc.
- *  Copyright (c) 2001-2002 Sandia National Laboratories
  *
- *   This file is part of Lustre, http://www.sf.net/projects/lustre/
+ *   This file is part of Lustre, http://www.lustre.org
  *
  *   Lustre is free software; you can redistribute it and/or
  *   modify it under the terms of version 2 of the GNU General Public
 #include <portals/lib-p30.h>
 
 #ifdef __KERNEL__
-# include <linux/string.h>      /* for memset() */
-# include <linux/kp30.h>
-# ifdef KERNEL_ADDR_CACHE
-#  include <compute/OS/addrCache/cache.h>
-# endif
+# include <libcfs/kp30.h>
 #else
 # include <string.h>
 # include <sys/time.h>
@@ -72,7 +67,7 @@ lib_freelist_init (lib_nal_t *nal, lib_freelist_t *fl, int n, int size)
         if (space == NULL)
                 return (PTL_NO_SPACE);
 
-        INIT_LIST_HEAD (&fl->fl_list);
+        CFS_INIT_LIST_HEAD (&fl->fl_list);
         fl->fl_objs = space;
         fl->fl_nobjs = n;
         fl->fl_objsize = size;
@@ -200,7 +195,7 @@ lib_setup_handle_hash (lib_nal_t *nal)
                 return (PTL_NO_SPACE);
         
         for (i = 0; i < ni->ni_lh_hash_size; i++)
-                INIT_LIST_HEAD (&ni->ni_lh_hash_table[i]);
+                CFS_INIT_LIST_HEAD (&ni->ni_lh_hash_table[i]);
 
         ni->ni_next_object_cookie = PTL_COOKIE_TYPES;
         
@@ -286,6 +281,7 @@ lib_init(lib_nal_t *libnal, nal_t *apinal,
         apinal->nal_ni_status = lib_api_ni_status;
         apinal->nal_ni_dist   = lib_api_ni_dist;
         apinal->nal_fail_nid  = lib_api_fail_nid;
+        apinal->nal_loopback  = lib_api_loopback;
         apinal->nal_me_attach = lib_api_me_attach;
         apinal->nal_me_insert = lib_api_me_insert;
         apinal->nal_me_unlink = lib_api_me_unlink;
@@ -309,14 +305,14 @@ lib_init(lib_nal_t *libnal, nal_t *apinal,
 
         memset(&ni->ni_counters, 0, sizeof(lib_counters_t));
 
-        INIT_LIST_HEAD (&ni->ni_active_msgs);
-        INIT_LIST_HEAD (&ni->ni_active_mds);
-        INIT_LIST_HEAD (&ni->ni_active_eqs);
-        INIT_LIST_HEAD (&ni->ni_test_peers);
+        CFS_INIT_LIST_HEAD (&ni->ni_active_msgs);
+        CFS_INIT_LIST_HEAD (&ni->ni_active_mds);
+        CFS_INIT_LIST_HEAD (&ni->ni_active_eqs);
+        CFS_INIT_LIST_HEAD (&ni->ni_test_peers);
 
 #ifdef __KERNEL__
         spin_lock_init (&ni->ni_lock);
-        init_waitqueue_head (&ni->ni_waitq);
+        cfs_waitq_init (&ni->ni_waitq);
 #else
         pthread_mutex_init(&ni->ni_mutex, NULL);
         pthread_cond_init(&ni->ni_cond, NULL);
@@ -344,7 +340,7 @@ lib_init(lib_nal_t *libnal, nal_t *apinal,
         }
 
         for (i = 0; i < ptl_size; i++)
-                INIT_LIST_HEAD(&(ni->ni_portals.tbl[i]));
+                CFS_INIT_LIST_HEAD(&(ni->ni_portals.tbl[i]));
 
         /* max_{mes,mds,eqs} set in kportal_descriptor_setup */
 
@@ -361,6 +357,9 @@ lib_init(lib_nal_t *libnal, nal_t *apinal,
         if (actual_limits != NULL)
                 *actual_limits = ni->ni_actual_limits;
 
+        /* disable loopback optimisation by default */
+        ni->ni_loopback = 0;
+
  out:
         if (rc != PTL_OK) {
                 lib_cleanup_handle_hash (libnal);