[elrepo] Announcement: EL6 and EL7 Updated kmod-r8168 Release [8.046.00-1]
Phil Perry
phil at elrepo.org
Mon Sep 10 15:08:06 EDT 2018
On 10/09/18 11:31, Nick Howitt wrote:
> On 09/09/2018 13:02, Phil Perry wrote:
>>
>> On 09/09/18 12:39, Nick Howitt wrote:
>>> Thanks for this.
>>> The el6 version compiles cleanly with a 6.9 kernel. Do you know if
>>> the package is in any way limited to 6.10 kernels as I don't have a
>>> current 6.10 installation I can test against.
>>>
>>> Regards,
>>>
>>> Nick
>>>
>>
>> The module only weak links against 6.10 kernels when build against 6.10:
>>
>> $ find /lib/modules/ -name r8168.ko
>> /lib/modules/2.6.32-754.el6.x86_64/extra/r8168/r8168.ko
>> /lib/modules/2.6.32-754.2.1.el6.x86_64/weak-updates/r8168/r8168.ko
>> /lib/modules/2.6.32-754.3.5.el6.x86_64/weak-updates/r8168/r8168.ko
>>
>> due to the new retpoline __x86_indirect_thunk_* functions:
>>
>> $ rpm -q --requires kmod-r8168 | grep __x86_indirect_thunk_
>> kernel(__x86_indirect_thunk_r10) = 0x7e526bfa
>> kernel(__x86_indirect_thunk_r11) = 0xbfdcb43a
>> kernel(__x86_indirect_thunk_r8) = 0x1ed8b599
>> kernel(__x86_indirect_thunk_rax) = 0x2ea2c95c
>> kernel(__x86_indirect_thunk_rcx) = 0xc29957c3
>> kernel(__x86_indirect_thunk_rdx) = 0xb601be4c
>>
>> hence the .el6_10.elrepo dist tag used to signify the package is
>> specific to 6.10.
>>
>> I can't answer as to what you are doing if you are rebuilding against
>> older non-RHEL compatible kernels, so your guess is as good as mine.
>>
> Hi Phil
>
> Wacky but it looks like it will weak-link forwards from 2.6.32-690.30
> when compiled with a 2.6.32-690.30.1 kernel, but it will not weak-link
> backwards. Anyway, to avoid possible issues I have set a kernel
> dependency for >= 2.6.32-754. You did that type of Requires in the 7.5
> src.rpm but not the 6.10.
IIRC, kernel-2.6.32-690.30 contains the retpoline fixes, so yes if built
against that kernel with a compiler (gcc) which also supports
retpolines, then the resultant module will not weak link back to older
kernels missing the __x86_indirect_thunk_* symbols, but may well forward
link assuming the kABI of other used symbols has not changed. You need
to look carefully at the kernel symbols used and their versions.
The hard kernel Requires is not so much required as a courtesy. Yum will
resolve deps based on kernel symbols and do the right thing, but
sometimes it's more helpful to a user to see the kmod package requires
kernel >= 2.6.32-754.el6 than it is to see it requires
kernel(__x86_indirect_thunk_r10) = 0x7e526bfa. That said, it normally
ends up getting lost amongst all the other noise so users still end up
asking anyway. Looks like in this case we forgot to add/update the
requires - no biggie, it's cosmetic at best.
> Also worth noting is that if you compile these from the src.rpm, neither
> the 6_10 nor the 7_5 packages get the 6_10 or the 7_5 tag in the
> generated rpm. With the 7.4 packages you overwrote the Release parameter
> in the r8168-kmod.spec file.
>
Yes, we recently reverted this as others were rebuilding our SRPMs
without updating the dist tag and producing packages with 'elrepo' in
the release thus creating support load and headaches for us. We now set
dist as we see fit at build time. Similarly, you may do as you see fit
when you rebuild as they become your packages, not ours. The only thing
we ask is please do not use/replicate 'elrepo' in the release as they
are no longer elrepo packages.
More information about the elrepo
mailing list