In the Linux kernel, the following vulnerability has been resolved: f2fs: quota: fix to avoid warning in dquotwritebackdquots() F2FS-fs (dm-59): checkpoint=enable has some unwritten data. ------------[ cut here ]------------ WARNING: CPU: 6 PID: 8013 at fs/quota/dquot.c:691 dquotwritebackdquots+0x2fc/0x308 pc : dquotwritebackdquots+0x2fc/0x308 lr : f2fsquotasync+0xcc/0x1c4 Call trace: dquotwritebackdquots+0x2fc/0x308 f2fsquotasync+0xcc/0x1c4 f2fswritecheckpoint+0x3d4/0x9b0 f2fsissuecheckpoint+0x1bc/0x2c0 f2fssyncfs+0x54/0x150 f2fsdosyncfile+0x2f8/0x814 _f2fsioctl+0x1960/0x3244 f2fsioctl+0x54/0xe0 _arm64sysioctl+0xa8/0xe4 invokesyscall+0x58/0x114 checkpoint and f2fsremount may race as below, resulting triggering warning in dquotwritebackdquots(). atomic write remount - doremount - downwrite(&sb->sumount); - f2fsremount - ioctl - f2fsdosyncfile - f2fssyncfs - f2fswritecheckpoint - blockoperations - locked = downreadtrylock(&sbi->sb->sumount) : fail to lock due to the write lock was held by remount - upwrite(&sb->sumount); - f2fsquotasync - dquotwritebackdquots - WARNONONCE(!rwsemislocked(&sb->sumount)) : trigger warning because sumount lock was unlocked by remount If checkpoint comes from mount/umount/remount/freeze/quotactl, caller of checkpoint has already held sumount lock, calling dquotwritebackdquots() in the context should be safe. So let's record task to sbi->umountlock_holder, so that checkpoint can know whether the lock has held in the context or not by checking current w/ it. In addition, in order to not misrepresent caller of checkpoint, we should not allow to trigger async checkpoint for those callers: mount/umount/remount/ freeze/quotactl.
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.14.0-1005.5", "binary_name": "linux-buildinfo-6.14.0-1005-oem" }, { "binary_version": "6.14.0-1005.5", "binary_name": "linux-headers-6.14.0-1005-oem" }, { "binary_version": "6.14.0-1005.5", "binary_name": "linux-image-unsigned-6.14.0-1005-oem" }, { "binary_version": "6.14.0-1005.5", "binary_name": "linux-image-unsigned-6.14.0-1005-oem-dbgsym" }, { "binary_version": "6.14.0-1005.5", "binary_name": "linux-modules-6.14.0-1005-oem" }, { "binary_version": "6.14.0-1005.5", "binary_name": "linux-modules-ipu6-6.14.0-1005-oem" }, { "binary_version": "6.14.0-1005.5", "binary_name": "linux-modules-ipu7-6.14.0-1005-oem" }, { "binary_version": "6.14.0-1005.5", "binary_name": "linux-modules-iwlwifi-6.14.0-1005-oem" }, { "binary_version": "6.14.0-1005.5", "binary_name": "linux-modules-usbio-6.14.0-1005-oem" }, { "binary_version": "6.14.0-1005.5", "binary_name": "linux-modules-vision-6.14.0-1005-oem" }, { "binary_version": "6.14.0-1005.5", "binary_name": "linux-oem-6.14-headers-6.14.0-1005" }, { "binary_version": "6.14.0-1005.5", "binary_name": "linux-oem-6.14-tools-6.14.0-1005" }, { "binary_version": "6.14.0-1005.5", "binary_name": "linux-tools-6.14.0-1005-oem" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "7.6.0+6.14.0-22.22", "binary_name": "bpftool" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-bpf-dev" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-buildinfo-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-buildinfo-6.14.0-22-generic-64k" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-cloud-tools-6.14.0-22" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-cloud-tools-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-cloud-tools-common" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-doc" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-headers-6.14.0-22" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-headers-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-headers-6.14.0-22-generic-64k" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-image-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-image-6.14.0-22-generic-dbgsym" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-image-unsigned-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-image-unsigned-6.14.0-22-generic-64k" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-image-unsigned-6.14.0-22-generic-64k-dbgsym" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-image-unsigned-6.14.0-22-generic-dbgsym" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-lib-rust-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-libc-dev" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-modules-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-modules-6.14.0-22-generic-64k" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-modules-extra-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-modules-ipu6-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-modules-ipu7-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-modules-iwlwifi-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-modules-usbio-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-modules-vision-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-perf" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-source-6.14.0" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-tools-6.14.0-22" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-tools-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-tools-6.14.0-22-generic-64k" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-tools-common" }, { "binary_version": "6.14.0-22.22", "binary_name": "linux-tools-host" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.14.0-1007.7", "binary_name": "linux-azure-cloud-tools-6.14.0-1007" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-azure-headers-6.14.0-1007" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-azure-tools-6.14.0-1007" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-buildinfo-6.14.0-1007-azure" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-cloud-tools-6.14.0-1007-azure" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-headers-6.14.0-1007-azure" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-image-unsigned-6.14.0-1007-azure" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-image-unsigned-6.14.0-1007-azure-dbgsym" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-modules-6.14.0-1007-azure" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-modules-extra-6.14.0-1007-azure" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-tools-6.14.0-1007-azure" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.14.0-1008.8", "binary_name": "linux-buildinfo-6.14.0-1008-gcp" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-buildinfo-6.14.0-1008-gcp-64k" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-gcp-headers-6.14.0-1008" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-gcp-tools-6.14.0-1008" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-headers-6.14.0-1008-gcp" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-headers-6.14.0-1008-gcp-64k" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-image-unsigned-6.14.0-1008-gcp" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-image-unsigned-6.14.0-1008-gcp-64k" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-image-unsigned-6.14.0-1008-gcp-64k-dbgsym" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-image-unsigned-6.14.0-1008-gcp-dbgsym" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-modules-6.14.0-1008-gcp" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-modules-6.14.0-1008-gcp-64k" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-modules-extra-6.14.0-1008-gcp" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-modules-extra-6.14.0-1008-gcp-64k" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-tools-6.14.0-1008-gcp" }, { "binary_version": "6.14.0-1008.8", "binary_name": "linux-tools-6.14.0-1008-gcp-64k" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.14.0-1007.7", "binary_name": "linux-buildinfo-6.14.0-1007-raspi" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-headers-6.14.0-1007-raspi" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-image-6.14.0-1007-raspi" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-image-6.14.0-1007-raspi-dbgsym" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-modules-6.14.0-1007-raspi" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-raspi-headers-6.14.0-1007" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-raspi-tools-6.14.0-1007" }, { "binary_version": "6.14.0-1007.7", "binary_name": "linux-tools-6.14.0-1007-raspi" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.14.0-1004.4", "binary_name": "linux-buildinfo-6.14.0-1004-realtime" }, { "binary_version": "6.14.0-1004.4", "binary_name": "linux-cloud-tools-6.14.0-1004-realtime" }, { "binary_version": "6.14.0-1004.4", "binary_name": "linux-headers-6.14.0-1004-realtime" }, { "binary_version": "6.14.0-1004.4", "binary_name": "linux-image-unsigned-6.14.0-1004-realtime" }, { "binary_version": "6.14.0-1004.4", "binary_name": "linux-image-unsigned-6.14.0-1004-realtime-dbgsym" }, { "binary_version": "6.14.0-1004.4", "binary_name": "linux-modules-6.14.0-1004-realtime" }, { "binary_version": "6.14.0-1004.4", "binary_name": "linux-modules-extra-6.14.0-1004-realtime" }, { "binary_version": "6.14.0-1004.4", "binary_name": "linux-modules-iwlwifi-6.14.0-1004-realtime" }, { "binary_version": "6.14.0-1004.4", "binary_name": "linux-realtime-cloud-tools-6.14.0-1004" }, { "binary_version": "6.14.0-1004.4", "binary_name": "linux-realtime-headers-6.14.0-1004" }, { "binary_version": "6.14.0-1004.4", "binary_name": "linux-realtime-tools-6.14.0-1004" }, { "binary_version": "6.14.0-1004.4", "binary_name": "linux-tools-6.14.0-1004-realtime" } ] }
{ "availability": "No subscription required", "ubuntu_priority": "medium", "binaries": [ { "binary_version": "6.14.0-22.22.1", "binary_name": "linux-buildinfo-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22.1", "binary_name": "linux-headers-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22.1", "binary_name": "linux-image-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22.1", "binary_name": "linux-image-6.14.0-22-generic-dbgsym" }, { "binary_version": "6.14.0-22.22.1", "binary_name": "linux-modules-6.14.0-22-generic" }, { "binary_version": "6.14.0-22.22.1", "binary_name": "linux-riscv-headers-6.14.0-22" }, { "binary_version": "6.14.0-22.22.1", "binary_name": "linux-riscv-tools-6.14.0-22" }, { "binary_version": "6.14.0-22.22.1", "binary_name": "linux-tools-6.14.0-22-generic" } ] }