Whamcloud - gitweb
LU-1477 kernel: Kernel update [RHEL6.3 2.6.32-279.2.1.el6]
authoryangsheng <ys@whamcloud.com>
Thu, 26 Jul 2012 16:52:18 +0000 (00:52 +0800)
committerOleg Drokin <green@whamcloud.com>
Tue, 7 Aug 2012 13:26:21 +0000 (09:26 -0400)
Add support for RHEL6.3 kernel 2.6.32-279.2.1.el6.

Signed-off-by: yang sheng <ys@whamcloud.com>
Change-Id: I1db26247beff1af667d23858a65e0b8d85888485
Reviewed-on: http://review.whamcloud.com/3467
Tested-by: Hudson
Reviewed-by: Fan Yong <yong.fan@whamcloud.com>
Reviewed-by: James Simmons <uja.ornl@gmail.com>
Tested-by: Maloo <whamcloud.maloo@gmail.com>
Reviewed-by: Oleg Drokin <green@whamcloud.com>
14 files changed:
ldiskfs/kernel_patches/patches/ext4-export-64bit-name-hash.patch
ldiskfs/kernel_patches/patches/ext4-mmp-rhel6.patch
ldiskfs/kernel_patches/series/ldiskfs-2.6-rhel6.series
lustre/ChangeLog
lustre/include/linux/obd_class.h
lustre/kernel_patches/kernel_configs/kernel-2.6.32-2.6-rhel6-i686.config
lustre/kernel_patches/kernel_configs/kernel-2.6.32-2.6-rhel6-x86_64.config
lustre/kernel_patches/patches/dev_read_only-2.6.32-rhel6.patch
lustre/kernel_patches/patches/raid5-mmp-unplug-dev-rhel6.patch
lustre/kernel_patches/targets/2.6-rhel6.target.in
lustre/kernel_patches/which_patch
lustre/obdclass/hash.c
lustre/osd-ldiskfs/osd_handler.c
lustre/osd-ldiskfs/osd_internal.h

index c7e01f4..f916733 100644 (file)
@@ -1,8 +1,7 @@
-Index: linux-stage/fs/ext4/dir.c
-===================================================================
---- linux-stage.orig/fs/ext4/dir.c     2011-04-19 01:02:34.000000000 +0800
-+++ linux-stage/fs/ext4/dir.c  2011-04-19 01:24:36.000000000 +0800
-@@ -242,22 +242,50 @@
+diff -urp linux-stage.orig/fs/ext4/dir.c linux-stage/fs/ext4/dir.c
+--- linux-stage.orig/fs/ext4/dir.c     2012-06-21 10:26:23.000000000 -0400
++++ linux-stage/fs/ext4/dir.c  2012-06-21 10:37:39.000000000 -0400
+@@ -247,22 +247,63 @@ out:
        return ret;
  }
 
@@ -17,7 +16,8 @@ Index: linux-stage/fs/ext4/dir.c
 +
  /*
   * These functions convert from the major/minor hash to an f_pos
-  * value.
+- * value.
++ * value for dx directories.
   *
 - * Currently we only use major hash numer.  This is unfortunate, but
 - * on 32-bit machines, the same VFS interface is used for lseek and
@@ -27,44 +27,57 @@ Index: linux-stage/fs/ext4/dir.c
 - * a 64-bit version of the system call or the 32-bit version of the
 - * system call.  Worse yet, NFSv2 only allows for a 32-bit readdir
 - * cookie.  Sigh.
-+ * Up layer (OSD) should specify O_32BITHASH or O_64BITHASH explicitly.
-+ * On the other hand, we allow ldiskfs to be mounted directly on both 32-bit
-+ * and 64-bit nodes, under such case, neither O_32BITHASH nor O_64BITHASH is
-+ * specified.
-  */
--#define hash2pos(major, minor)        (major >> 1)
--#define pos2maj_hash(pos)     ((pos << 1) & 0xffffffff)
--#define pos2min_hash(pos)     (0)
++ * Upper layer (for example NFS) should specify FMODE_32BITHASH or
++ * FMODE_64BITHASH explicitly. On the other hand, we allow ext4 to be mounted
++ * directly on both 32-bit and 64-bit nodes, under such case, neither
++ * FMODE_32BITHASH nor FMODE_64BITHASH is specified.
++ */
 +static inline loff_t hash2pos(struct file *filp, __u32 major, __u32 minor)
 +{
-+      if ((filp->f_flags & O_32BITHASH) ||
-+          (!(filp->f_flags & O_64BITHASH) && is_32bit_api()))
-+              return (major >> 1);
++      if ((filp->f_mode & FMODE_32BITHASH) ||
++          (!(filp->f_mode & FMODE_64BITHASH) && is_32bit_api()))
++              return major >> 1;
 +      else
-+              return (((__u64)(major >> 1) << 32) | (__u64)minor);
++              return ((__u64)(major >> 1) << 32) | (__u64)minor;
 +}
 +
 +static inline __u32 pos2maj_hash(struct file *filp, loff_t pos)
 +{
-+      if ((filp->f_flags & O_32BITHASH) ||
-+          (!(filp->f_flags & O_64BITHASH) && is_32bit_api()))
-+              return ((pos << 1) & 0xffffffff);
++      if ((filp->f_mode & FMODE_32BITHASH) ||
++          (!(filp->f_mode & FMODE_64BITHASH) && is_32bit_api()))
++              return (pos << 1) & 0xffffffff;
 +      else
-+              return (((pos >> 32) << 1) & 0xffffffff);
++              return ((pos >> 32) << 1) & 0xffffffff;
 +}
 +
 +static inline __u32 pos2min_hash(struct file *filp, loff_t pos)
 +{
-+      if ((filp->f_flags & O_32BITHASH) ||
-+          (!(filp->f_flags & O_64BITHASH) && is_32bit_api()))
-+              return (0);
++      if ((filp->f_mode & FMODE_32BITHASH) ||
++          (!(filp->f_mode & FMODE_64BITHASH) && is_32bit_api()))
++              return 0;
 +      else
-+              return (pos & 0xffffffff);
++              return pos & 0xffffffff;
 +}
