You are not logged in.
Hello-
I wanted this to be out there on the web so that people could find it. I'm not sure if this could be considered a 'bug' for catalyst hook or for.. something, or if it is expected behavior.
I ran pacman -Suy on my system today, and ran into errors about catalyst hook failing.
Closer inspection indicated that it was trying to build based on headers of the version of linux that had just been removed, but the new linux headers hadn't been installed yet (after the hooks ran, then the linux-headers were installed)
If you see this error during an upgrade, to resolve the issue simply run mkinitcpio -p linux after the install completes.
Below you can see log/errors/progression
[dylan@shoparch ~]$ sudo pacman -Suy
:: Synchronizing package databases...
catalyst is up to date
core 105.8 KiB 175K/s 00:01 [######################] 100%
extra 1522.0 KiB 1221K/s 00:01 [######################] 100%
community 2.0 MiB 1184K/s 00:02 [######################] 100%
:: Starting full system upgrade...
resolving dependencies...
looking for inter-conflicts...
Packages (11): chromium-31.0.1650.63-1 grub-1:2.00.1282.g5ae5c54-1
gtk3-3.10.6-1 jasper-1.900.1-10 libpipeline-1.2.5-1
libvpx-1.3.0-1 linux-3.12.3-1 linux-headers-3.12.3-1
lua-5.2.3-1 opus-1.1-1 python2-setuptools-1.4.2-1
Total Download Size: 99.26 MiB
Total Installed Size: 314.59 MiB
Net Upgrade Size: 4.49 MiB
:: Proceed with installation? [Y/n] y
:: Retrieving packages ...
grub-1:2.00.1282.g5... 5.2 MiB 1438K/s 00:04 [######################] 100%
libpipeline-1.2.5-1... 34.9 KiB 6.82M/s 00:00 [######################] 100%
linux-3.12.3-1-x86_64 49.9 MiB 3.29M/s 00:15 [######################] 100%
linux-headers-3.12.... 5.8 MiB 1890K/s 00:03 [######################] 100%
opus-1.1-1-x86_64 175.2 KiB 1734K/s 00:00 [######################] 100%
chromium-31.0.1650.... 29.0 MiB 2.66M/s 00:11 [######################] 100%
gtk3-3.10.6-1-x86_64 7.9 MiB 2.97M/s 00:03 [######################] 100%
jasper-1.900.1-10-x... 159.8 KiB 181K/s 00:01 [######################] 100%
libvpx-1.3.0-1-x86_64 620.0 KiB 764K/s 00:01 [######################] 100%
lua-5.2.3-1-x86_64 195.9 KiB 1555K/s 00:00 [######################] 100%
python2-setuptools-... 331.9 KiB 1495K/s 00:00 [######################] 100%
(11/11) checking keys in keyring [######################] 100%
(11/11) checking package integrity [######################] 100%
(11/11) loading package files [######################] 100%
(11/11) checking for file conflicts [######################] 100%
(11/11) checking available disk space [######################] 100%
( 1/11) upgrading opus [######################] 100%
( 2/11) upgrading chromium [######################] 100%
( 3/11) upgrading grub [######################] 100%
( 4/11) upgrading gtk3 [######################] 100%
( 5/11) upgrading jasper [######################] 100%
New optional dependencies for jasper
freeglut: for jiv support [installed]
glu: for jiv support [installed]
( 6/11) upgrading libpipeline [######################] 100%
( 7/11) upgrading libvpx [######################] 100%
( 8/11) upgrading linux [######################] 100%
>>> Updating module dependencies. Please wait ...
>>> Generating initial ramdisk, using mkinitcpio. Please wait...
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux.img
==> Starting build: 3.12.3-1-ARCH
-> Running build hook: [base]
-> Running build hook: [udev]
-> Running build hook: [autodetect]
-> Running build hook: [modconf]
-> Running build hook: [block]
-> Running build hook: [mdadm_udev]
Custom /etc/mdadm.conf file will be used in initramfs for assembling arrays.
-> Running build hook: [filesystems]
-> Running build hook: [keyboard]
-> Running build hook: [fsck]
-> Running build hook: [fglrx]
Building fglrx module for 3.12.3-1-ARCH kernel ...
Failed!!! Check out log: /var/log/catalyst-install.log
- /usr/lib/modules/3.12.2-1-ARCH looks like unused, maybe remove it manualy?
==> Generating module dependencies
==> Creating gzip initcpio image: /boot/initramfs-linux.img
==> Image generation successful
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'fallback'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-fallback.img -S autodetect
==> Starting build: 3.12.3-1-ARCH
-> Running build hook: [base]
-> Running build hook: [udev]
-> Running build hook: [modconf]
-> Running build hook: [block]
==> WARNING: Possibly missing firmware for module: aic94xx
==> WARNING: Possibly missing firmware for module: smsmdtv
-> Running build hook: [mdadm_udev]
Custom /etc/mdadm.conf file will be used in initramfs for assembling arrays.
-> Running build hook: [filesystems]
-> Running build hook: [keyboard]
-> Running build hook: [fsck]
-> Running build hook: [fglrx]
Building fglrx module for 3.12.3-1-ARCH kernel ...
Failed!!! Check out log: /var/log/catalyst-install.log
- /usr/lib/modules/3.12.2-1-ARCH looks like unused, maybe remove it manualy?
==> Generating module dependencies
==> Creating gzip initcpio image: /boot/initramfs-linux-fallback.img
==> Image generation successful
( 9/11) upgrading linux-headers [######################] 100%
(10/11) upgrading lua [######################] 100%
(11/11) upgrading python2-setuptools [######################] 100%
[dylan@shoparch ~]$ less /var/log/catalyst-install.log
--------
2013-12-08 10:51:04
Building fglrx module for 3.12.3-1-ARCH kernel ...
--------
Kernel header files are absent: directory /usr/lib/modules/3.12.3-1-ARCH/build doesn't exist! Game over
--------
2013-12-08 10:51:12
Building fglrx module for 3.12.3-1-ARCH kernel ...
--------
Kernel header files are absent: directory /usr/lib/modules/3.12.3-1-ARCH/build doesn't exist! Game over
[dylan@shoparch ~]$ sudo mkinitcpio -p linux
[sudo] password for dylan:
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'default'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux.img
==> Starting build: 3.12.3-1-ARCH
-> Running build hook: [base]
-> Running build hook: [udev]
-> Running build hook: [autodetect]
-> Running build hook: [modconf]
-> Running build hook: [block]
-> Running build hook: [mdadm_udev]
Custom /etc/mdadm.conf file will be used in initramfs for assembling arrays.
-> Running build hook: [filesystems]
-> Running build hook: [keyboard]
-> Running build hook: [fsck]
-> Running build hook: [fglrx]
Building fglrx module for 3.12.3-1-ARCH kernel ...
Ok.
==> Generating module dependencies
==> Creating gzip initcpio image: /boot/initramfs-linux.img
==> Image generation successful
==> Building image from preset: /etc/mkinitcpio.d/linux.preset: 'fallback'
-> -k /boot/vmlinuz-linux -c /etc/mkinitcpio.conf -g /boot/initramfs-linux-fallback.img -S autodetect
==> Starting build: 3.12.3-1-ARCH
-> Running build hook: [base]
-> Running build hook: [udev]
-> Running build hook: [modconf]
-> Running build hook: [block]
==> WARNING: Possibly missing firmware for module: aic94xx
==> WARNING: Possibly missing firmware for module: smsmdtv
-> Running build hook: [mdadm_udev]
Custom /etc/mdadm.conf file will be used in initramfs for assembling arrays.
-> Running build hook: [filesystems]
-> Running build hook: [keyboard]
-> Running build hook: [fsck]
-> Running build hook: [fglrx]
Building fglrx module for 3.12.3-1-ARCH kernel ...
Ok.
==> Generating module dependencies
==> Creating gzip initcpio image: /boot/initramfs-linux-fallback.img
==> Image generation successful
Last edited by thenextdon13 (2014-01-01 20:21:37)
Offline
Offline
@thenextdon13: If you are using the catalyst-hook.service service, then this is not an issue because the service will (most of the time) detect that the kernel module versions don't match the version installed and build them before the machine powers down.
If that doesn't convince you, then you can either run:
mkinitcpio -p linux
or
catalyst_build_module all
Claire is fine.
Problems? I have dysgraphia, so clear and concise please.
My public GPG key for package signing
My x86_64 package repository
Offline
Karol-
That thread doesn't seem to be closed, and the thread it points to doesn't appear to really have a solution either, unless i'm missing something.
clfarron4;
I have this service running, but was concerned by the error message that i wouldn't have gui (and would have to drag out my laptop to do troubleshooting) upon reboot. Next time I will let it be and make sure the service works correctly
That said, I _did_ fix the distrust (or in this case non-rememberance) by running mkinitcpio -p linux. Initial post has this detail in it.
[dylan@shoparch ~]$ sudo systemctl status catalyst-hook.service
[sudo] password for dylan:
catalyst-hook.service - Catalyst's fglrx kernel' module builder
Loaded: loaded (/usr/lib/systemd/system/catalyst-hook.service; enabled)
Active: active (exited) since Sun 2013-12-08 15:50:36 PST; 25min ago
Process: 269 ExecStart=/bin/true (code=exited, status=0/SUCCESS)
Main PID: 269 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/catalyst-hook.service
Dec 08 15:50:36 shoparch systemd[1]: Started Catalyst's fglrx kernel' module builder.
[dylan@shoparch ~]$
Offline
There are no solutions yet. Running 'mkinitcpio -p linux' is good enough for me.
Offline
I run the latter of the two commands I suggested because I often update two kernels at the same time.
I did ask Allan McCrae on Google+ whether the SyncFirst option would ever be put back into pacman, and the answer was NO. So, we have to do it this way (unless someone comes up with a better way).
Claire is fine.
Problems? I have dysgraphia, so clear and concise please.
My public GPG key for package signing
My x86_64 package repository
Offline
I install the headers first, then do pacman -Syu and everything works out fine.
Offline
This issue is not specific to catalyst. It will occur if you have any modules that have to be built with each kernel update (Virtual Box is another example). I do actually consider it a bug. Pacman should always install the headers before the kernel when headers are included in the transaction. It doesn't make much sense to have to run mkinitcpio manually after a kernel upgrade (when it can be easily avoided). I have gotten in the habit of first upgrading the headers and then doing the full system upgrade afterwards Not a solution to the problem, of course, but I digress ;-)
Offline
Only to add a different perspective, the 'Pacman Hooks' could be a solution to this problem. Rebuilding of the initramfs with mkinitcpio would be postponed to the end of the transaction, after the linux-headers package was upgraded.
https://wiki.archlinux.org/index.php/Us … cman_Hooks
Offline
Only to add a different perspective, the 'Pacman Hooks' could be a solution to this problem. Rebuilding of the initramfs with mkinitcpio would be postponed to the end of the transaction, after the linux-headers package was upgraded.
https://wiki.archlinux.org/index.php/Us … cman_Hooks
Uggh. So close, and yet you've missed the point entirely. Once this is implemented, you won't need to abuse mkinitcpio to trigger module builds because it'll be just another post transaction hook...
Last edited by falconindy (2013-12-14 17:11:21)
Offline
teateawhy wrote:Only to add a different perspective, the 'Pacman Hooks' could be a solution to this problem. Rebuilding of the initramfs with mkinitcpio would be postponed to the end of the transaction, after the linux-headers package was upgraded.
https://wiki.archlinux.org/index.php/Us … cman_HooksUggh. So close, and yet you've missed the point entirely. Once this is implemented, you won't need to abuse mkinitcpio to trigger module builds because it'll be just another post transaction hook...
Until then, we have the catalyst-hook service.
Claire is fine.
Problems? I have dysgraphia, so clear and concise please.
My public GPG key for package signing
My x86_64 package repository
Offline
Thanks, all-
Indeed- even with the 'failed' message, catalyst hook appears to run and compile the module for the new kernel as expected.
The machine boots and the drivers work as expected.
Marking as solved in initial posting.
Offline