svn commit: r254121 - head/sys/ofed/include/linux
Jeff Roberson
jeff at FreeBSD.org
Fri Aug 9 03:24:49 UTC 2013
Author: jeff
Date: Fri Aug 9 03:24:48 2013
New Revision: 254121
URL: http://svnweb.freebsd.org/changeset/base/254121
Log:
- Correctly handle various edge cases in sysfs emulation.
Sponsored by: EMC / Isilon Storage Division
Modified:
head/sys/ofed/include/linux/sysfs.h
Modified: head/sys/ofed/include/linux/sysfs.h
==============================================================================
--- head/sys/ofed/include/linux/sysfs.h Fri Aug 9 03:24:12 2013 (r254120)
+++ head/sys/ofed/include/linux/sysfs.h Fri Aug 9 03:24:48 2013 (r254121)
@@ -97,11 +97,14 @@ sysctl_handle_attr(SYSCTL_HANDLER_ARGS)
error = -len;
if (error != EIO)
goto out;
+ buf[0] = '\0';
+ } else if (len) {
+ len--;
+ if (len >= PAGE_SIZE)
+ len = PAGE_SIZE - 1;
+ /* Trim trailing newline. */
+ buf[len] = '\0';
}
-
- /* Trim trailing newline. */
- len--;
- buf[len] = '\0';
}
/* Leave one trailing byte to append a newline. */
More information about the svn-src-head
mailing list