++
++/*
++ * Return 32- or 64-bit end-of-file for dx directories
+  */
+-#define hash2pos(major, minor)        (major >> 1)
+-#define pos2maj_hash(pos)     ((pos << 1) & 0xffffffff)
+-#define pos2min_hash(pos)     (0)
++static inline loff_t ext4_get_htree_eof(struct file *filp)
++{
++      if ((filp->f_mode & FMODE_32BITHASH) ||
++          (!(filp->f_mode & FMODE_64BITHASH) && is_32bit_api()))
++              return EXT4_HTREE_EOF_32BIT;
++      else
++              return EXT4_HTREE_EOF_64BIT;
++}
++
  
  /*
   * This structure holds the nodes of the red-black tree used to store
-@@ -318,15 +346,16 @@
+@@ -323,15 +364,16 @@ static void free_rb_tree_fname(struct rb
  }
  
  
@@ -84,7 +97,7 @@ Index: linux-stage/fs/ext4/dir.c
        return p;
  }
  
-@@ -422,7 +451,7 @@
+@@ -427,7 +469,7 @@ static int call_filldir(struct file *fil
                       "null fname?!?\n");
                return 0;
        }
@@ -93,7 +106,7 @@ Index: linux-stage/fs/ext4/dir.c
        while (fname) {
                error = filldir(dirent, fname->name,
                                fname->name_len, curr_pos,
-@@ -447,7 +476,7 @@
+@@ -452,13 +494,13 @@ static int ext4_dx_readdir(struct file *
        int     ret;
  
        if (!info) {
@@ -102,7 +115,14 @@ Index: linux-stage/fs/ext4/dir.c
                if (!info)
                        return -ENOMEM;
                filp->private_data = info;
-@@ -461,8 +490,8 @@
+       }
+
+-      if (filp->f_pos == EXT4_HTREE_EOF)
++      if (filp->f_pos == ext4_get_htree_eof(filp))
+               return 0;       /* EOF */
+
+       /* Some one has messed with f_pos; reset the world */
+@@ -466,8 +508,8 @@ static int ext4_dx_readdir(struct file *
                free_rb_tree_fname(&info->root);
                info->curr_node = NULL;
                info->extra_fname = NULL;
@@ -113,22 +133,68 @@ Index: linux-stage/fs/ext4/dir.c
        }
  
        /*
-Index: linux-stage/fs/ext4/ext4.h
-===================================================================
---- linux-stage.orig/fs/ext4/ext4.h    2011-04-19 01:02:34.000000000 +0800
-+++ linux-stage/fs/ext4/ext4.h 2011-04-19 01:02:34.000000000 +0800
-@@ -55,6 +55,14 @@
- #define ext4_debug(f, a...)   do {} while (0)
- #endif
+@@ -499,7 +541,7 @@ static int ext4_dx_readdir(struct file *
+                       if (ret < 0)
+                               return ret;
+                       if (ret == 0) {
+-                              filp->f_pos = EXT4_HTREE_EOF;
++                              filp->f_pos = ext4_get_htree_eof(filp);
+                               break;
+                       }
+                       info->curr_node = rb_first(&info->root);
+@@ -519,7 +561,7 @@ static int ext4_dx_readdir(struct file *
+                       info->curr_minor_hash = fname->minor_hash;
+               } else {
+                       if (info->next_hash == ~0) {
+-                              filp->f_pos = EXT4_HTREE_EOF;
++                              filp->f_pos = ext4_get_htree_eof(filp);
+                               break;
+                       }
+                       info->curr_hash = info->next_hash;
+diff -urp linux-stage.orig/fs/ext4/ext4.h linux-stage/fs/ext4/ext4.h
+--- linux-stage.orig/fs/ext4/ext4.h    2012-06-21 10:26:23.000000000 -0400
++++ linux-stage/fs/ext4/ext4.h 2012-06-21 10:39:43.000000000 -0400
+@@ -816,6 +816,16 @@ struct ext4_inode_info {
+       __u64 i_fs_version;
+ };
  
-+#ifndef O_32BITHASH
-+# define O_32BITHASH  0x10000000
++#ifndef FMODE_32BITHASH
++/* 32bit hashes as llseek() offset (for directories) */
++#define FMODE_32BITHASH         ((__force fmode_t)0x200)
 +#endif
 +
-+#ifndef O_64BITHASH
-+# define O_64BITHASH  0x20000000
++#ifndef FMODE_64BITHASH
++/* 64bit hashes as llseek() offset (for directories) */
++#define FMODE_64BITHASH         ((__force fmode_t)0x400)
 +#endif
 +
  #define HAVE_DISK_INODE_VERSION
  
- /* data type for block offset of block group */
+ /*
+@@ -1450,7 +1460,11 @@ struct dx_hash_info
+       u32             *seed;
+ };
+
+-#define EXT4_HTREE_EOF        0x7fffffff
++
++/* 32 and 64 bit signed EOF for dx directories */
++#define EXT4_HTREE_EOF_32BIT   ((1UL  << (32 - 1)) - 1)
++#define EXT4_HTREE_EOF_64BIT   ((1ULL << (64 - 1)) - 1)
++
+
+ /*
+  * Control parameters used by ext4_htree_next_block
+diff -urp linux-stage.orig/fs/ext4/hash.c linux-stage/fs/ext4/hash.c
+--- linux-stage.orig/fs/ext4/hash.c    2012-06-21 10:26:23.000000000 -0400
++++ linux-stage/fs/ext4/hash.c 2012-06-21 10:29:02.000000000 -0400
+@@ -201,8 +201,8 @@ int ext4fs_dirhash(const char *name, int
+               return -1;
+       }
+       hash = hash & ~1;
+-      if (hash == (EXT4_HTREE_EOF << 1))
+-              hash = (EXT4_HTREE_EOF-1) << 1;
++      if (hash == (EXT4_HTREE_EOF_32BIT << 1))
++              hash = (EXT4_HTREE_EOF_32BIT - 1) << 1;
+       hinfo->hash = hash;
+       hinfo->minor_hash = minor_hash;
+       return 0;
index 8d93223..2a8859e 100644 (file)
@@ -45,15 +45,15 @@ Index: linux-stage/fs/ext4/ext4.h
        __le32  s_raid_stripe_width;    /* blocks on all data disks (N*stride)*/
        __u8    s_log_groups_per_flex;  /* FLEX_BG group size */
 @@ -1145,6 +1145,9 @@ struct ext4_sb_info {
-       struct ext4_li_request *s_li_request;
-       /* Wait multiplier for lazy initialization thread */
-       unsigned int s_li_wait_mult;
+       struct ext4_li_request *s_li_request;
+       /* Wait multiplier for lazy initialization thread */
+       unsigned int s_li_wait_mult;
 +
 +      /* Kernel thread for multiple mount protection */
 +      struct task_struct *s_mmp_tsk;
- };
  
- static inline struct ext4_sb_info *EXT4_SB(struct super_block *sb)
+       /* record the last minlen when FITRIM is called. */
+       atomic_t s_last_trim_minblks;
 @@ -1283,7 +1286,8 @@ EXT4_INODE_BIT_FNS(state, state_flags)
                                         EXT4_FEATURE_INCOMPAT_META_BG| \
                                         EXT4_FEATURE_INCOMPAT_EXTENTS| \
index be350d4..2c64eda 100644 (file)
@@ -12,7 +12,7 @@ ext4-print-inum-in-htree-warning-rhel6.patch
 ext4-xattr-no-update-ctime-rhel5.patch
 ext4-prealloc-rhel6.patch
 ext4-mballoc-extra-checks-rhel6.patch
-ext4-misc-rhel6.patch 
+ext4-misc-rhel6.patch
 ext4-big-endian-check-2.6-rhel6.patch
 ext4-alloc-policy-2.6-rhel5.patch
 ext4-force_over_128tb-rhel6.patch
