The Linux kernel is the core component of any Linux operating system, managing hardware resources and system processes.
In this guide we will be installing Kernel 6.10.9, which has been released a while go, coming with changes.
Kernel 6.10.9 highlights:
- I2C Subsystem: Adjusted the conditional compilation of ACPI-related functions to use
IS_REACHABLE()
instead ofIS_ENABLED()
, ensuring proper function substitution whenCONFIG_I2C
is built as a module. - AMD GPU Driver: Removed redundant semicolons in the
RAS_EVENT_LOG
macro to resolve code format warnings, improving code quality and maintainability. - Memory Management: Modified
filemap_invalidate_inode()
to utilizeinvalidate_inode_pages2_range()
instead oftruncate_inode_pages_range()
, addressing issues with partial page invalidation that affected operations likecopy_file_range()
on CIFS filesystems. - Pin Control: Fixed an issue in
pinctrl_pins_show()
where thegpio_device
pointer was not reset correctly within a loop, preventing incorrect GPIO device associations in pin listings. - Media (UVC Video): Enforced alignment of frame and interval structures in the UVC video driver to prevent potential memory misalignments, enhancing video streaming stability.
In this guide we will be installing Kernel 6.10.9, which has been released a while go, bringing some fixes and enhancements only.
Check your current kernel version:
Before proceeding with the installation, verify your current kernel version by running:
uname -r
How to install Kernel 6.10.9 on Ubuntu, Linux Mint, Debian, and derivative systems (amd64/x86_64):
Step 1: Update Your System
Run the following commands to ensure your system is up to date:
sudo apt update && sudo apt upgrade -y
This will update your package list and upgrade all installed packages to their latest versions.
- What Does
apt update
Do?
This command updates the package list to reflect the latest versions available from your repositories. - What Does
apt upgrade
Do?
It upgrades all the packages that have new versions available while keeping existing dependencies intact.
Step 2: Download the Kernel 6.10.9 Packages
Download the necessary kernel packages from the official Ubuntu repositories or the kernel website:
wget -c https://kernel.ubuntu.com/mainline/v6.10.9/amd64/linux-headers-6.10.9-061009-generic_6.10.9-061009.202409080636_amd64.deb
wget -c https://kernel.ubuntu.com/mainline/v6.10.9/amd64/linux-headers-6.10.9-061009_6.10.9-061009.202409080636_all.deb
wget -c https://kernel.ubuntu.com/mainline/v6.10.9/amd64/linux-image-unsigned-6.10.9-061009-generic_6.10.9-061009.202409080636_amd64.deb
wget -c https://kernel.ubuntu.com/mainline/v6.10.9/amd64/linux-modules-6.10.9-061009-generic_6.10.9-061009.202409080636_amd64.deb
Step 3: Install the New Kernel
Install the downloaded packages using dpkg
:
sudo dpkg -i linux-headers-6.10*.deb linux-modules-6.10*.deb linux-image-6.10*.deb
Step 4: Update GRUB and Reboot
Once the kernel installation is complete, update GRUB to ensure the new kernel is recognized:
Regenerate the GRUB Configuration
Run the following command to update GRUB with the latest installed kernel:
sudo update-grub
Verify GRUB Configuration
To confirm that the new kernel has been detected, check the GRUB configuration:
cat /boot/grub/grub.cfg | grep 'menuentry'
This should list all available kernels, including Kernel 6.10.9.
Reboot the System
Restart your computer to apply the changes:
sudo reboot
- Select the New Kernel (if needed) – If the system doesn’t automatically boot into the new kernel, you can manually select it:
- Hold Shift or Esc during boot to access the GRUB menu.
- Navigate to Advanced options for Ubuntu.
- Choose the entry with Kernel 6.10.9.
- Press Enter to boot.
Verifying the Installed Kernel
After rebooting, confirm the new kernel version:
uname -r
Rolling Back to a Previous Kernel
If you encounter issues with the new kernel, you can revert to an older version:
- Reboot and Access the GRUB Menu -Restart your system and hold Shift or Esc to enter the GRUB boot menu.
- Select Advanced options for Ubuntu – Choose an older kernel version and boot into it.
- Remove Kernel 6.10.9 (if desired) – If you prefer to remove the new kernel permanently, run:
sudo apt remove linux-headers-6.10* linux-modules-6.10* linux-image-6.10*
sudo update-grub
sudo reboot
Conclusion
Linux Kernel 6.10.9 brings several refinements aimed at improving system stability, code maintainability, and hardware compatibility. The adjustments in the I2C subsystem ensure that ACPI-related functions behave correctly when built as a module, enhancing flexibility for modular kernel configurations. Additionally, small but meaningful improvements in the AMD GPU driver eliminate unnecessary syntax issues, contributing to cleaner and more maintainable code.
One of the most significant fixes in this release is the improvement to memory management, where filemap_invalidate_inode()
now properly handles partial page invalidation. This change resolves issues affecting operations like copy_file_range()
on CIFS filesystems, leading to better file handling performance in networked storage environments. Similarly, the correction in the pin control subsystem prevents incorrect GPIO device associations, which is particularly important for embedded and industrial applications.
Another key enhancement is in the UVC video driver, where proper alignment of frame and interval structures prevents potential memory misalignments. This update ensures more stable video streaming, benefiting users who rely on webcams and other UVC-compatible devices for communication and media capture.
Overall, Linux Kernel 6.10.9 is a well-rounded update that refines multiple subsystems, enhancing the performance and stability of Linux across a range of hardware configurations. Users, particularly those working with CIFS filesystems, GPIO devices, or UVC video hardware, should consider upgrading to take advantage of these improvements.
Pingback: How To Install Kernel 6.10.8 On Ubuntu, Debian And Derivative Systems - iDoLinux