Re: Centos 6 Update?

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



On 04/08/2011 07:25 AM, Ian Murray wrote:
> 
> 
>>
>> As I seem to  have started this little subsection of the thread, please 
>> let me give just  one small example to help clarify the situation as it 
>> appears there is still  a lot of misunderstanding surrounding this issue.
>>
>> Let's look at kernel  modules, kmod packages. They are built against one 
>> specific kernel and then  weak link against all other kernels that are 
>> kABI compatible. For example,  in CentOS 5.6,
>> kmod-gfs is built against the 5.6 base release  kernel:
>>
>> $ rpm -qlp  kmod-gfs-0.1.34-15.el5.centos.x86_64.rpm
>> /lib/modules/2.6.18-238.el5
>> /lib/modules/2.6.18-238.el5/extra
>> /lib/modules/2.6.18-238.el5/extra/gfs
>> /lib/modules/2.6.18-238.el5/extra/gfs/gfs.ko
>>
>> but  when we compare that to the upstream package:
>>
>> $ rpm -qlp  kmod-gfs-0.1.34-15.el5.x86_64.rpm
>> /lib/modules/2.6.18-223.el5
>> /lib/modules/2.6.18-223.el5/extra
>> /lib/modules/2.6.18-223.el5/extra/gfs
>> /lib/modules/2.6.18-223.el5/extra/gfs/gfs.ko
>>
>> we  see it's been built against a 2.6.18-223.el5 kernel. This was a beta 
>> kernel  and was never officially released so CentOS has no way to rebuild 
>> their  package against this kernel. Hence, not 100% binary compatible.
>>
>> There is  absolutely NO responsibility on Red Hat to release that kernel 
>> that was part  of their build environment.
>>
>> The package builds fine for CentOS against  the release kernel. In all 
>> likelihood it will function identically to the  upstream packages, but 
>> there is always a possibility that some weird  corner-case bug will 
>> affect one package that doesn't affect the  other.
>>
>> This situation with kmod packages is not at all uncommon as Red  Hat 
>> invariably release kmods built against pre-release kernels and don't 
>> rebuild them against the release kernel for GA. There are other examples 
>> where packages might have been built against an unreleased version of 
>> glibc or whatever but again these packages generally function fine, and 
>> identically to upstream, but there is always a very small possibility 
>> they might not function identically bug for bug. That's not to say the 
>> RHEL package is any more right or wrong than the CentOS package, just 
>> that they are different and hence by definition not 100% binary  compatible.
>>
>> I hope that helps clarify some of the confusion surrounding  this issue.
>>
> 
> According to wikipedia....
> 
> "In computing, a computer that can run the same binary code intended to be run 
> on another computer is said to be binary-compatible."
> 
> By this definition a well written emulator and the emulated machine are 
> "binary-compatible", yet the build environments and other under the hood stuff 
> can and are wildly different. So "different" does not mean it is not binary 
> compatible.
> 
> Is CentOS working to a different definition? e.g. byte for byte identical (save 
> for trademarks). Maybe that is the only way to reduce the risk of 
> incompatibility, I don't know. 

The goal of the centos project is to produce an RPM that is exactly like
the upstream RPM in every way that is legally possible.

The checks we do look at libraries that binaries link to, size of the
packages and a list of the files the RPM installs.

We would like for all RPMS to be 100%, some (like the example above) are
not able to be linked against the same environment.

Upstream sometimes uses non released gcc's for compiling or they
sometimes build with non-released kernels or non released glibc's etc.
In those cases, we will do the best we can.

We do check these issues as part of the QA process and we do address
each one that we can.

Attachment: signature.asc
Description: OpenPGP digital signature

_______________________________________________
CentOS mailing list
CentOS@xxxxxxxxxx
http://lists.centos.org/mailman/listinfo/centos

[Index of Archives]     [CentOS]     [CentOS Announce]     [CentOS Development]     [CentOS ARM Devel]     [CentOS Docs]     [CentOS Virtualization]     [Carrier Grade Linux]     [Linux Media]     [Asterisk]     [DCCP]     [Netdev]     [Xorg]     [Linux USB]
  Powered by Linux