@@ -29,6 +29,5 @@ ext4_data_in_dirent-rhel6.patch
 ext4-disable-mb-cache-rhel6.patch
 ext4-back-dquot-to-rhel6.patch
 ext4-nocmtime-2.6-rhel5.patch
-ext4-export-64bit-name-hash.patch
 ext4-vmalloc-rhel6.patch
 ext4-store-tree-generation-at-find.patch
index c7c7d13..8dcff72 100644 (file)
@@ -2,11 +2,11 @@
        * version 2.1.2
        * Server support for kernels:
          2.6.18-308.11.1.el5 (RHEL5)
-         2.6.32-220.17.1.el6 (RHEL6)
+         2.6.32-279.2.1.el6  (RHEL6)
        * Client support for unpatched kernels:
          (see http://wiki.lustre.org/index.php?title=Patchless_Client)
          2.6.18-308.11.1.el5 (RHEL5)
-         2.6.32-220.13.1.el6 (RHEL6)
+         2.6.32-279.2.1.el6  (RHEL6)
          2.6.29.4-167.fc11  (FC11)
          2.6.16.60-0.69.1 (SLES10)
          2.6.27.19-5      (SLES11)
          mounted with "32bitapi" mount option
 
 Severity   : enhancement
+Jira       : LU-1477
+Description: Update RHEL6.3 kernel to 2.6.32-279.2.1.el6.
+
+Severity   : enhancement
 Jira       : LU-1511
 Description: Kernel update [RHEL5.8 2.6.18-308.11.1.el5]
 
index 8f027dc..43ca53b 100644 (file)
@@ -72,7 +72,7 @@ struct ldiskfs_dx_hash_info
         u32     *seed;
 };
 
-#  define LDISKFS_HTREE_EOF     0x7fffffff
+#  define LDISKFS_HTREE_EOF_32BIT     0x7fffffff
 
 int ldiskfsfs_dirhash(const char *name, int len, struct ldiskfs_dx_hash_info *hinfo);
 
index e48692d..5894729 100644 (file)
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
 # Linux kernel version: 2.6.32
-# Tue Dec 20 23:41:08 2011
+# Thu Jun 21 03:59:07 2012
 #
 # CONFIG_64BIT is not set
 CONFIG_X86_32=y
@@ -55,6 +55,8 @@ CONFIG_X86_TRAMPOLINE=y
 CONFIG_KTIME_SCALAR=y
 CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
 CONFIG_CONSTRUCTORS=y
+CONFIG_HAVE_IRQ_WORK=y
+CONFIG_IRQ_WORK=y
 
 #
 # General setup
@@ -394,6 +396,7 @@ CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1
 CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1
 CONFIG_X86_PAT=y
 CONFIG_ARCH_USES_PG_UNCACHED=y
+CONFIG_ARCH_RANDOM=y
 CONFIG_EFI=y
 # CONFIG_SECCOMP is not set
 CONFIG_CC_STACKPROTECTOR=y
@@ -629,6 +632,7 @@ CONFIG_NET_IPIP=m
 CONFIG_NET_IPGRE=m
 CONFIG_NET_IPGRE_BROADCAST=y
 CONFIG_IP_MROUTE=y
+CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
 CONFIG_IP_PIMSM_V1=y
 CONFIG_IP_PIMSM_V2=y
 # CONFIG_ARPD is not set
@@ -802,6 +806,7 @@ CONFIG_IP_VS_PROTO_UDP=y
 CONFIG_IP_VS_PROTO_AH_ESP=y
 CONFIG_IP_VS_PROTO_ESP=y
 CONFIG_IP_VS_PROTO_AH=y
+CONFIG_IP_VS_PROTO_SCTP=y
 
 #
 # IPVS scheduler
@@ -988,6 +993,8 @@ CONFIG_NET_SCH_GRED=m
 CONFIG_NET_SCH_DSMARK=m
 CONFIG_NET_SCH_NETEM=m
 CONFIG_NET_SCH_DRR=m
+CONFIG_NET_SCH_MQPRIO=m
+CONFIG_NET_SCH_QFQ=m
 CONFIG_NET_SCH_INGRESS=m
 
 #
@@ -1026,6 +1033,7 @@ CONFIG_NET_ACT_SKBEDIT=m
 CONFIG_NET_CLS_IND=y
 CONFIG_NET_SCH_FIFO=y
 CONFIG_DCB=y
+CONFIG_NETPRIO_CGROUP=y
 
 #
 # Network testing
@@ -1096,7 +1104,7 @@ CONFIG_CFG80211=m
 CONFIG_CFG80211_DEFAULT_PS=y
 CONFIG_CFG80211_DEFAULT_PS_VALUE=1
 # CONFIG_CFG80211_DEBUGFS is not set
-# CONFIG_WIRELESS_OLD_REGULATORY is not set
+# CONFIG_CFG80211_INTERNAL_REGDB is not set
 CONFIG_WIRELESS_EXT=y
 CONFIG_WIRELESS_EXT_SYSFS=y
 CONFIG_LIB80211=m
@@ -1105,10 +1113,12 @@ CONFIG_LIB80211_CRYPT_CCMP=m
 CONFIG_LIB80211_CRYPT_TKIP=m
 # CONFIG_LIB80211_DEBUG is not set
 CONFIG_MAC80211=m
+CONFIG_MAC80211_HAS_RC=y
 CONFIG_MAC80211_RC_MINSTREL=y
+CONFIG_MAC80211_RC_MINSTREL_HT=y
 # CONFIG_MAC80211_RC_DEFAULT_PID is not set
 CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
-CONFIG_MAC80211_RC_DEFAULT="minstrel"
+CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
 # CONFIG_MAC80211_MESH is not set
 CONFIG_MAC80211_LEDS=y
 # CONFIG_MAC80211_DEBUGFS is not set
@@ -1291,6 +1301,7 @@ CONFIG_BLK_DEV=y
 CONFIG_BLK_DEV_FD=m
 # CONFIG_BLK_DEV_XD is not set
 # CONFIG_PARIDE is not set
+CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m
 # CONFIG_BLK_CPQ_DA is not set
 CONFIG_BLK_CPQ_CISS_DA=m
 CONFIG_CISS_SCSI_TAPE=y
@@ -1379,7 +1390,6 @@ CONFIG_SCSI_SAS_ATTRS=m
 CONFIG_SCSI_SAS_LIBSAS=m
 CONFIG_SCSI_SAS_ATA=y
 CONFIG_SCSI_SAS_HOST_SMP=y
-# CONFIG_SCSI_SAS_LIBSAS_DEBUG is not set
 CONFIG_SCSI_SRP_ATTRS=m
 CONFIG_SCSI_SRP_TGT_ATTRS=y
 CONFIG_SCSI_LOWLEVEL=y
@@ -1477,6 +1487,7 @@ CONFIG_SCSI_DEBUG=m
 CONFIG_SCSI_PMCRAID=m
 CONFIG_SCSI_SRP=m
 CONFIG_SCSI_BFA_FC=m
