Whamcloud - gitweb
* Pass the connecting client's UUID (NB: not the _connection_'s UUID, the
[fs/lustre-release.git] / lustre / include / linux / obd_class.h
index 3963c3a..f76dd84 100644 (file)
@@ -70,19 +70,20 @@ extern int class_rconn2export(struct lustre_handle *conn,
 
 struct obd_export {
         __u64 exp_cookie;
-        struct lustre_handle exp_rconnh;        /* remote connection handle */
-        struct lustre_handle exp_impconnh;
-        struct list_head exp_chain;
-        struct obd_device *exp_obd;
+        struct lustre_handle      exp_rconnh;     /* remote connection handle */
+        struct lustre_handle      exp_impconnh;
+        struct list_head          exp_chain;
+        struct obd_device        *exp_obd;
         struct ptlrpc_connection *exp_connection;
-        struct mds_export_data exp_mds_data;
+        struct mds_export_data    exp_mds_data;
 #if NOTYET && 0
-        struct ldlm_export_data exp_ldlm_data;
-        struct ost_export_data exp_ost_data;
+        struct ldlm_export_data   exp_ldlm_data;
+        struct ost_export_data    exp_ost_data;
 #endif
-        void *exp_data; /* device specific data */
-        int exp_desclen;
-        char *exp_desc;
+        void                     *exp_data; /* device specific data */
+        int                       exp_desclen;
+        char                     *exp_desc;
+        uuid_t                    exp_uuid;
 };
 
 struct obd_import {
@@ -292,13 +293,14 @@ static inline int obd_setattr(struct lustre_handle *conn,
         RETURN(rc);
 }
 
-static inline int obd_connect(struct lustre_handle *conn, struct obd_device *obd)
+static inline int obd_connect(struct lustre_handle *conn, struct obd_device *obd,
+                              char *cluuid)
 {
         int rc;
         OBD_CHECK_DEVSETUP(obd);
         OBD_CHECK_OP(obd,connect);
 
-        rc = OBP(obd, connect)(conn, obd);
+        rc = OBP(obd, connect)(conn, obd, cluuid);
         RETURN(rc);
 }
 
@@ -708,7 +710,8 @@ int class_name2dev(char *name);
 int class_uuid2dev(char *name);
 struct obd_device *class_uuid2obd(char *name);
 struct obd_export *class_new_export(struct obd_device *obddev);
-int class_connect (struct lustre_handle *conn, struct obd_device *obd);
+int class_connect(struct lustre_handle *conn, struct obd_device *obd,
+                  char *cluuid);
 int class_disconnect(struct lustre_handle *conn);
 struct obd_export *class_conn2export(struct lustre_handle *);