Whamcloud - gitweb
LU-443 LNet: Only squawk when md->start is NULL on non-zero length
authorWally Wang <wang@cray.com>
Wed, 24 Aug 2011 18:08:58 +0000 (11:08 -0700)
committerOleg Drokin <green@whamcloud.com>
Sun, 23 Oct 2011 03:04:01 +0000 (23:04 -0400)
Only squawk when md->start is NULL on non-zero length.
The md->start == NULL check prevents anyone from creating a ME/MD
with no buffer. These are used as backstop buffers to generate events
when traffic has exceeded the local buffer space.

Change-Id: I1389b0a45d3f8ff548f6400c66b30a69bafb4f39
Signed-off-by: Wally Wang <wang@cray.com>
Reviewed-on: http://review.whamcloud.com/989
Tested-by: Hudson
Reviewed-by: Cory Spitz <spitzcor@cray.com>
Reviewed-by: Liang Zhen <liang@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lnet/lnet/lib-md.c

index c01f2b0..772078d 100644 (file)
@@ -215,8 +215,9 @@ lnet_md_deconstruct(lnet_libmd_t *lmd, lnet_md_t *umd)
 int
 lnet_md_validate(lnet_md_t *umd)
 {
-        if (umd->start == NULL) {
-                CERROR("MD start pointer can not be NULL\n");
+        if (umd->start == NULL && umd->length != 0) {
+                CERROR("MD start pointer can not be NULL with length %u\n",
+                       umd->length);
                 return -EINVAL;
         }