+CONFIG_SCSI_VIRTIO=m
 CONFIG_SCSI_LOWLEVEL_PCMCIA=y
 # CONFIG_PCMCIA_AHA152X is not set
 CONFIG_PCMCIA_FDOMAIN=m
@@ -1577,8 +1588,13 @@ CONFIG_MD_RAID456=m
 CONFIG_MD_FAULTY=m
 CONFIG_BLK_DEV_DM=m
 CONFIG_DM_DEBUG=y
+CONFIG_DM_BUFIO=m
+CONFIG_DM_PERSISTENT_DATA=m
 CONFIG_DM_CRYPT=m
 CONFIG_DM_SNAPSHOT=m
+CONFIG_DM_THIN_PROVISIONING=m
+# CONFIG_DM_DEBUG_BLOCK_STACK_TRACING is not set
+# CONFIG_DM_DEBUG_SPACE_MAPS is not set
 CONFIG_DM_MIRROR=m
 CONFIG_DM_RAID=m
 CONFIG_DM_LOG_USERSPACE=m
@@ -1596,7 +1612,6 @@ CONFIG_TCM_IBLOCK=m
 CONFIG_TCM_FILEIO=m
 CONFIG_TCM_PSCSI=m
 CONFIG_LOOPBACK_TARGET=m
-# CONFIG_LOOPBACK_TARGET_CDB_DEBUG is not set
 CONFIG_TCM_FC=m
 CONFIG_FUSION=y
 CONFIG_FUSION_SPI=m
@@ -1783,6 +1798,7 @@ CONFIG_ATL1=m
 CONFIG_ATL1E=m
 CONFIG_ATL1C=m
 CONFIG_JME=m
+CONFIG_PCH_GBE=m
 CONFIG_NETDEV_10000=y
 CONFIG_MDIO=m
 CONFIG_CHELSIO_T1=m
@@ -1848,21 +1864,24 @@ CONFIG_P54_USB=m
 CONFIG_P54_PCI=m
 CONFIG_P54_LEDS=y
 CONFIG_ATH_COMMON=m
+# CONFIG_ATH_DEBUG is not set
 CONFIG_ATH5K=m
 # CONFIG_ATH5K_DEBUG is not set
+# CONFIG_ATH5K_TRACER is not set
+CONFIG_ATH5K_PCI=y
+CONFIG_ATH9K_HW=m
+CONFIG_ATH9K_COMMON=m
 CONFIG_ATH9K=m
-# CONFIG_ATH9K_DEBUG is not set
+CONFIG_ATH9K_PCI=y
+# CONFIG_ATH9K_AHB is not set
+# CONFIG_ATH9K_DEBUGFS is not set
+CONFIG_ATH9K_RATE_CONTROL=y
+# CONFIG_ATH9K_HTC is not set
 CONFIG_AR9170_USB=m
 CONFIG_AR9170_LEDS=y
 CONFIG_IPW2100=m
 CONFIG_IPW2100_MONITOR=y
 # CONFIG_IPW2100_DEBUG is not set
-CONFIG_IPW2200=m
-CONFIG_IPW2200_MONITOR=y
-CONFIG_IPW2200_RADIOTAP=y
-CONFIG_IPW2200_PROMISCUOUS=y
-CONFIG_IPW2200_QOS=y
-# CONFIG_IPW2200_DEBUG is not set
 CONFIG_LIBIPW=m
 # CONFIG_LIBIPW_DEBUG is not set
 CONFIG_IWLWIFI=m
@@ -1872,9 +1891,15 @@ CONFIG_IWLWIFI=m
 #
 # CONFIG_IWLWIFI_DEBUG is not set
 # CONFIG_IWLWIFI_DEVICE_TRACING is not set
-CONFIG_IWLAGN=m
-CONFIG_IWL4965=y
-CONFIG_IWL5000=y
+# CONFIG_IWLWIFI_DEVICE_SVTOOL is not set
+CONFIG_IWLWIFI_LEGACY=m
+
+#
+# Debugging Options
+#
+# CONFIG_IWLWIFI_LEGACY_DEBUG is not set
+# CONFIG_IWLWIFI_LEGACY_DEVICE_TRACING is not set
+CONFIG_IWL4965=m
 CONFIG_IWL3945=m
 CONFIG_HOSTAP=m
 CONFIG_HOSTAP_FIRMWARE=y
@@ -1883,16 +1908,18 @@ CONFIG_HOSTAP_PLX=m
 CONFIG_HOSTAP_PCI=m
 CONFIG_HOSTAP_CS=m
 CONFIG_B43=m
+CONFIG_B43_SSB=y
 CONFIG_B43_PCI_AUTOSELECT=y
 CONFIG_B43_PCICORE_AUTOSELECT=y
 CONFIG_B43_PCMCIA=y
 CONFIG_B43_SDIO=y
 CONFIG_B43_PIO=y
+# CONFIG_B43_PHY_N is not set
 CONFIG_B43_PHY_LP=y
+# CONFIG_B43_PHY_HT is not set
 CONFIG_B43_LEDS=y
 CONFIG_B43_HWRNG=y
 CONFIG_B43_DEBUG=y
-# CONFIG_B43_FORCE_PIO is not set
 CONFIG_B43LEGACY=m
 CONFIG_B43LEGACY_PCI_AUTOSELECT=y
 CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
@@ -1910,6 +1937,7 @@ CONFIG_RT2X00=m
 CONFIG_RT2400PCI=m
 CONFIG_RT2500PCI=m
 CONFIG_RT61PCI=m
+# CONFIG_RT2800PCI is not set
 CONFIG_RT2500USB=m
 CONFIG_RT73USB=m
 # CONFIG_RT2800USB is not set
@@ -1928,11 +1956,15 @@ CONFIG_NORTEL_HERMES=m
 CONFIG_PCI_HERMES=m
 CONFIG_PCMCIA_HERMES=m
 CONFIG_PCMCIA_SPECTRUM=m
-CONFIG_WL12XX=m
 CONFIG_WL1251=m
 CONFIG_WL1251_SDIO=m
+CONFIG_WL12XX_MENU=m
+CONFIG_WL12XX=m
+# CONFIG_WL12XX_SDIO is not set
+CONFIG_WL12XX_PLATFORM_DATA=y
 CONFIG_IWM=m
 # CONFIG_IWM_DEBUG is not set
+# CONFIG_IWM_TRACING is not set
 
 #
 # WiMAX Wireless Broadband devices
@@ -3106,7 +3138,7 @@ CONFIG_AGP_VIA=y
 CONFIG_AGP_EFFICEON=y
 CONFIG_VGA_ARB=y
 CONFIG_VGA_ARB_MAX_GPUS=64
-# CONFIG_VGA_SWITCHEROO is not set
+CONFIG_VGA_SWITCHEROO=y
 CONFIG_DRM=m
 CONFIG_DRM_KMS_HELPER=m
 CONFIG_DRM_TTM=m
