rpms/kernel/F-9 linux-2.6-ext4-ENOSPC-debug.patch, NONE, 1.1.2.1 config-x86-generic, 1.38.2.1, 1.38.2.2 kernel.spec, 1.891.2.27, 1.891.2.28
Chuck Ebbert
cebbert at fedoraproject.org
Sat Feb 21 23:47:34 UTC 2009
Author: cebbert
Update of /cvs/pkgs/rpms/kernel/F-9
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv21380
Modified Files:
Tag: private-fedora-9-2_6_27-branch
config-x86-generic kernel.spec
Added Files:
Tag: private-fedora-9-2_6_27-branch
linux-2.6-ext4-ENOSPC-debug.patch
Log Message:
Set X86_MSR=y and X86_CPUID=y on 32-bit kernel.
Copy ext4 ENOSPC fix from rawhide.
linux-2.6-ext4-ENOSPC-debug.patch:
--- NEW FILE linux-2.6-ext4-ENOSPC-debug.patch ---
Author: Theodore Ts'o <tytso at mit.edu>
Date: Mon Feb 16 13:51:16 2009 -0500
ext4: Add fallback for find_group_flex
This is a workaround for find_group_flex() which badly needs to be
replaced. One of its problems (besides ignoring the Orlov algorithm)
is that it is a bit hyperactive about returning failure under
suspicious circumstances. This can lead to spurious ENOSPC failures.
Work around this for now by retrying the search using
find_group_other() if find_group_flex() returns -1. If
find_group_other() succeeds when find_group_flex(), log a warning
message. I can't quite find the motivation to spend effort working on
fixing find_group_flex() given that I want to replace it all anyway
(and in fact work on the replacement code is underway), so we may
leave the workaround for as long as find_group_flex() stays in the
kernel...
Signed-off-by: "Theodore Ts'o" <tytso at mit.edu>
XXX ERS: Remove printk, it's too much noise now, we got the bug reports
diff --git a/fs/ext4/ialloc.c b/fs/ext4/ialloc.c
index a200059..21080ab 100644
--- a/fs/ext4/ialloc.c
+++ b/fs/ext4/ialloc.c
@@ -715,6 +715,8 @@ struct inode *ext4_new_inode(handle_t *handle, struct inode *dir, int mode)
if (sbi->s_log_groups_per_flex) {
ret2 = find_group_flex(sb, dir, &group);
+ if (ret2 == -1)
+ ret2 = find_group_other(sb, dir, &group);
goto got_group;
}
Index: config-x86-generic
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-9/config-x86-generic,v
retrieving revision 1.38.2.1
retrieving revision 1.38.2.2
diff -u -r1.38.2.1 -r1.38.2.2
--- config-x86-generic 11 Feb 2009 00:07:44 -0000 1.38.2.1
+++ config-x86-generic 21 Feb 2009 23:46:58 -0000 1.38.2.2
@@ -65,8 +65,8 @@
CONFIG_SONYPI=m
CONFIG_SONYPI_COMPAT=y
CONFIG_MICROCODE=m
-CONFIG_X86_MSR=m
-CONFIG_X86_CPUID=m
+CONFIG_X86_MSR=y
+CONFIG_X86_CPUID=y
CONFIG_EDD=m
# CONFIG_EDD_OFF is not set
# CONFIG_NUMA is not set
Index: kernel.spec
===================================================================
RCS file: /cvs/pkgs/rpms/kernel/F-9/kernel.spec,v
retrieving revision 1.891.2.27
retrieving revision 1.891.2.28
diff -u -r1.891.2.27 -r1.891.2.28
--- kernel.spec 21 Feb 2009 01:24:41 -0000 1.891.2.27
+++ kernel.spec 21 Feb 2009 23:46:59 -0000 1.891.2.28
@@ -733,6 +733,7 @@
Patch2902: linux-2.6.27-ext4-rename-ext4dev-to-ext4.patch
Patch2903: linux-2.6.27.9-ext4-cap-check-delay.patch
+Patch2904: linux-2.6-ext4-ENOSPC-debug.patch
# Add better support for DMI-based autoloading
Patch3110: linux-2.6-dmi-autoload.patch
@@ -1306,6 +1307,7 @@
# Filesystem patches
ApplyPatch linux-2.6.27-ext4-rename-ext4dev-to-ext4.patch
ApplyPatch linux-2.6.27.9-ext4-cap-check-delay.patch
+ApplyPatch linux-2.6-ext4-ENOSPC-debug.patch
# linux1394 git patches
ApplyPatch linux-2.6-firewire-git-update.patch
@@ -1921,6 +1923,10 @@
%kernel_variant_files -a /%{image_install_path}/xen*-%{KVERREL}.xen -e /etc/ld.so.conf.d/kernelcap-%{KVERREL}.xen.conf %{with_xen} xen
%changelog
+* Sat Feb 21 2009 Chuck Ebbert <cebbert at redhat.com> 2.6.27.19-78.2.28
+- Set X86_MSR=y and X86_CPUID=y on 32-bit kernel.
+- Copy ext4 ENOSPC fix from rawhide.
+
* Sat Feb 21 2009 Chuck Ebbert <cebbert at redhat.com> 2.6.27.19-78.2.27
- Fix bug in x86-64 syscall error handling. (F10#484871)
- Fix e1000e Tx unit hang.
More information about the fedora-extras-commits
mailing list