Whamcloud - gitweb
b=23660 fix #ifdef to enable checksum
[fs/lustre-release.git] / libcfs / libcfs / kernel_user_comm.c
index 7ac1f9e..357bcf1 100644 (file)
@@ -26,7 +26,7 @@
  * GPL HEADER END
  */
 /*
- * Copyright  2009 Sun Microsystems, Inc. All rights reserved
+ * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
  * Use is subject to license terms.
  */
 /*
@@ -59,6 +59,7 @@ int libcfs_ukuc_start(lustre_kernelcomm *link, int group)
         if (pipe(pfd) < 0)
                 return -errno;
 
+        memset(link, 0, sizeof(*link));
         link->lk_rfd = pfd[0];
         link->lk_wfd = pfd[1];
         link->lk_group = group;
@@ -79,7 +80,7 @@ int libcfs_ukuc_stop(lustre_kernelcomm *link)
  * Allocates memory, returns handle
  *
  * @param link Private descriptor for pipe/socket.
- * @param buf Buffer to read into
+ * @param buf Buffer to read into, must include size for kuc_hdr
  * @param maxsize Maximum message size allowed
  * @param transport Only listen to messages on this transport
  *      (and the generic transport)
@@ -165,7 +166,11 @@ int libcfs_kkuc_msg_put(cfs_file_t *filp, void *payload)
         }
 
 #ifdef __KERNEL__
-        rc = cfs_user_write(filp, (char *)payload, kuch->kuc_msglen, 0);
+        {
+                loff_t offset = 0;
+                rc = cfs_user_write(filp, (char *)payload, kuch->kuc_msglen,
+                                    &offset);
+        }
 #endif
 
         if (rc < 0)