@@ -3257,8 +3289,9 @@ CONFIG_SND_JACK=y
 CONFIG_SND_SEQUENCER=m
 CONFIG_SND_SEQ_DUMMY=m
 CONFIG_SND_OSSEMUL=y
-# CONFIG_SND_MIXER_OSS is not set
-# CONFIG_SND_PCM_OSS is not set
+CONFIG_SND_MIXER_OSS=m
+CONFIG_SND_PCM_OSS=m
+CONFIG_SND_PCM_OSS_PLUGINS=y
 CONFIG_SND_SEQUENCER_OSS=y
 CONFIG_SND_HRTIMER=m
 CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
@@ -3268,13 +3301,15 @@ CONFIG_SND_VERBOSE_PROCFS=y
 # CONFIG_SND_VERBOSE_PRINTK is not set
 # CONFIG_SND_DEBUG is not set
 CONFIG_SND_VMASTER=y
+CONFIG_SND_KCTL_JACK=y
 CONFIG_SND_DMA_SGBUF=y
 CONFIG_SND_RAWMIDI_SEQ=m
-# CONFIG_SND_OPL3_LIB_SEQ is not set
+CONFIG_SND_OPL3_LIB_SEQ=m
 CONFIG_SND_OPL4_LIB_SEQ=m
 # CONFIG_SND_SBAWE_SEQ is not set
 CONFIG_SND_EMU10K1_SEQ=m
 CONFIG_SND_MPU401_UART=m
+CONFIG_SND_OPL3_LIB=m
 CONFIG_SND_OPL4_LIB=m
 CONFIG_SND_VX_LIB=m
 CONFIG_SND_AC97_CODEC=m
@@ -3340,7 +3375,7 @@ CONFIG_SND_AU8830=m
 CONFIG_SND_BT87X=m
 # CONFIG_SND_BT87X_OVERCLOCK is not set
 CONFIG_SND_CA0106=m
-# CONFIG_SND_CMIPCI is not set
+CONFIG_SND_CMIPCI=m
 CONFIG_SND_OXYGEN_LIB=m
 CONFIG_SND_OXYGEN=m
 # CONFIG_SND_CS4281 is not set
@@ -3483,6 +3518,7 @@ CONFIG_USB_SUPPORT=y
 CONFIG_USB_ARCH_HAS_HCD=y
 CONFIG_USB_ARCH_HAS_OHCI=y
 CONFIG_USB_ARCH_HAS_EHCI=y
+CONFIG_USB_ARCH_HAS_XHCI=y
 CONFIG_USB=y
 # CONFIG_USB_DEBUG is not set
 CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
@@ -3675,7 +3711,7 @@ CONFIG_SDIO_UART=m
 #
 CONFIG_MMC_SDHCI=m
 CONFIG_MMC_SDHCI_PCI=m
-CONFIG_MMC_RICOH_MMC=m
+CONFIG_MMC_RICOH_MMC=y
 CONFIG_MMC_SDHCI_PLTFM=m
 # CONFIG_MMC_WBSD is not set
 # CONFIG_MMC_AT91 is not set
@@ -4131,7 +4167,6 @@ CONFIG_NFS_V4_1=y
 CONFIG_PNFS_FILE_LAYOUT=m
 CONFIG_NFS_FSCACHE=y
 CONFIG_NFS_USE_LEGACY_DNS=y
-# CONFIG_NFS_USE_NEW_IDMAPPER is not set
 CONFIG_NFSD=m
 CONFIG_NFSD_DEPRECATED=y
 CONFIG_NFSD_V2_ACL=y
@@ -4340,6 +4375,7 @@ CONFIG_RING_BUFFER_BENCHMARK=m
 CONFIG_BUILD_DOCSRC=y
 CONFIG_DYNAMIC_DEBUG=y
 # CONFIG_DMA_API_DEBUG is not set
+CONFIG_ASYNC_RAID6_TEST=m
 # CONFIG_SAMPLES is not set
 CONFIG_HAVE_ARCH_KGDB=y
 CONFIG_KGDB=y
@@ -4575,3 +4611,4 @@ CONFIG_HAS_IOPORT=y
 CONFIG_HAS_DMA=y
 CONFIG_CHECK_SIGNATURE=y
 CONFIG_NLATTR=y
+CONFIG_AVERAGE=y
index 68ab2df..f2ee3a8 100644 (file)
@@ -1,7 +1,7 @@
 #
 # Automatically generated make config: don't edit
 # Linux kernel version: 2.6.32
-# Tue Dec 20 15:42:19 2011
+# Thu Jun 21 04:00:46 2012
 #
 CONFIG_64BIT=y
 # CONFIG_X86_32 is not set
@@ -56,6 +56,8 @@ CONFIG_X86_TRAMPOLINE=y
 # CONFIG_KTIME_SCALAR is not set
 CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config"
 CONFIG_CONSTRUCTORS=y
+CONFIG_HAVE_IRQ_WORK=y
+CONFIG_IRQ_WORK=y
 
 #
 # General setup
@@ -391,6 +393,7 @@ CONFIG_MTRR_SANITIZER_ENABLE_DEFAULT=1
 CONFIG_MTRR_SANITIZER_SPARE_REG_NR_DEFAULT=1
 CONFIG_X86_PAT=y
 CONFIG_ARCH_USES_PG_UNCACHED=y
+CONFIG_ARCH_RANDOM=y
 CONFIG_EFI=y
 # CONFIG_SECCOMP is not set
 CONFIG_CC_STACKPROTECTOR=y
@@ -573,6 +576,7 @@ CONFIG_IA32_EMULATION=y
 CONFIG_COMPAT=y
 CONFIG_COMPAT_FOR_U64_ALIGNMENT=y
 CONFIG_SYSVIPC_COMPAT=y
+CONFIG_KEYS_COMPAT=y
 CONFIG_NET=y
 CONFIG_COMPAT_NETLINK_MESSAGES=y
 
@@ -604,6 +608,7 @@ CONFIG_NET_IPIP=m
 CONFIG_NET_IPGRE=m
 CONFIG_NET_IPGRE_BROADCAST=y
 CONFIG_IP_MROUTE=y
+CONFIG_IP_MROUTE_MULTIPLE_TABLES=y
 CONFIG_IP_PIMSM_V1=y
 CONFIG_IP_PIMSM_V2=y
 # CONFIG_ARPD is not set
@@ -777,6 +782,7 @@ CONFIG_IP_VS_PROTO_UDP=y
 CONFIG_IP_VS_PROTO_AH_ESP=y
 CONFIG_IP_VS_PROTO_ESP=y
 CONFIG_IP_VS_PROTO_AH=y
+CONFIG_IP_VS_PROTO_SCTP=y
 
 #
 # IPVS scheduler
@@ -963,6 +969,8 @@ CONFIG_NET_SCH_GRED=m
 CONFIG_NET_SCH_DSMARK=m
 CONFIG_NET_SCH_NETEM=m
 CONFIG_NET_SCH_DRR=m
+CONFIG_NET_SCH_MQPRIO=m
+CONFIG_NET_SCH_QFQ=m
 CONFIG_NET_SCH_INGRESS=m
 
 #
