[CentOS] kABI-tracking kmod-xfs for CentOS-4 (Was: Preventing hour-long fsck on ext3-filesystem)

Wed May 27 15:24:33 UTC 2009
Akemi Yagi <amyagi at gmail.com>

On Tue, May 26, 2009 at 1:51 PM, Tru Huynh <tru at centos.org> wrote:
> On Tue, May 26, 2009 at 08:16:42AM -0700, Akemi Yagi wrote:
>> Here is the updated version:
>>
>> http://centos.toracat.org/kmods/CentOS-4/xfs/SRPMS/
>>
>> Please discard the obsoleted ones (I did not bump the version/release
>> number).  Let me know when your binaries are ready for testing.
>>
> rebuilds and uploaded.

* Downloaded from http://people.centos.org/tru/kABI/4/RPMS/ and did
some test installs.

First, installed the kernel version specific
kmod-xfs-0.4-1.el4.2.6.9_78.0.22 to the test box and then installed
the current kABI-tracking kmod-xfs-0.4-2.el4.  It successfully
replaced the xfs.ko installed by the former and created symlinks to
other installed kernels correctly.

Second, installed the current kmod-xfs to an older kernel and then
updated the kernel.  Upon reboot, a new symlink was created for the
newly installed kernel successfully.

Third, confirmed that the kABI-tracking kmod-xfs recognized centosplus
kernels as expected (even -vm kernels).  One example of such symlinks:

$ uname -mr
2.6.9-78.0.22.plus.c4 i686

$ ls -l `find /lib/modules -name xfs.ko`
lrwxrwxrwx  1 root root     46 May 26 18:20
/lib/modules/2.6.9-67.0.1.EL.plus.c4/weak-updates/xfs/xfs.ko ->
/lib/modules/2.6.9-78.0.22.EL/extra/xfs/xfs.ko
lrwxrwxrwx  1 root root     46 May 26 18:20
/lib/modules/2.6.9-67.0.22.ELvm/weak-updates/xfs/xfs.ko ->
/lib/modules/2.6.9-78.0.22.EL/extra/xfs/xfs.ko
lrwxrwxrwx  1 root root     46 May 26 18:20
/lib/modules/2.6.9-67.0.4.plus.c4/weak-updates/xfs/xfs.ko ->
/lib/modules/2.6.9-78.0.22.EL/extra/xfs/xfs.ko
lrwxrwxrwx  1 root root     46 May 26 18:20
/lib/modules/2.6.9-78.0.1.ELvm/weak-updates/xfs/xfs.ko ->
/lib/modules/2.6.9-78.0.22.EL/extra/xfs/xfs.ko
lrwxrwxrwx  1 root root     46 May 26 18:20
/lib/modules/2.6.9-78.0.1.plus.c4/weak-updates/xfs/xfs.ko ->
/lib/modules/2.6.9-78.0.22.EL/extra/xfs/xfs.ko
-rw-r--r--  1 root root 598576 May 26 13:07
/lib/modules/2.6.9-78.0.22.EL/extra/xfs/xfs.ko
lrwxrwxrwx  1 root root     46 May 26 18:34
/lib/modules/2.6.9-78.0.22.plus.c4/weak-updates/xfs/xfs.ko ->
/lib/modules/2.6.9-78.0.22.EL/extra/xfs/xfs.ko
lrwxrwxrwx  1 root root     46 May 26 18:20
/lib/modules/2.6.9-78.0.5.EL/weak-updates/xfs/xfs.ko ->
/lib/modules/2.6.9-78.0.22.EL/extra/xfs/xfs.ko
lrwxrwxrwx  1 root root     46 May 26 18:20
/lib/modules/2.6.9-78.0.5.plus.c4/weak-updates/xfs/xfs.ko ->
/lib/modules/2.6.9-78.0.22.EL/extra/xfs/xfs.ko
lrwxrwxrwx  1 root root     46 May 26 18:20
/lib/modules/2.6.9-78.0.8.plus.c4/weak-updates/xfs/xfs.ko ->
/lib/modules/2.6.9-78.0.22.EL/extra/xfs/xfs.ko
lrwxrwxrwx  1 root root     46 May 26 18:20
/lib/modules/2.6.9-78.plus.c4/weak-updates/xfs/xfs.ko ->
/lib/modules/2.6.9-78.0.22.EL/extra/xfs/xfs.ko

* I can only test installs/uninstalls.  If someone can test it by
actually *using* it, that will be great.  I did not touch the code, so
it should work. Nevertheless...

* Some side note

In the current kmod-xfs, modules are partially strip'ed.  This has a
dramatic effect on the size of the modules (hence the packages
themselves).  For example, the obsoleted rpm's were this big:

3413556 May 25 16:50 kmod-xfs-0.4-2.el4.i686.rpm
 3500186 May 25 16:50 kmod-xfs-0.4-2.el4.x86_64.rpm

The current packages are:

299042 May 26 13:23 kmod-xfs-0.4-2.el4.i686.rpm
308712 May 26 13:23 kmod-xfs-0.4-2.el4.x86_64.rpm

All in-kernel modules are strip'ed during compilation.  While it is
not required, I think it's better to process the kmods the same way.

Akemi