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