@@ -1001,6 +1009,7 @@ CONFIG_NET_ACT_SKBEDIT=m
 CONFIG_NET_CLS_IND=y
 CONFIG_NET_SCH_FIFO=y
 CONFIG_DCB=y
+CONFIG_NETPRIO_CGROUP=y
 
 #
 # Network testing
@@ -1070,7 +1079,7 @@ CONFIG_CFG80211=m
 CONFIG_CFG80211_DEFAULT_PS=y
 CONFIG_CFG80211_DEFAULT_PS_VALUE=1
 # CONFIG_CFG80211_DEBUGFS is not set
-# CONFIG_WIRELESS_OLD_REGULATORY is not set
+# CONFIG_CFG80211_INTERNAL_REGDB is not set
 CONFIG_WIRELESS_EXT=y
 CONFIG_WIRELESS_EXT_SYSFS=y
 CONFIG_LIB80211=m
@@ -1079,10 +1088,12 @@ CONFIG_LIB80211_CRYPT_CCMP=m
 CONFIG_LIB80211_CRYPT_TKIP=m
 # CONFIG_LIB80211_DEBUG is not set
 CONFIG_MAC80211=m
+CONFIG_MAC80211_HAS_RC=y
 CONFIG_MAC80211_RC_MINSTREL=y
+CONFIG_MAC80211_RC_MINSTREL_HT=y
 # CONFIG_MAC80211_RC_DEFAULT_PID is not set
 CONFIG_MAC80211_RC_DEFAULT_MINSTREL=y
-CONFIG_MAC80211_RC_DEFAULT="minstrel"
+CONFIG_MAC80211_RC_DEFAULT="minstrel_ht"
 # CONFIG_MAC80211_MESH is not set
 CONFIG_MAC80211_LEDS=y
 # CONFIG_MAC80211_DEBUGFS is not set
@@ -1261,6 +1272,7 @@ CONFIG_PNPACPI=y
 CONFIG_BLK_DEV=y
 CONFIG_BLK_DEV_FD=m
 # CONFIG_PARIDE is not set
+CONFIG_BLK_DEV_PCIESSD_MTIP32XX=m
 # CONFIG_BLK_CPQ_DA is not set
 CONFIG_BLK_CPQ_CISS_DA=m
 CONFIG_CISS_SCSI_TAPE=y
@@ -1352,7 +1364,6 @@ CONFIG_SCSI_SAS_ATTRS=m
 CONFIG_SCSI_SAS_LIBSAS=m
 CONFIG_SCSI_SAS_ATA=y
 CONFIG_SCSI_SAS_HOST_SMP=y
-# CONFIG_SCSI_SAS_LIBSAS_DEBUG is not set
 CONFIG_SCSI_SRP_ATTRS=m
 CONFIG_SCSI_SRP_TGT_ATTRS=y
 CONFIG_SCSI_LOWLEVEL=y
@@ -1435,6 +1446,7 @@ CONFIG_SCSI_DEBUG=m
 CONFIG_SCSI_PMCRAID=m
 CONFIG_SCSI_SRP=m
 CONFIG_SCSI_BFA_FC=m
+CONFIG_SCSI_VIRTIO=m
 CONFIG_SCSI_LOWLEVEL_PCMCIA=y
 # CONFIG_PCMCIA_FDOMAIN is not set
 # CONFIG_PCMCIA_QLOGIC is not set
@@ -1527,8 +1539,13 @@ CONFIG_MD_RAID456=m
 CONFIG_MD_FAULTY=m
 CONFIG_BLK_DEV_DM=m
 CONFIG_DM_DEBUG=y
+CONFIG_DM_BUFIO=m
+CONFIG_DM_PERSISTENT_DATA=m
 CONFIG_DM_CRYPT=m
 CONFIG_DM_SNAPSHOT=m
+CONFIG_DM_THIN_PROVISIONING=m
+# CONFIG_DM_DEBUG_BLOCK_STACK_TRACING is not set
+# CONFIG_DM_DEBUG_SPACE_MAPS is not set
 CONFIG_DM_MIRROR=m
 CONFIG_DM_RAID=m
 CONFIG_DM_LOG_USERSPACE=m
@@ -1546,7 +1563,6 @@ CONFIG_TCM_IBLOCK=m
 CONFIG_TCM_FILEIO=m
 CONFIG_TCM_PSCSI=m
 CONFIG_LOOPBACK_TARGET=m
-# CONFIG_LOOPBACK_TARGET_CDB_DEBUG is not set
 CONFIG_TCM_FC=m
 CONFIG_FUSION=y
 CONFIG_FUSION_SPI=m
@@ -1704,6 +1720,7 @@ CONFIG_ATL1=m
 CONFIG_ATL1E=m
 CONFIG_ATL1C=m
 CONFIG_JME=m
+CONFIG_PCH_GBE=m
 CONFIG_NETDEV_10000=y
 CONFIG_MDIO=m
 CONFIG_CHELSIO_T1=m
@@ -1769,21 +1786,24 @@ CONFIG_P54_USB=m
 CONFIG_P54_PCI=m
 CONFIG_P54_LEDS=y
 CONFIG_ATH_COMMON=m
+# CONFIG_ATH_DEBUG is not set
 CONFIG_ATH5K=m
 # CONFIG_ATH5K_DEBUG is not set
+# CONFIG_ATH5K_TRACER is not set
+CONFIG_ATH5K_PCI=y
+CONFIG_ATH9K_HW=m
+CONFIG_ATH9K_COMMON=m
 CONFIG_ATH9K=m
-# CONFIG_ATH9K_DEBUG is not set
+CONFIG_ATH9K_PCI=y
+# CONFIG_ATH9K_AHB is not set
+# CONFIG_ATH9K_DEBUGFS is not set
+CONFIG_ATH9K_RATE_CONTROL=y
+# CONFIG_ATH9K_HTC is not set
 CONFIG_AR9170_USB=m
 CONFIG_AR9170_LEDS=y
 CONFIG_IPW2100=m
 CONFIG_IPW2100_MONITOR=y
 # CONFIG_IPW2100_DEBUG is not set
-CONFIG_IPW2200=m
-CONFIG_IPW2200_MONITOR=y
-CONFIG_IPW2200_RADIOTAP=y
-CONFIG_IPW2200_PROMISCUOUS=y
-CONFIG_IPW2200_QOS=y
-# CONFIG_IPW2200_DEBUG is not set
 CONFIG_LIBIPW=m
 # CONFIG_LIBIPW_DEBUG is not set
 CONFIG_IWLWIFI=m
@@ -1793,9 +1813,15 @@ CONFIG_IWLWIFI=m
 #
 # CONFIG_IWLWIFI_DEBUG is not set
 # CONFIG_IWLWIFI_DEVICE_TRACING is not set
