[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <76c6906f-a248-0087-0508-74a3c74405c2@redhat.com>
Date: Tue, 11 Feb 2020 15:08:34 -0600
From: Eric Sandeen <sandeen@...hat.com>
To: Lukas Czerner <lczerner@...hat.com>, linux-ext4@...r.kernel.org
Cc: tytso@....edu
Subject: Re: [PATCH v2] tst_libext2fs: Avoid multiple definition of global
variables
On 2/11/20 2:22 PM, Eric Sandeen wrote:
> On 2/10/20 9:24 AM, Lukas Czerner wrote:
>> gcc version 10 changed the default from -fcommon to -fno-common and as a
>> result e2fsprogs make check tests fail because tst_libext2fs.c end up
>> with a build error.
>>
>> This is because it defines two global variables debug_prog_name and
>> extra_cmds that are already defined in debugfs/debugfs.c. With -fcommon
>> linker was able to resolve those into the same object, however with
>> -fno-common it's no longer able to do it and we end up with multiple
>> definition errors.
>>
>> Fix the problem by using SKIP_GLOBDEFS macro to skip the variables
>> definition in debugfs.c. Note that debug_prog_name is also defined in
>> lib/ext2fs/extent.c when DEBUG macro is used, but this does not work even
>> with older gcc versions and is never used regardless so I am not going to
>> bother with it.
>>
>> Signed-off-by: Lukas Czerner <lczerner@...hat.com>
>> ---
>> v2: Previous fix wasn't really working properly
>
> What was not working properly?
>
> It seemed reasonable to me. The new mechanism looks like it would work,
> but the first patch seemed more obvious, so I'd like to know what the problem
> was.
I built e2fsprogs & ran make check from git on Fedora Rawhide w/ your first patch,
and it all seemed to work fine so I'll just stand by for more info. :)
-Eric
Powered by blists - more mailing lists