[Bug 1097869] New: Shift overflow in libkmod.h
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869 Bug ID: 1097869 Summary: Shift overflow in libkmod.h Classification: openSUSE Product: openSUSE Tumbleweed Version: Current Hardware: All OS: Other Status: NEW Severity: Normal Priority: P5 - None Component: Basesystem Assignee: bnc-team-screening@forge.provo.novell.com Reporter: fbui@suse.com QA Contact: qa-bugs@suse.de Found By: --- Blocker: --- It looks something is wrong now with the latest version of gcc and libkmod.h:
/usr/include/kmod/libkmod.h:75:23: error: result of ‘1 << 31’ requires 33 bits to represent, but ‘int’ only has 32 bits [-Werror=shift-overflow=] _KMOD_INDEX_PAD = (1 << 31),
This is with libkmod-devel-25-4.2.x86_64, gcc-7-2.9.x86_64 -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
Franck Bui
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c1
--- Comment #1 from Franck Bui
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
Jan Engelhardt
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c2
Jan Engelhardt
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c3
Franck Bui
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c4
Jan Engelhardt
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c5
Franck Bui
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c6
--- Comment #6 from Franck Bui
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c7
Jan Engelhardt
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c8
Dominique Leuenberger
-Werror in production is considered bad practice, because it means stuff startd failing tobbuild randomly with newrr compilers - all the time. You have to patch it (-Werror) out whereever you see it.
I tend to agree that having werror on a stable branch like Leap might not be the best, especially as toolchains tend to be kept around for a long time. Having werror in TW and asking to fix warnings, especially for low-level stuff, sounds reasonable (In reply to Jan Engelhardt from comment #2)
Fixed upstream. Since it is just a warning, I see no reason to act on this in openSUSE.
would it be difficult to backport the fix? Or is there an ETA for a release containing the fix? -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c9
--- Comment #9 from Jan Engelhardt
would it be difficult to backport the fix?
That's not the point. It's about carrying around more patches than absolutely needed. Every patch is one too many. For any package. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c10
--- Comment #10 from Dominique Leuenberger
would it be difficult to backport the fix?
That's not the point. It's about carrying around more patches than absolutely needed. Every patch is one too many. For any package.
BS - the topmost priority is to create a distro that coherently builds and works. If that means we need to backport a patch to get things going we do so. Asking others to disable their error handling because a lib maintainer is no 'feeling like adding a patch' is counter the quality statement we came to expect from openSUSE -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c11
--- Comment #11 from Franck Bui
That's not the point. It's about carrying around more patches than absolutely needed. Every patch is one too many. For any package.
Do you realize that you put the burden on other packages with such reasoning ? Do you really prefer that other packages add a hack in order to workaround a bug in kmod which is actually fixed by a trivial patch [1] and would take a couple of min to integrate ? And yes it's a bug since every attempts to use _KMOD_INDEX_PAD will result in an undefined behavior. Quite frankly I really don't understand why you're making it so hard for such trivial fix especially since you're asking other maintainers to ignore a valid warning and once the new version of kmod will be released and integrated in SUSE, the fix will be in and other packages will need to get rid of the hack that you forced us to add... [1] https://git.kernel.org/pub/scm/utils/kernel/kmod/kmod.git/commit/?id=867da6f... -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c12
--- Comment #12 from Jan Engelhardt
the topmost priority is to create a distro that coherently builds and works.
Sure, and having -Werror goes counter to that idea IMHO because it just stops building while there is, in general, no change to the observed "works" (runtime) part.
Do you really prefer that other packages add a hack in order to workaround a bug
It's about the greater picture wherein I prefer that other packages fix their own issues their upstreams have bestowed upon them, including "fail all if there is as little as one unused variable" behavior. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c13
Dominique Leuenberger
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c14
--- Comment #14 from Jan Engelhardt
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c15
--- Comment #15 from Franck Bui
So tell me Mr. Know-it-all, why can ~61 factory packages (some of which are even more essential than systemd) use -Wno-error and forego bugs and systemd.spec can't?
Because as systemd package maintainer, I'm fine to fix all warnings because warnings are supposed to spot bugs and must not be ignored *IMO*. This decision belongs to me not to you. As far as you're concerned, your package has a bug, the bug was acked and fixed by upstream, the fix is *trivial* and prevent other packages from building so why do we have to wait for the next release of kmod and keep wasting our time here whereas it could be fixed in less than 5 min ??? I can submit the fix is that helps. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c16
--- Comment #16 from Richard Brown
So tell me Mr. Know-it-all, why can ~61 factory packages (some of which are even more essential than systemd) use -Wno-error and forego bugs and systemd.spec can't?
Jan, because the maintainers are comfortable with using -Wno-error in those cases And Franck is not comfortable with using -Wno-error for systemd And the "Mr. Know-it-all" in this case is in fact the Release Manager of openSUSE Tumbleweed, so he is in a perfect position to confirm or question whether or not that decision by the systemd maintainer is suitable for the openSUSE Tumbleweed distribution. Dominique has already stated that he sees both sides of the argument, seeing how werror on a stable branch like Leap might make sense but that he feels its advantageous fo low level packages like systemD in Tumbleweed. Refusing to collaborate with your fellow contributors and resorting to namecalling puts you on a collision course with our projects guiding principles. I strongly recommend you take their advice, unless you wish the Board to arbitrate formally on this issue. Please fix your package. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c17
--- Comment #17 from Jan Engelhardt
prevent other packages from building
All the other libkmod-using packages are build-cooperative, it is only yours that acts, figuratively, like a moping kid.
keep wasting our time here whereas it could be fixed in less than 5 min ???
Indeed, you could have added -Wno-error in 5, but you chose not to. So here we are. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c19
--- Comment #19 from Jan Engelhardt
DL: having werror on a stable branch like Leap might not be the best, RB: seeing how werror on a stable branch like Leap might make sense
Could you at least agree on your positions? When did Leap enter the picture? It's about a moving target like Tumbleweed where a compiler will, over time, emit new warnings that then stop the build, and stop it at the wrong place. Such errors should be caught upstream; downstream users should not receive, in their eyes, "non-functional" software. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c20
Richard Brown
DL: having werror on a stable branch like Leap might not be the best, RB: seeing how werror on a stable branch like Leap might make sense
Could you at least agree on your positions? When did Leap enter the picture?
Could you at least turn on your brain - the context of my post made it quite clear I was agreeing with DL even if I made a slight mistake in the quoted sentence.
It's about a moving target like Tumbleweed where a compiler will, over time, emit new warnings that then stop the build, and stop it at the wrong place. Such errors should be caught upstream; downstream users should not receive, in their eyes, "non-functional" software.
Who are you to decide whether or not our openSUSE systemd maintainers can't choose to assist upstream in this way or not? Come on Jan, stop this stupid arguments, please be reasonable and instead of wasting a maintainers time, a release managers time, and multiple Board members time, either make the trivial fix Franck has requested or make it clear you will accept the change if Franck submits it. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c21
Christian Boltz
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c22
Jan Engelhardt
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c23
--- Comment #23 from Franck Bui
9 months later - did everybody cool down enough to handle this in a sane way? ;-) Or was it already "accidently fixed" with a version update?
AFAIK for Factory it was fixed "accidently". SLE/Leap are still left broken. Sad. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c24
--- Comment #24 from Jan Engelhardt
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c25
--- Comment #25 from Franck Bui
Not an accident.
------------------------------------------------------------------- Wed Jul 18 08:51:06 UTC 2018 - jengelh@inai.de
- Remove enum padding constants, add enum.patch.
OK I was looking at the bug number in the changes file. Can you then fix SLE/Leap if it's not an accident ? -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
Jan Engelhardt
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c26
--- Comment #26 from Michal Suchanek
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c27
--- Comment #27 from Franck Bui
In which SLE/Leap do you need the patch for anything?
If it was released without a build error it should continue to build.
It would be needed in order to build and run the devel version of systemd on Leap 15, see: https://build.opensuse.org/package/live_build_log/home:fbui:systemd:openSUSE...
This constant was added in order to be ABI compatible in spite of using some evil gcc option that shrinks enums. It is not supposed to be passed anywhere, the value is meaningless.
AFAIR there's no needs to use this constant to trigger the warning, simply including libkmod.h should be enough. -- You are receiving this mail because: You are on the CC list for the bug.
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869
http://bugzilla.opensuse.org/show_bug.cgi?id=1097869#c28
--- Comment #28 from Michal Suchanek
participants (1)
-
bugzilla_noreply@novell.com