-CONFIG_IWLAGN=m
-CONFIG_IWL4965=y
-CONFIG_IWL5000=y
+# CONFIG_IWLWIFI_DEVICE_SVTOOL is not set
+CONFIG_IWLWIFI_LEGACY=m
+
+#
+# Debugging Options
+#
+# CONFIG_IWLWIFI_LEGACY_DEBUG is not set
+# CONFIG_IWLWIFI_LEGACY_DEVICE_TRACING is not set
+CONFIG_IWL4965=m
 CONFIG_IWL3945=m
 CONFIG_HOSTAP=m
 CONFIG_HOSTAP_FIRMWARE=y
@@ -1804,16 +1830,18 @@ CONFIG_HOSTAP_PLX=m
 CONFIG_HOSTAP_PCI=m
 CONFIG_HOSTAP_CS=m
 CONFIG_B43=m
+CONFIG_B43_SSB=y
 CONFIG_B43_PCI_AUTOSELECT=y
 CONFIG_B43_PCICORE_AUTOSELECT=y
 CONFIG_B43_PCMCIA=y
 CONFIG_B43_SDIO=y
 CONFIG_B43_PIO=y
+# CONFIG_B43_PHY_N is not set
 CONFIG_B43_PHY_LP=y
+# CONFIG_B43_PHY_HT is not set
 CONFIG_B43_LEDS=y
 CONFIG_B43_HWRNG=y
 CONFIG_B43_DEBUG=y
-# CONFIG_B43_FORCE_PIO is not set
 CONFIG_B43LEGACY=m
 CONFIG_B43LEGACY_PCI_AUTOSELECT=y
 CONFIG_B43LEGACY_PCICORE_AUTOSELECT=y
@@ -1831,6 +1859,7 @@ CONFIG_RT2X00=m
 CONFIG_RT2400PCI=m
 CONFIG_RT2500PCI=m
 CONFIG_RT61PCI=m
+# CONFIG_RT2800PCI is not set
 CONFIG_RT2500USB=m
 CONFIG_RT73USB=m
 # CONFIG_RT2800USB is not set
@@ -1849,11 +1878,15 @@ CONFIG_NORTEL_HERMES=m
 CONFIG_PCI_HERMES=m
 CONFIG_PCMCIA_HERMES=m
 CONFIG_PCMCIA_SPECTRUM=m
-CONFIG_WL12XX=m
 CONFIG_WL1251=m
 CONFIG_WL1251_SDIO=m
+CONFIG_WL12XX_MENU=m
+CONFIG_WL12XX=m
+# CONFIG_WL12XX_SDIO is not set
+CONFIG_WL12XX_PLATFORM_DATA=y
 CONFIG_IWM=m
 # CONFIG_IWM_DEBUG is not set
+# CONFIG_IWM_TRACING is not set
 
 #
 # WiMAX Wireless Broadband devices
@@ -2297,7 +2330,7 @@ CONFIG_IPWIRELESS=m
 CONFIG_RAW_DRIVER=y
 CONFIG_MAX_RAW_DEVS=8192
 CONFIG_HPET=y
-# CONFIG_HPET_MMAP is not set
+CONFIG_HPET_MMAP=y
 CONFIG_HANGCHECK_TIMER=m
 CONFIG_UV_MMTIMER=m
 CONFIG_TCG_TPM=y
@@ -2970,7 +3003,7 @@ CONFIG_AGP_SIS=y
 CONFIG_AGP_VIA=y
 CONFIG_VGA_ARB=y
 CONFIG_VGA_ARB_MAX_GPUS=64
-# CONFIG_VGA_SWITCHEROO is not set
+CONFIG_VGA_SWITCHEROO=y
 CONFIG_DRM=m
 CONFIG_DRM_KMS_HELPER=m
 CONFIG_DRM_TTM=m
@@ -3116,8 +3149,9 @@ CONFIG_SND_JACK=y
 CONFIG_SND_SEQUENCER=m
 CONFIG_SND_SEQ_DUMMY=m
 CONFIG_SND_OSSEMUL=y
-# CONFIG_SND_MIXER_OSS is not set
-# CONFIG_SND_PCM_OSS is not set
+CONFIG_SND_MIXER_OSS=m
+CONFIG_SND_PCM_OSS=m
+CONFIG_SND_PCM_OSS_PLUGINS=y
 CONFIG_SND_SEQUENCER_OSS=y
 CONFIG_SND_HRTIMER=m
 CONFIG_SND_SEQ_HRTIMER_DEFAULT=y
@@ -3127,13 +3161,15 @@ CONFIG_SND_VERBOSE_PROCFS=y
 # CONFIG_SND_VERBOSE_PRINTK is not set
 # CONFIG_SND_DEBUG is not set
 CONFIG_SND_VMASTER=y
+CONFIG_SND_KCTL_JACK=y
 CONFIG_SND_DMA_SGBUF=y
 CONFIG_SND_RAWMIDI_SEQ=m
-# CONFIG_SND_OPL3_LIB_SEQ is not set
+CONFIG_SND_OPL3_LIB_SEQ=m
 # CONFIG_SND_OPL4_LIB_SEQ is not set
 # CONFIG_SND_SBAWE_SEQ is not set
 CONFIG_SND_EMU10K1_SEQ=m
 CONFIG_SND_MPU401_UART=m
+CONFIG_SND_OPL3_LIB=m
 CONFIG_SND_VX_LIB=m
 CONFIG_SND_AC97_CODEC=m
 CONFIG_SND_DRIVERS=y
@@ -3165,7 +3201,7 @@ CONFIG_SND_AU8830=m
 CONFIG_SND_BT87X=m
 # CONFIG_SND_BT87X_OVERCLOCK is not set
 CONFIG_SND_CA0106=m
-# CONFIG_SND_CMIPCI is not set
+CONFIG_SND_CMIPCI=m
 CONFIG_SND_OXYGEN_LIB=m
 CONFIG_SND_OXYGEN=m
 # CONFIG_SND_CS4281 is not set
@@ -3307,6 +3343,7 @@ CONFIG_USB_SUPPORT=y
 CONFIG_USB_ARCH_HAS_HCD=y
 CONFIG_USB_ARCH_HAS_OHCI=y
 CONFIG_USB_ARCH_HAS_EHCI=y
+CONFIG_USB_ARCH_HAS_XHCI=y
 CONFIG_USB=y
 # CONFIG_USB_DEBUG is not set
 CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
@@ -3499,7 +3536,7 @@ CONFIG_SDIO_UART=m
 #
 CONFIG_MMC_SDHCI=m
 CONFIG_MMC_SDHCI_PCI=m
-CONFIG_MMC_RICOH_MMC=m
+CONFIG_MMC_RICOH_MMC=y
 CONFIG_MMC_SDHCI_PLTFM=m
 # CONFIG_MMC_WBSD is not set
 # CONFIG_MMC_AT91 is not set
@@ -3957,7 +3994,6 @@ CONFIG_NFS_V4_1=y
 CONFIG_PNFS_FILE_LAYOUT=m
 CONFIG_NFS_FSCACHE=y
 CONFIG_NFS_USE_LEGACY_DNS=y
