Bug 1160414

Summary: rsyslog fails with -fno-common
Product: [openSUSE] openSUSE Tumbleweed Reporter: Martin Liška <martin.liska>
Component: BasesystemAssignee: Thomas Blume <thomas.blume>
Status: RESOLVED FIXED QA Contact: E-mail List <qa-bugs>
Severity: Normal    
Priority: P5 - None CC: alynx.zhou, martin.liska, matz
Version: Current   
Target Milestone: ---   
Hardware: Other   
OS: Other   
Whiteboard:
Found By: --- Services Priority:
Business Priority: Blocker: ---
Marketing QA Status: --- IT Deployment: ---
Bug Depends on:    
Bug Blocks: 1160244    

Description Martin Liška 2020-01-08 09:45:47 UTC
The package fails here:
https://build.opensuse.org/package/live_build_log/openSUSE:Factory:Staging:M/rsyslog/standard/x86_64

Please take a look at the META issue for the instructions.
Comment 1 Thomas Blume 2020-01-09 07:41:42 UTC
I was comparing the factory build from obs, which succeeds, with the one from staging that fails and could see a different gcc version used:

-->
~/Bugs/1160414> grep gcc-9 rsyslog_build-log_factory.success
[   22s] [210/238] cumulate gcc-9-1.6
[   49s] gcc-9-1.6                             ########################################
~/Bugs/1160414> grep gcc-9 rsyslog_build-log_staging.failed
[   27s] [212/239] cumulate gcc-9-3.53
[   57s] gcc-9-3.53                            ########################################
--<

I heavily suspect that the culprit is the newer compiler version in staging.

Michael, do you see any change in gcc 9-1 versus gcc 9-3 that could explain the build error?
Comment 2 Martin Liška 2020-01-09 08:00:48 UTC
No, there's just a minor GCC version difference:

[   27s] [209/239] cumulate gcc9-9.2.1+r279103-2.2
vs.
[   22s] [207/238] cumulate gcc9-9.2.1+r275327-1.2

