Re: mdadm:compiled warning in mdadm.c:1974:29 treats as errors

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 





On 04/07/2017 07:36 AM, NeilBrown wrote:
On Thu, Apr 06 2017, Jes Sorensen wrote:

On 04/06/2017 04:21 AM, Liu Zhilong wrote:
hi,

I found this compiling warning, and can reproduce on my Leap42.1,
Leap42.2 and SLES12 SP2 with v4.8.5 version of gcc.

# gcc -v
Using built-in specs.
COLLECT_GCC=gcc
COLLECT_LTO_WRAPPER=/usr/lib64/gcc/x86_64-suse-linux/4.8/lto-wrapper
Target: x86_64-suse-linux
Configured with: ../configure --prefix=/usr --infodir=/usr/share/info
--mandir=/usr/share/man --libdir=/usr/lib64 --libexecdir=/usr/lib64
--enable-languages=c,c++,objc,fortran,obj-c++,java,ada
--enable-checking=release --with-gxx-include-dir=/usr/include/c++/4.8
--enable-ssp --disable-libssp --disable-plugin
--with-bugurl=http://bugs.opensuse.org/ --with-pkgversion='SUSE Linux'
--disable-libgcj --disable-libmudflap --with-slibdir=/lib64
--with-system-zlib --enable-__cxa_atexit
--enable-libstdcxx-allocator=new --disable-libstdcxx-pch
--enable-version-specific-runtime-libs --enable-linker-build-id
--enable-linux-futex --program-suffix=-4.8 --without-system-libunwind
--with-arch-32=i586 --with-tune=generic --build=x86_64-suse-linux
--host=x86_64-suse-linux
Thread model: posix
gcc version 4.8.5 (SUSE Linux)

# make everything
... ...
mdadm.c: In function ‘main’:
mdadm.c:1974:29: error: ‘mdfd’ may be used uninitialized in this
function [-Werror=maybe-uninitialized]
    if (dv->devname[0] == '/' || mdfd < 0)
                              ^
mdadm.c:1914:7: note: ‘mdfd’ was declared here
    int mdfd;
        ^
cc1: all warnings being treated as errors
Makefile:206: recipe for target 'mdadm.Os' failed
make: *** [mdadm.Os] Error 1
Crappy compiler, you're running an old gcc. But sure, send me a patch
that initializes mdfd to -1.
I would rather make the code more obviously correct.

		if (dv->devname[0] == '/' ||
		    (mdfd = open_dev(dv->devname)) < 0)
			mdfd = open_mddev(dv->devname, 1);

well... it is more obvious to me.

I also consider that it's better method for this compiling warning.
And I can send this sample as a patch once jes agrees.

Thanks,
-Zhilong

NeilBrown

--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux