Whamcloud - gitweb
LU-14285 utils: Add error message when osd_init fails 18/41118/3
authorArshad Hussain <arshad.hussain@aeoncomputing.com>
Thu, 31 Dec 2020 19:12:05 +0000 (00:42 +0530)
committerOleg Drokin <green@whamcloud.com>
Fri, 26 Feb 2021 21:06:56 +0000 (21:06 +0000)
It was observed that mkfs.lustre fails silently under
function osd_init(). One such case where it silently
fails is when back-end is 'zfs' and libz.so library
is not loaded or under search path.

This patch adds error message in case osd_init() call
fails. It makes end user observe the failure more easily.

Before Patch:
~~~~~~~~~~~~~
$ echo $LD_LIBRARY_PATH
/root/zfs_spl_install/0840/zfs/lib
$ unset LD_LIBRARY_PATH
$ mkfs.lustre --reformat --index 0 --backfstype=zfs --fsname=lustre --mgsnode=192.168.50.140@tcp --mgs --mdt gpool/metadata /dev/sdb1
$ echo $?
22

After Patch:
~~~~~~~~~~~~
$ echo $LD_LIBRARY_PATH
/root/zfs_spl_install/0840/zfs/lib
$ unset LD_LIBRARY_PATH
$ mkfs.lustre --reformat --index 0 --backfstype=zfs --fsname=lustre --mgsnode=192.168.50.140@tcp --mgs --mdt gpool/metadata /dev/sdb1
mkfs.lustre: osd_init() failed : 22 (Invalid argument)
$

Test-Parameters: trivial
Signed-off-by: Arshad Hussain <arshad.hussain@aeoncomputing.com>
Change-Id: Ie75b00974852d7a4b95b52d26501e55b66db5891
Reviewed-on: https://review.whamcloud.com/41118
Tested-by: jenkins <devops@whamcloud.com>
Tested-by: Maloo <maloo@whamcloud.com>
Reviewed-by: Andreas Dilger <adilger@whamcloud.com>
Reviewed-by: James Simmons <jsimmons@infradead.org>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
lustre/utils/mkfs_lustre.c

index 5e70ed6..a366039 100644 (file)
@@ -836,8 +836,11 @@ int main(int argc, char *const argv[])
        strscpy(mop.mo_device, argv[argc - 1], sizeof(mop.mo_device));
 
        ret = osd_init();
-       if (ret != 0)
+       if (ret != 0) {
+               fprintf(stderr, "%s: osd_init() failed: %d (%s)\n",
+                       progname, ret, strerror(ret));
                return ret;
+       }
 
 #ifdef TUNEFS
        /*