The real difference is the added -fno-common option for the :M staging project.
Comment 3 Richard Biener 2020-01-09 08:01:05 UTC
The version differences are spurious (you'd need to look at gcc9, not gcc-9 anyways).  The issue is that the staging builds with -fno-common which is
going to be the default with gcc10 and that causes

[  141s] (.text+0x0): multiple definition of `pszFileDfltTplName'; rsyslogd-omfile.o (symbol from plugin):(.text+0x0): first defined here
[  141s] /usr/lib64/gcc/x86_64-suse-linux/9/../../../../x86_64-suse-linux/bin/ld: librsyslog_la-rsconf.o (symbol from plugin): in function `rsconfQueryInterface':
[  141s] (.text+0x0): multiple definition of `pszFileDfltTplName'; rsyslogd-omfile.o (symbol from plugin):(.text+0x0): first defined here
[  141s] wti.c: In function 'wtiWorker':

this happens when two tentative definitions of wtiWorker exist, one is in rsconf.c and one in omfile.c.  Just mark one with 'extern'.

See the meta issue as Martin says (the BLOCKS issue).
Comment 4 Thomas Blume 2020-01-09 10:00:39 UTC
Thanks for the background.
Obviously I was not familiar with this workflow, next time I'll know better.
I verified the issue and provided a patched version at:

https://build.opensuse.org/package/show/home:tsaupe:branches:openSUSE:Factory:rsyslog-bsc1160414/rsyslog

If you confirm that it works for staging, I will try to sell it upstream.
Comment 5 Martin Liška 2020-01-09 10:05:50 UTC
(In reply to Thomas Blume from comment #4)
> Thanks for the background.
> Obviously I was not familiar with this workflow, next time I'll know better.
> I verified the issue and provided a patched version at:

Can you please report that to upstream first and have them to accept the patch?

> 
> https://build.opensuse.org/package/show/home:tsaupe:branches:openSUSE:
> Factory:rsyslog-bsc1160414/rsyslog
> 
> If you confirm that it works for staging, I will try to sell it upstream.

The patch looks good to me.
Comment 6 Thomas Blume 2020-01-09 12:11:25 UTC
(In reply to Martin Liška from comment #5)
> Can you please report that to upstream first and have them to accept the
> patch?

Ok, I've submitted it:

https://github.com/rsyslog/rsyslog/pull/4108

and already got feedback:

-->
thx for the PR. Q: is gcc 10 sufficiently stable? I had the impression "not yet". If it is, I would add it to our CI compile checks.
--<

Could you answer this?
Comment 7 Martin Liška 2020-01-09 12:15:23 UTC
Done.
Comment 8 Thomas Blume 2020-01-10 07:36:38 UTC
(In reply to Martin Liška from comment #7)
> Done.

Thanks for your help, the patch was accepted.
I will push an updated rsyslog as soon as it is merged.
Comment 9 Martin Liška 2020-02-04 11:30:17 UTC
(In reply to Thomas Blume from comment #8)
> (In reply to Martin Liška from comment #7)
> > Done.
> 
> Thanks for your help, the patch was accepted.
> I will push an updated rsyslog as soon as it is merged.

Great, is there any progress about this?
Comment 10 Thomas Blume 2020-02-04 11:55:07 UTC
(In reply to Martin Liška from comment #9)
> (In reply to Thomas Blume from comment #8)
> > (In reply to Martin Liška from comment #7)
> > > Done.
> > 
> > Thanks for your help, the patch was accepted.
> > I will push an updated rsyslog as soon as it is merged.
> 
> Great, is there any progress about this?

The request is open:

https://build.opensuse.org/request/show/764530

but not processed yet.
Comment 11 Martin Liška 2020-02-04 12:00:24 UTC
(In reply to Thomas Blume from comment #10)
> (In reply to Martin Liška from comment #9)
> > (In reply to Thomas Blume from comment #8)
> > > (In reply to Martin Liška from comment #7)
> > > > Done.
> > > 
> > > Thanks for your help, the patch was accepted.
> > > I will push an updated rsyslog as soon as it is merged.
> > 
> > Great, is there any progress about this?
> 
> The request is open:
> 
> https://build.opensuse.org/request/show/764530
> 
> but not processed yet.

I've just pinged Marcus.
Now it's fixed in devel project.
Comment 17 Swamp Workflow Management 2022-01-11 17:19:35 UTC
SUSE-RU-2022:0055-1: An update that has four recommended fixes can now be installed.

Category: recommended (moderate)
Bug References: 1029961,1160414,1178490,1182653
CVE References: 
JIRA References: 
Sources used:
SUSE Linux Enterprise Module for Server Applications 15-SP3 (src):    rsyslog-8.2106.0-4.13.1
SUSE Linux Enterprise Module for Server Applications 15-SP2 (src):    rsyslog-8.2106.0-4.13.1
SUSE Linux Enterprise Module for Basesystem 15-SP3 (src):    librdkafka-0.11.6-1.8.1, rsyslog-8.2106.0-4.13.1
SUSE Linux Enterprise Module for Basesystem 15-SP2 (src):    librdkafka-0.11.6-1.8.1, rsyslog-8.2106.0-4.13.1

NOTE: This line indicates an update has been released for the listed product(s). At times this might be only a partial fix. If you have questions please reach out to maintenance coordination.
Comment 18 Swamp Workflow Management 2022-01-11 17:22:37 UTC
openSUSE-RU-2022:0055-1: An update that has four recommended fixes can now be installed.

Category: recommended (moderate)
Bug References: 1029961,1160414,1178490,1182653
CVE References: 
JIRA References: 
Sources used:
openSUSE Leap 15.3 (src):    librdkafka-0.11.6-1.8.1, rsyslog-8.2106.0-4.13.1
Comment 19 Swamp Workflow Management 2022-03-01 20:18:34 UTC
openSUSE-RU-2022:0055-1: An update that has 5 recommended fixes can now be installed.

Category: recommended (moderate)
Bug References: 1029961,1160414,1178490,1182653,1195650
CVE References: 
JIRA References: 
Sources used:
openSUSE Leap 15.3 (src):    librdkafka-0.11.6-1.8.1, rsyslog-8.2106.0-4.13.1
openSUSE Backports SLE-15-SP3 (src):    audacity-2.2.2-bp153.3.3.1
Comment 24 Swamp Workflow Management 2022-07-07 07:18:24 UTC
SUSE-SU-2022:2314-1: An update that solves one vulnerability, contains one feature and has 11 fixes is now available.

Category: security (important)
Bug References: 1051798,1068678,1080238,1082318,1101642,1110456,1160414,1178288,1178490,1182653,1188039,1199061
CVE References: CVE-2022-24903
JIRA References: SLE-23304
Sources used:
SUSE Linux Enterprise Server 12-SP5 (src):    rsyslog-8.2106.0-8.5.2

NOTE: This line indicates an update has been released for the listed product(s). At times this might be only a partial fix. If you have questions please reach out to maintenance coordination.