-# CONFIG_NFS_USE_NEW_IDMAPPER is not set
 CONFIG_NFSD=m
 CONFIG_NFSD_DEPRECATED=y
 CONFIG_NFSD_V2_ACL=y
@@ -4171,6 +4207,7 @@ CONFIG_PROVIDE_OHCI1394_DMA_INIT=y
 CONFIG_BUILD_DOCSRC=y
 CONFIG_DYNAMIC_DEBUG=y
 # CONFIG_DMA_API_DEBUG is not set
+CONFIG_ASYNC_RAID6_TEST=m
 # CONFIG_SAMPLES is not set
 CONFIG_HAVE_ARCH_KGDB=y
 CONFIG_KGDB=y
@@ -4410,3 +4447,4 @@ CONFIG_HAS_DMA=y
 CONFIG_CHECK_SIGNATURE=y
 CONFIG_CPUMASK_OFFSTACK=y
 CONFIG_NLATTR=y
+CONFIG_AVERAGE=y
index f6e7129..6301850 100644 (file)
@@ -31,8 +31,8 @@ Index: linux-2.6.32-131.0.15.el6.x86_64/block/blk-core.c
   * Check whether this bio extends beyond the end of the device.
   */
 @@ -1517,6 +1519,21 @@ static inline void __generic_make_reques
-               if (unlikely(test_bit(QUEUE_FLAG_DEAD, &q->queue_flags)))
-                       goto end_io;
+                       goto end_io;
+               }
  
 +               /* this is cfs's dev_rdonly check */
 +               if (bio_rw(bio) == WRITE && dev_check_rdonly(bio->bi_bdev)) {
@@ -161,9 +161,9 @@ Index: linux-2.6.32-131.0.15.el6.x86_64/fs/block_dev.c
                        victim = bdev->bd_contains;
                bdev->bd_contains = NULL;
 +              dev_clear_rdonly(bdev);
-       }
-       unlock_kernel();
-       mutex_unlock(&bdev->bd_mutex);
+
+               put_disk(disk);
+               module_put(owner);
 Index: linux-2.6.32-131.0.15.el6.x86_64/include/linux/fs.h
 ===================================================================
 --- linux-2.6.32-131.0.15.el6.x86_64.orig/include/linux/fs.h   2011-05-10 21:38:29.000000000 +0300
index 891411a..4879a67 100644 (file)
@@ -13,9 +13,9 @@ Index: linux-2.6.32-131.0.15.el6.x86_64/drivers/md/raid5.c
        bi->bi_phys_segments++;
 +      if (bio_rw_flagged(bi, BIO_RW_SYNCIO) && !forwrite)
 +              clear_bit(R5_UPTODATE, &sh->dev[dd_idx].flags); /* force to read from disk. */
-       spin_unlock_irq(&conf->device_lock);
-       spin_unlock(&sh->lock);
  
+       if (forwrite) {
+               /* check if page is covered */
 @@ -4132,6 +4134,9 @@ static int make_request(mddev_t *mddev, 
                bio_endio(bi, 0);
        }
index 20ea5dd..a704800 100644 (file)
@@ -1,5 +1,5 @@
 lnxmaj="2.6.32"
-lnxrel="220.17.1.el6"
+lnxrel="279.2.1.el6"
 
 KERNEL_SRPM=kernel-${lnxmaj}-${lnxrel}.src.rpm
 SERIES=2.6-rhel6.series
index d725e07..e8dc562 100644 (file)
@@ -2,10 +2,10 @@ SERIES                VERSION                  COMMENT
 
 SUPPORTED KERNELS:
 2.6-rhel5             RHEL5: 2.6.18-308.11.1.el5
-2.6-rhel6             RHEL6: 2.6.32-220.17.1.el6
+2.6-rhel6             RHEL6: 2.6.32-279.2.1.el6
 
 CLIENT SUPPORT FOR UNPATCHED KERNELS:
-         2.6.18-308.4.1.el5  (RHEL5)
-         2.6.32-220.17.1.el6 (RHEL6)
+         2.6.18-308.11.1.el5 (RHEL5)
+         2.6.32-279.2.1.el6  (RHEL6)
          2.6.16.60-0.69.1 (SLES10)
          2.6.27.19-5      (SLES11)
index 5ad1e91..d49aece 100644 (file)
@@ -226,8 +226,8 @@ int ldiskfsfs_dirhash(const char *name, int len, struct ldiskfs_dx_hash_info *hi
                return -1;
        }
        hash = hash & ~1;
-       if (hash == (LDISKFS_HTREE_EOF << 1))
-               hash = (LDISKFS_HTREE_EOF-1) << 1;
+       if (hash == (LDISKFS_HTREE_EOF_32BIT << 1))
+               hash = (LDISKFS_HTREE_EOF_32BIT-1) << 1;
        hinfo->hash = hash;
        hinfo->minor_hash = minor_hash;
        return 0;
index 9a052be..58e4771 100644 (file)
@@ -3462,9 +3462,9 @@ static struct dt_it *osd_it_ea_init(const struct lu_env *env,
         it->oie_file.f_pos      = 0;
         it->oie_file.f_dentry   = obj_dentry;
         if (attr & LUDA_64BITHASH)
-                it->oie_file.f_flags = O_64BITHASH;
+               it->oie_file.f_mode |= FMODE_64BITHASH;
         else
-                it->oie_file.f_flags = O_32BITHASH;
+               it->oie_file.f_mode |= FMODE_32BITHASH;
         it->oie_file.f_mapping    = obj->oo_inode->i_mapping;
         it->oie_file.f_op         = obj->oo_inode->i_fop;
         it->oie_file.private_data = NULL;
@@ -3637,7 +3637,7 @@ static int osd_it_ea_next(const struct lu_env *env, struct dt_it *di)
                 it->oie_it_dirent++;
                 RETURN(0);
         } else {
-                if (it->oie_file.f_pos == LDISKFS_HTREE_EOF)
+               if (it->oie_file.f_pos == ldiskfs_get_htree_eof(&it->oie_file))
                         rc = +1;
                 else
                         rc = osd_ldiskfs_it_fill(di);
index ea559e3..14a96a3 100644 (file)
@@ -343,5 +343,24 @@ static inline int osd_fid_is_igif(const struct lu_fid *fid)
         return fid_is_igif(fid) || osd_fid_is_root(fid);
 }
 
+/* copy from fs/ext4/dir.c */
+static inline int is_32bit_api(void)
+{
+#ifdef CONFIG_COMPAT
+       return is_compat_task();
+#else
+       return (BITS_PER_LONG == 32);
+#endif
+}
+
+static inline loff_t ldiskfs_get_htree_eof(struct file *filp)
+{
+       if ((filp->f_mode & FMODE_32BITHASH) ||
+           (!(filp->f_mode & FMODE_64BITHASH) && is_32bit_api()))
+               return LDISKFS_HTREE_EOF_32BIT;
+       else
+               return LDISKFS_HTREE_EOF_64BIT;
+}
+
 #endif /* __KERNEL__ */
 #endif /* _OSD_INTERNAL_H */