Re: [lustre-devel] [PATCH 10/60] staging: lustre: obdclass: add more info to sysfs version string

From: Dilger, Andreas
Date: Tue Feb 07 2017 - 20:05:16 EST



> On Feb 3, 2017, at 03:33, Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> wrote:
>
> On Sat, Jan 28, 2017 at 07:04:38PM -0500, James Simmons wrote:
>> From: Andreas Dilger <andreas.dilger@xxxxxxxxx>
>>
>> Update the sysfs "version" file to print "lustre: " with
>> the version number.
>>
>> Signed-off-by: Andreas Dilger <andreas.dilger@xxxxxxxxx>
>> Intel-bug-id: https://jira.hpdd.intel.com/browse/LU-5969
>> Reviewed-on: http://review.whamcloud.com/16721
>> Reviewed-by: James Simmons <uja.ornl@xxxxxxxxx>
>> Reviewed-by: Dmitry Eremin <dmitry.eremin@xxxxxxxxx>
>> Reviewed-by: Oleg Drokin <oleg.drokin@xxxxxxxxx>
>> Signed-off-by: James Simmons <jsimmons@xxxxxxxxxxxxx>
>> ---
>> drivers/staging/lustre/lustre/obdclass/linux/linux-module.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/staging/lustre/lustre/obdclass/linux/linux-module.c b/drivers/staging/lustre/lustre/obdclass/linux/linux-module.c
>> index 9f5e829..22e6d1f 100644
>> --- a/drivers/staging/lustre/lustre/obdclass/linux/linux-module.c
>> +++ b/drivers/staging/lustre/lustre/obdclass/linux/linux-module.c
>> @@ -208,7 +208,7 @@ struct miscdevice obd_psdev = {
>> static ssize_t version_show(struct kobject *kobj, struct attribute *attr,
>> char *buf)
>> {
>> - return sprintf(buf, "%s\n", LUSTRE_VERSION_STRING);
>> + return sprintf(buf, "lustre: %s\n", LUSTRE_VERSION_STRING);
>> }
>
> Why? You "know" this is lustre, why say it again? Doesn't this affect
> userspace tools?

It included "lustre: " as a prefix until commit 8b8284450569 when the code
moved from /proc to /sys, and is what the userspace tools expect. Formerly
there were multiple strings printed in this file, each with a different prefix,
but the "lustre: " prefix was dropped in the move to sysfs.

That didn't matter until a userspace patch to stop using ioctl(IOC_GET_VERSION)
and instead get the version from the existing /proc or /sys files, so that we
can deprecate and eventually drop the IOC_GET_VERSION ioctl completely.

So this patch is returning to the previous format of the /proc file, but if
there is a big objection to this patch we can also change the userspace tools
to live with or without this prefix now that there is only a single value here.

Cheers, Andreas
--
Andreas Dilger
Lustre Principal Architect
Intel Corporation