public inbox for gentoo-commits@lists.gentoo.org
 help / color / mirror / Atom feed
From: "Alexey Shvetsov" <alexxy@gentoo.org>
To: gentoo-commits@lists.gentoo.org
Subject: [gentoo-commits] proj/sci:master commit in: sys-cluster/lustre/, sys-cluster/lustre/files/
Date: Tue, 16 Apr 2013 12:08:07 +0000 (UTC)	[thread overview]
Message-ID: <1366114059.b80eb8efbb6d563d66b637019493db25333fc829.alexxy@gentoo> (raw)

commit:     b80eb8efbb6d563d66b637019493db25333fc829
Author:     Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
AuthorDate: Tue Apr 16 12:07:39 2013 +0000
Commit:     Alexey Shvetsov <alexxy <AT> gentoo <DOT> org>
CommitDate: Tue Apr 16 12:07:39 2013 +0000
URL:        http://git.overlays.gentoo.org/gitweb/?p=proj/sci.git;a=commit;h=b80eb8ef

Update lustre patches

Package-Manager: portage-2.2.0_alpha173
RepoMan-Options: --force

---
 sys-cluster/lustre/ChangeLog                       |   17 +++
 ...ld-make-AC-check-for-linux-arch-sandbox-f.patch |    4 +-
 ...nel-sock_map_fd-replaced-by-sock_alloc_fi.patch |  137 +++++++++++++++++++
 ...cfs-use-sock_alloc_file-instead-of-sock_m.patch |  124 -----------------
 ...pat-posix_acl_-to-from-_xattr-take-user_n.patch |    4 +-
 ...004-LU-2800-llite-introduce-local-getname.patch |    4 +-
 ...-kernel-Kernel-update-for-3.7.2-201.fc18.patch} |  143 +++++++++++--------
 ...50-kernel-3.8-upstream-removes-vmtruncate.patch |   10 +-
 ...-2850-kernel-3.8-upstream-kills-daemonize.patch |   44 +-----
 .../files/0008-LU-2987-llite-rcu-free-inode.patch  |   10 +-
 ...rnel-3.9-hlist_for_each_entry-uses-3-args.patch |  115 ----------------
 ...-build-zfs-0.6.1-kmod-dkms-compatibility.patch} |  104 +++++++++++++-
 ...50-kernel-f_vfsmnt-replaced-by-f_path.mnt.patch |   82 -----------
 sys-cluster/lustre/lustre-9999.ebuild              |    8 +-
 14 files changed, 361 insertions(+), 445 deletions(-)

diff --git a/sys-cluster/lustre/ChangeLog b/sys-cluster/lustre/ChangeLog
index d65f91b..32b0e92 100644
--- a/sys-cluster/lustre/ChangeLog
+++ b/sys-cluster/lustre/ChangeLog
@@ -2,6 +2,23 @@
 # Copyright 1999-2013 Gentoo Foundation; Distributed under the GPL v2
 # $Header: $
 
+  16 Apr 2013; Alexey Shvetsov <alexxy@gentoo.org>
+  +files/0002-LU-2686-kernel-sock_map_fd-replaced-by-sock_alloc_fi.patch,
+  +files/0005-LU-2686-kernel-Kernel-update-for-3.7.2-201.fc18.patch,
+  +files/0009-LU-3117-build-zfs-0.6.1-kmod-dkms-compatibility.patch,
+  -files/0002-LU-2800-libcfs-use-sock_alloc_file-instead-of-sock_m.patch,
+  -files/0005-LU-2850-build-check-header-files-in-generated-uapi-d.patch,
+  -files/0009-LU-2850-kernel-3.9-hlist_for_each_entry-uses-3-args.patch,
+  -files/0010-LU-2850-kernel-f_vfsmnt-replaced-by-f_path.mnt.patch,
+  -files/0011-LU-3117-build-zfs-0.6.1-kmod-dkms-compatibility.patch,
+  files/0001-LU-2982-build-make-AC-check-for-linux-arch-sandbox-f.patch,
+  files/0003-LU-2850-compat-posix_acl_-to-from-_xattr-take-user_n.patch,
+  files/0004-LU-2800-llite-introduce-local-getname.patch,
+  files/0006-LU-2850-kernel-3.8-upstream-removes-vmtruncate.patch,
+  files/0007-LU-2850-kernel-3.8-upstream-kills-daemonize.patch,
+  files/0008-LU-2987-llite-rcu-free-inode.patch, lustre-9999.ebuild:
+  Update lustre patches
+
   16 Apr 2013; Alexey Shvetsov <alexxy@gentoo.org> lustre-9999.ebuild:
   Update lustre deps
 

diff --git a/sys-cluster/lustre/files/0001-LU-2982-build-make-AC-check-for-linux-arch-sandbox-f.patch b/sys-cluster/lustre/files/0001-LU-2982-build-make-AC-check-for-linux-arch-sandbox-f.patch
index 254e228..3c5b3f8 100644
--- a/sys-cluster/lustre/files/0001-LU-2982-build-make-AC-check-for-linux-arch-sandbox-f.patch
+++ b/sys-cluster/lustre/files/0001-LU-2982-build-make-AC-check-for-linux-arch-sandbox-f.patch
@@ -1,7 +1,7 @@
-From 6e54f97374f158165cc591c3c41d3db506da26ba Mon Sep 17 00:00:00 2001
+From cd588ca78ac730769a98c105e7f878b3a712116b Mon Sep 17 00:00:00 2001
 From: Alexey Shvetsov <alexxy@gentoo.org>
 Date: Mon, 18 Mar 2013 16:22:27 +0400
-Subject: [PATCH 01/11] LU-2982 build: make AC check for linux arch sandbox
+Subject: [PATCH 1/9] LU-2982 build: make AC check for linux arch sandbox
  friendly
 
 this commit makes AC check for linux kernel arch sandbox friendly

diff --git a/sys-cluster/lustre/files/0002-LU-2686-kernel-sock_map_fd-replaced-by-sock_alloc_fi.patch b/sys-cluster/lustre/files/0002-LU-2686-kernel-sock_map_fd-replaced-by-sock_alloc_fi.patch
new file mode 100644
index 0000000..836bd9f
--- /dev/null
+++ b/sys-cluster/lustre/files/0002-LU-2686-kernel-sock_map_fd-replaced-by-sock_alloc_fi.patch
@@ -0,0 +1,137 @@
+From 96f2fa9ccf8fe00d4b0bdb79f6821ccc140fa87c Mon Sep 17 00:00:00 2001
+From: yangsheng <yang.sheng@intel.com>
+Date: Mon, 8 Apr 2013 21:14:09 +0800
+Subject: [PATCH 2/9] LU-2686 kernel: sock_map_fd() replaced by
+ sock_alloc_file()
+
+Use sock_alloc_file() replace sock_map_fd().
+
+Signed-off-by: yang sheng <yang.sheng@intel.com>
+Change-Id: I04cbcd651689af6b82b48ba5d49ddbf99a6758bf
+---
+ libcfs/autoconf/lustre-libcfs.m4  | 27 ++++++++++++++++++++++++
+ libcfs/libcfs/linux/linux-tcpip.c | 44 +++++++++++++++++++++++----------------
+ 2 files changed, 53 insertions(+), 18 deletions(-)
+
+diff --git a/libcfs/autoconf/lustre-libcfs.m4 b/libcfs/autoconf/lustre-libcfs.m4
+index 312542d..4545a7a 100644
+--- a/libcfs/autoconf/lustre-libcfs.m4
++++ b/libcfs/autoconf/lustre-libcfs.m4
+@@ -793,6 +793,31 @@ LB_LINUX_TRY_COMPILE([
+ ])
+ 
+ #
++# FC18 3.7.2-201 unexport sock_map_fd() change to
++# use sock_alloc_file().
++# upstream commit 56b31d1c9f1e6a3ad92e7bfe252721e05d92b285
++#
++AC_DEFUN([LIBCFS_SOCK_ALLOC_FILE],
++[AC_MSG_CHECKING([sock_alloc_file is exported])
++LB_CHECK_SYMBOL_EXPORT([sock_alloc_file], [net/socket.c],[
++	LB_LINUX_TRY_COMPILE([
++		#include <linux/net.h>
++	],[
++		sock_alloc_file(NULL, 0, NULL);
++	],[
++		AC_MSG_RESULT(yes)
++		AC_DEFINE(HAVE_SOCK_ALLOC_FILE_3ARGS, 1,
++			[sock_alloc_file takes 3 arguments])
++	],[
++		AC_MSG_RESULT(yes)
++		AC_DEFINE(HAVE_SOCK_ALLOC_FILE, 1,
++			[sock_alloc_file is exported])
++	])
++],[
++])
++])
++
++#
+ # LIBCFS_PROG_LINUX
+ #
+ # LNet linux kernel checks
+@@ -850,6 +875,8 @@ LIBCFS_ADD_WAIT_QUEUE_EXCLUSIVE
+ LC_SK_SLEEP
+ # 2.6.40 fc15
+ LC_SHRINK_CONTROL
++# 3.7
++LIBCFS_SOCK_ALLOC_FILE
+ ])
+ 
+ #
+diff --git a/libcfs/libcfs/linux/linux-tcpip.c b/libcfs/libcfs/linux/linux-tcpip.c
+index 0a31b55..3be0f68 100644
+--- a/libcfs/libcfs/linux/linux-tcpip.c
++++ b/libcfs/libcfs/linux/linux-tcpip.c
+@@ -47,11 +47,11 @@
+ int
+ libcfs_sock_ioctl(int cmd, unsigned long arg)
+ {
+-        mm_segment_t   oldmm = get_fs();
+-        struct socket  *sock;
+-        int             fd;
+-        int             rc;
+-        struct file     *sock_filp;
++	mm_segment_t    oldmm = get_fs();
++	struct socket  *sock;
++	int             fd = -1;
++	int             rc;
++	struct file    *sock_filp;
+ 
+         rc = sock_create (PF_INET, SOCK_STREAM, 0, &sock);
+         if (rc != 0) {
+@@ -59,21 +59,27 @@ libcfs_sock_ioctl(int cmd, unsigned long arg)
+                 return rc;
+         }
+ 
+-#ifdef HAVE_SOCK_MAP_FD_2ARG
+-        fd = sock_map_fd(sock,0);
++#if !defined(HAVE_SOCK_ALLOC_FILE) && !defined(HAVE_SOCK_ALLOC_FILE_3ARGS)
++# ifdef HAVE_SOCK_MAP_FD_2ARG
++	fd = sock_map_fd(sock,0);
++# else
++	fd = sock_map_fd(sock);
++# endif
++	if (fd < 0) {
++		rc = fd;
++		goto out;
++	}
++	sock_filp = fget(fd);
+ #else
+-        fd = sock_map_fd(sock);
++# ifdef HAVE_SOCK_ALLOC_FILE_3ARGS
++	sock_filp = sock_alloc_file(sock, 0, NULL);
++# else
++	sock_filp = sock_alloc_file(sock, 0);
++# endif
+ #endif
+-        if (fd < 0) {
+-                rc = fd;
+-                sock_release(sock);
+-                goto out;
+-        }
+-
+-        sock_filp = fget(fd);
+         if (!sock_filp) {
+                 rc = -ENOMEM;
+-                goto out_fd;
++                goto out;
+         }
+ 
+ 	set_fs(KERNEL_DS);
+@@ -83,9 +89,11 @@ libcfs_sock_ioctl(int cmd, unsigned long arg)
+ 
+         fput(sock_filp);
+ 
+- out_fd:
+-        sys_close(fd);
+  out:
++	if (fd >= 0)
++		sys_close(fd);
++	else
++		sock_release(sock);
+         return rc;
+ }
+ 
+-- 
+1.8.1.5
+

diff --git a/sys-cluster/lustre/files/0002-LU-2800-libcfs-use-sock_alloc_file-instead-of-sock_m.patch b/sys-cluster/lustre/files/0002-LU-2800-libcfs-use-sock_alloc_file-instead-of-sock_m.patch
deleted file mode 100644
index a8797a0..0000000
--- a/sys-cluster/lustre/files/0002-LU-2800-libcfs-use-sock_alloc_file-instead-of-sock_m.patch
+++ /dev/null
@@ -1,124 +0,0 @@
-From 18036cc8a9ddc00c269b9b3b7ea25529a0a25e9b Mon Sep 17 00:00:00 2001
-From: Jeff Mahoney <jeffm@suse.com>
-Date: Wed, 13 Feb 2013 02:45:16 -0500
-Subject: [PATCH 02/11] LU-2800 libcfs: use sock_alloc_file instead of
- sock_map_fd
-
-v2.6.27 added a second argument to sock_map_fd. Earlier versions are
-out of scope and we can remove the test for the number of arguments.
-
-Commit 56b31d1c (v3.7) made sock_map_fd() static and exported
-sock_alloc_file() instead. For our purposes, we didn't want to expose
-the file in the descriptor table anyway.
-
-Signed-off-by: Jeff Mahoney <jeffm@suse.com>
-Change-Id: I4e12da8c102b5d682db9658187330ae601b00a21
----
- libcfs/autoconf/lustre-libcfs.m4  | 18 ++++++++++--------
- libcfs/libcfs/linux/linux-tcpip.c | 17 ++++++++++++-----
- 2 files changed, 22 insertions(+), 13 deletions(-)
-
-diff --git a/libcfs/autoconf/lustre-libcfs.m4 b/libcfs/autoconf/lustre-libcfs.m4
-index 312542d..380fd5b 100644
---- a/libcfs/autoconf/lustre-libcfs.m4
-+++ b/libcfs/autoconf/lustre-libcfs.m4
-@@ -500,18 +500,19 @@ LB_LINUX_TRY_COMPILE([
- ])
- 
- # 2.6.27 have second argument to sock_map_fd
--AC_DEFUN([LIBCFS_SOCK_MAP_FD_2ARG],
--[AC_MSG_CHECKING([sock_map_fd have second argument])
-+# 3.7 (56b31d1c) un-exported sock_map_fd in favor of sock_alloc_file
-+AC_DEFUN([LIBCFS_SOCK_ALLOC_FILE],
-+[AC_MSG_CHECKING([sock_alloc_file is exported])
- LB_LINUX_TRY_COMPILE([
- 	#include <linux/net.h>
- ],[
--        sock_map_fd(NULL, 0);
-+	sock_alloc_file(NULL, 0, NULL);
- ],[
--        AC_MSG_RESULT(yes)
--        AC_DEFINE(HAVE_SOCK_MAP_FD_2ARG, 1,
--                  [sock_map_fd have second argument])
-+	AC_MSG_RESULT(yes)
-+	AC_DEFINE(HAVE_SOCK_ALLOC_FILE, 1,
-+		  [sock_alloc_file is exported])
- ],[
--        AC_MSG_RESULT(NO)
-+	AC_MSG_RESULT(NO)
- ])
- ])
- 
-@@ -834,7 +835,6 @@ LIBCFS_CPU_TOPOLOGY
- LIBCFS_STRUCT_SHASH_ALG
- # 2.6.30
- LIBCFS_FUNC_UNSHARE_FS_STRUCT
--LIBCFS_SOCK_MAP_FD_2ARG
- # 2.6.31
- LIBCFS_HAVE_SET_MEMS_ALLOWED
- # 2.6.32
-@@ -850,6 +850,8 @@ LIBCFS_ADD_WAIT_QUEUE_EXCLUSIVE
- LC_SK_SLEEP
- # 2.6.40 fc15
- LC_SHRINK_CONTROL
-+# 3.7
-+LIBCFS_SOCK_ALLOC_FILE
- ])
- 
- #
-diff --git a/libcfs/libcfs/linux/linux-tcpip.c b/libcfs/libcfs/linux/linux-tcpip.c
-index 0a31b55..b83ed84 100644
---- a/libcfs/libcfs/linux/linux-tcpip.c
-+++ b/libcfs/libcfs/linux/linux-tcpip.c
-@@ -49,7 +49,9 @@ libcfs_sock_ioctl(int cmd, unsigned long arg)
- {
-         mm_segment_t   oldmm = get_fs();
-         struct socket  *sock;
-+#ifndef HAVE_SOCK_ALLOC_FILE
-         int             fd;
-+#endif
-         int             rc;
-         struct file     *sock_filp;
- 
-@@ -59,11 +61,8 @@ libcfs_sock_ioctl(int cmd, unsigned long arg)
-                 return rc;
-         }
- 
--#ifdef HAVE_SOCK_MAP_FD_2ARG
-+#ifndef HAVE_SOCK_ALLOC_FILE
-         fd = sock_map_fd(sock,0);
--#else
--        fd = sock_map_fd(sock);
--#endif
-         if (fd < 0) {
-                 rc = fd;
-                 sock_release(sock);
-@@ -75,7 +74,13 @@ libcfs_sock_ioctl(int cmd, unsigned long arg)
-                 rc = -ENOMEM;
-                 goto out_fd;
-         }
--
-+#else
-+	sock_filp = sock_alloc_file(sock, 0, NULL);
-+	if (IS_ERR(sock_filp)) {
-+		rc = PTR_ERR(sock_filp);
-+		goto out;
-+	}
-+#endif
- 	set_fs(KERNEL_DS);
- 	if (sock_filp->f_op->unlocked_ioctl)
- 		rc = sock_filp->f_op->unlocked_ioctl(sock_filp, cmd, arg);
-@@ -83,8 +88,10 @@ libcfs_sock_ioctl(int cmd, unsigned long arg)
- 
-         fput(sock_filp);
- 
-+#ifndef HAVE_SOCK_ALLOC_FILE
-  out_fd:
-         sys_close(fd);
-+#endif
-  out:
-         return rc;
- }
--- 
-1.8.1.5
-

diff --git a/sys-cluster/lustre/files/0003-LU-2850-compat-posix_acl_-to-from-_xattr-take-user_n.patch b/sys-cluster/lustre/files/0003-LU-2850-compat-posix_acl_-to-from-_xattr-take-user_n.patch
index f713d05..65db8d0 100644
--- a/sys-cluster/lustre/files/0003-LU-2850-compat-posix_acl_-to-from-_xattr-take-user_n.patch
+++ b/sys-cluster/lustre/files/0003-LU-2850-compat-posix_acl_-to-from-_xattr-take-user_n.patch
@@ -1,7 +1,7 @@
-From f2c24d99e4d2bd77411acc300d11ab70fc9d6abc Mon Sep 17 00:00:00 2001
+From f8338a543db484f72f221ac57444afb96a852cfb Mon Sep 17 00:00:00 2001
 From: Jeff Mahoney <jeffm@suse.com>
 Date: Wed, 20 Mar 2013 17:33:17 -0400
-Subject: [PATCH 03/11] LU-2850 compat: posix_acl_{to,from}_xattr take
+Subject: [PATCH 3/9] LU-2850 compat: posix_acl_{to,from}_xattr take
  user_namespace
 
 Commit 5f3a4a28 (v3.7) added a struct user_namespace argument to

diff --git a/sys-cluster/lustre/files/0004-LU-2800-llite-introduce-local-getname.patch b/sys-cluster/lustre/files/0004-LU-2800-llite-introduce-local-getname.patch
index 859adce..72c0d64 100644
--- a/sys-cluster/lustre/files/0004-LU-2800-llite-introduce-local-getname.patch
+++ b/sys-cluster/lustre/files/0004-LU-2800-llite-introduce-local-getname.patch
@@ -1,7 +1,7 @@
-From 29d6316336d5673e8c90d819b82fb202357ba9e2 Mon Sep 17 00:00:00 2001
+From 954e9511b7f162f4cee82b9c03d8fff7adc09e64 Mon Sep 17 00:00:00 2001
 From: Jeff Mahoney <jeffm@suse.com>
 Date: Tue, 19 Mar 2013 21:18:32 -0400
-Subject: [PATCH 04/11] LU-2800 llite: introduce local getname()
+Subject: [PATCH 4/9] LU-2800 llite: introduce local getname()
 
 Commit 8e377d15 (v3.7) unexported getname and putname. Although
 getname was re-exported, putname was not. All we really need is

diff --git a/sys-cluster/lustre/files/0005-LU-2850-build-check-header-files-in-generated-uapi-d.patch b/sys-cluster/lustre/files/0005-LU-2686-kernel-Kernel-update-for-3.7.2-201.fc18.patch
similarity index 53%
rename from sys-cluster/lustre/files/0005-LU-2850-build-check-header-files-in-generated-uapi-d.patch
rename to sys-cluster/lustre/files/0005-LU-2686-kernel-Kernel-update-for-3.7.2-201.fc18.patch
index a0d38e2..3aac639 100644
--- a/sys-cluster/lustre/files/0005-LU-2850-build-check-header-files-in-generated-uapi-d.patch
+++ b/sys-cluster/lustre/files/0005-LU-2686-kernel-Kernel-update-for-3.7.2-201.fc18.patch
@@ -1,23 +1,22 @@
-From a0e92d4f975aedaa563d0a9f12ef0774d7cde352 Mon Sep 17 00:00:00 2001
-From: Peng Tao <tao.peng@emc.com>
-Date: Wed, 27 Feb 2013 18:29:34 +0800
-Subject: [PATCH 05/11] LU-2850 build: check header files in generated uapi dir
+From 40fc79f1ea2b8ce3ab895af2a0c6dcf2c1a3ab04 Mon Sep 17 00:00:00 2001
+From: yangsheng <yang.sheng@intel.com>
+Date: Mon, 8 Apr 2013 21:04:22 +0800
+Subject: [PATCH 5/9] LU-2686 kernel: Kernel update for 3.7.2-201.fc18
 
-Upstream moved UAPI headers into generated/uapi directory since
-v3.7. We need to check/include necessary header files there.
+Add uapi header to include search path.
 
-Signed-off-by: Peng Tao <tao.peng@emc.com>
-Change-Id: Ib104919189ebc0af7d3b5e9ca3b866b3b98be3dc
+Signed-off-by: yang sheng <yang.sheng@intel.com>
+Change-Id: Id90e091fef63ebf5bb8e7765969aa3148cc31aa2
 ---
  autoMakefile.am                 |  2 +-
- config/lustre-build-linux.m4    | 14 ++++++++------
- ldiskfs/config/ldiskfs-build.m4 | 14 ++++++++------
- lustre/autoconf/lustre-core.m4  |  2 +-
- lustre/scripts/version_tag.pl   |  1 +
- 5 files changed, 19 insertions(+), 14 deletions(-)
+ config/lustre-build-linux.m4    | 21 +++++++++++++--------
+ ldiskfs/config/ldiskfs-build.m4 | 22 ++++++++++++++--------
+ lustre/autoconf/lustre-core.m4  |  1 +
+ lustre/scripts/version_tag.pl   |  4 +++-
+ 5 files changed, 32 insertions(+), 18 deletions(-)
 
 diff --git a/autoMakefile.am b/autoMakefile.am
-index 79bcd65..93608de 100644
+index 79bcd65..bfec407 100644
 --- a/autoMakefile.am
 +++ b/autoMakefile.am
 @@ -84,7 +84,7 @@ all-am: modules
@@ -25,12 +24,12 @@ index 79bcd65..93608de 100644
  	$(MAKE) CC="$(CC)" -C $(LINUX_OBJ)			     \
  	-f $(PWD)/build/Makefile LUSTRE_LINUX_CONFIG=$(LINUX_CONFIG) \
 -        LINUXINCLUDE='$(EXTRA_LNET_INCLUDE) -I$$(srctree)/arch/$$(SRCARCH)/include -I$$(srctree)/arch/$$(SRCARCH)/include/generated -Iinclude $$(if $$(KBUILD_SRC),-Iinclude2 -I$$(srctree)/include) -include $(CONFIG_INCLUDE)' \
-+        LINUXINCLUDE='$(EXTRA_LNET_INCLUDE) -I$$(srctree)/arch/$$(SRCARCH)/include -I$$(srctree)/arch/$$(SRCARCH)/include/generated -I$$(srctree)/arch/$$(SRCARCH)/include/generated/uapi -I$$(srctree)/arch/$$(SRCARCH)/include/uapi -Iinclude -Iinclude/uapi -Iinclude/generated -Iinclude/generated/uapi $$(if $$(KBUILD_SRC),-Iinclude2 -I$$(srctree)/include) -include $(CONFIG_INCLUDE)' \
++        LINUXINCLUDE='$(EXTRA_LNET_INCLUDE) -I$$(srctree)/arch/$$(SRCARCH)/include -I$$(srctree)/arch/$$(SRCARCH)/include/generated -Iinclude $$(if $$(KBUILD_SRC),-Iinclude2 -I$$(srctree)/include) -I$$(srctree)/arch/$$(SRCARCH)/include/uapi -Iarch/$$(SRCARCH)/include/generated/uapi -I$$(srctree)/include/uapi -Iinclude/generated/uapi -include $(CONFIG_INCLUDE)' \
  	$(MODULE_TARGET)=$(PWD) -o tmp_include_depends -o scripts -o \
  	include/config/MARKER $@
  endif # LINUX
 diff --git a/config/lustre-build-linux.m4 b/config/lustre-build-linux.m4
-index 244d398..b995875 100644
+index 244d398..0ab7cdb 100644
 --- a/config/lustre-build-linux.m4
 +++ b/config/lustre-build-linux.m4
 @@ -44,7 +44,7 @@ AC_MSG_CHECKING([for Linux release])
@@ -38,121 +37,145 @@ index 244d398..b995875 100644
  	LINUXRELEASEHEADER=$AUTOCONF_HDIR/utsrelease.h
  else
 -	LINUXRELEASEHEADER=linux/version.h
-+	LINUXRELEASEHEADER=$LINUXVERSION_HDIR/version.h
++	LINUXRELEASEHEADER=$VERSION_HDIR/version.h
  fi
  LB_LINUX_TRY_MAKE([
  	#include <$LINUXRELEASEHEADER>
+@@ -65,7 +65,7 @@ LB_LINUX_TRY_MAKE([
+ rm -f build/conftest.i
+ if test x$LINUXRELEASE = x ; then
+ 	AC_MSG_RESULT([unknown])
+-	AC_MSG_ERROR([Could not determine Linux release version from linux/version.h.])
++	AC_MSG_ERROR([Could not determine Linux release version from $LINUXRELEASEHEADER.])
+ fi
+ AC_MSG_RESULT([$LINUXRELEASE])
+ AC_SUBST(LINUXRELEASE)
 @@ -96,7 +96,7 @@ AC_SUBST(RELEASE)
  # check is redhat/suse kernels
  AC_MSG_CHECKING([that RedHat kernel])
  LB_LINUX_TRY_COMPILE([
 -		#include <linux/version.h>
-+		#include <$LINUXVERSION_HDIR/version.h>
++		#include <$VERSION_HDIR/version.h>
  	],[
  		#ifndef RHEL_RELEASE_CODE
  		#error "not redhat kernel"
-@@ -222,8 +222,10 @@ LB_CHECK_FILE([$LINUX_OBJ/include/generated/autoconf.h],[AUTOCONF_HDIR=generated
+@@ -222,9 +222,13 @@ LB_CHECK_FILE([$LINUX_OBJ/include/generated/autoconf.h],[AUTOCONF_HDIR=generated
          [LB_CHECK_FILE([$LINUX_OBJ/include/linux/autoconf.h],[AUTOCONF_HDIR=linux],
  	[AC_MSG_ERROR([Run make config in $LINUX.])])])
          AC_SUBST(AUTOCONF_HDIR)
 -LB_CHECK_FILE([$LINUX_OBJ/include/linux/version.h],[],
 -	[AC_MSG_ERROR([Run make config in $LINUX.])])
-+LB_CHECK_FILE([$LINUX_OBJ/include/generated/uapi/linux/version.h],[LINUXVERSION_HDIR=generated/uapi/linux],
-+        [LB_CHECK_FILE([$LINUX_OBJ/include/linux/version.h],[LINUXVERSION_HDIR=linux],
-+	[AC_MSG_ERROR([Run make config in $LINUX.])])])
-+        AC_SUBST(LINUXVERSION_HDIR)
- 
+-
++LB_CHECK_FILE([$LINUX_OBJ/include/linux/version.h], [VERSION_HDIR=linux],
++	[LB_CHECK_FILE([$LINUX_OBJ/include/generated/uapi/linux/version.h],
++		[VERSION_HDIR=generated/uapi/linux],
++		[AC_MSG_ERROR([Run make config in $LINUX.])])
++	])
++        AC_SUBST(VERSION_HDIR)
++ 
  # ----------- kconfig.h exists ---------------
  # kernel 3.1, $LINUX/include/linux/kconfig.h is added
-@@ -240,7 +242,7 @@ LB_CHECK_FILE([$LINUX_OBJ/include/linux/kconfig.h],
+ # see kernel commit 2a11c8ea20bf850b3a2c60db8c2e7497d28aba99
+@@ -240,7 +244,7 @@ LB_CHECK_FILE([$LINUX_OBJ/include/linux/kconfig.h],
  # tarred up the tree and ran make dep etc. in it, then
  # version.h gets overwritten with a standard linux one.
  
 -if grep rhconfig $LINUX_OBJ/include/linux/version.h >/dev/null ; then
-+if grep rhconfig $LINUX_OBJ/include/$LINUXVERSION_HDIR/version.h >/dev/null ; then
++if grep rhconfig $LINUX_OBJ/include/$VERSION_HDIR/version.h >/dev/null ; then
  	# This is a clean kernel-source tree, we need to
  	# enable extensive workarounds to get this to build
  	# modules
-@@ -312,7 +314,7 @@ $2
+@@ -312,7 +316,8 @@ $2
  AC_DEFUN([LB_LINUX_COMPILE_IFELSE],
  [m4_ifvaln([$1], [AC_LANG_CONFTEST([$1])])dnl
  rm -f build/conftest.o build/conftest.mod.c build/conftest.ko
 -AS_IF([AC_TRY_COMMAND(cp conftest.c build && make -d [$2] ${LD:+"LD=$LD"} CC="$CC" -f $PWD/build/Makefile LUSTRE_LINUX_CONFIG=$LINUX_CONFIG LINUXINCLUDE="$EXTRA_LNET_INCLUDE -I$LINUX/arch/`echo $target_cpu|sed -e 's/powerpc64/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/'`/include -I$LINUX/arch/`echo $target_cpu|sed -e 's/ppc.*/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/'`/include/generated -I$LINUX_OBJ/include -I$LINUX/include -I$LINUX_OBJ/include2 -include $CONFIG_INCLUDE" -o tmp_include_depends -o scripts -o include/config/MARKER -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $MODULE_TARGET=$PWD/build) >/dev/null && AC_TRY_COMMAND([$3])],
-+AS_IF([AC_TRY_COMMAND(cp conftest.c build && make -d [$2] ${LD:+"LD=$LD"} CC="$CC" -f $PWD/build/Makefile LUSTRE_LINUX_CONFIG=$LINUX_CONFIG LINUXINCLUDE="$EXTRA_LNET_INCLUDE -I$LINUX/arch/`echo $target_cpu|sed -e 's/powerpc64/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/'`/include -I$LINUX/arch/`echo $target_cpu|sed -e 's/ppc.*/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/'`/include/generated -I$LINUX/arch/`echo $target_cpu|sed -e 's/powerpc64/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/'`/include/uapi -I$LINUX/arch/`echo $target_cpu|sed -e 's/powerpc64/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/'`/include/generated/uapi -I$LINUX_OBJ/include -I$LINUX/include -I$LINUX_OBJ/include2 -I$LINUX/include/uapi -I$LINUX/include/generated/uapi -include $CONFIG_INCLUDE" -o tmp_include_depends -o scripts -o include/config/MARKER -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $MODULE_TARGET=$PWD/build) >/dev/null && AC_TRY_COMMAND([$3])],
++SUBARCH=$(echo $target_cpu | sed -e 's/powerpc64/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/')
++AS_IF([AC_TRY_COMMAND(cp conftest.c build && make -d [$2] ${LD:+"LD=$LD"} CC="$CC" -f $PWD/build/Makefile LUSTRE_LINUX_CONFIG=$LINUX_CONFIG LINUXINCLUDE="$EXTRA_LNET_INCLUDE -I$LINUX/arch/$SUBARCH/include -I$LINUX/arch/$SUBARCH/include/generated -Iinclude -I$LINUX/include -Iinclude2 -I$LINUX/include/uapi -I$LINUX/include/generated -I$LINUX/arch/$SUBARCH/include/uapi -Iarch/$SUBARCH/include/generated/uapi -I$LINUX/include/uapi -Iinclude/generated/uapi -include $CONFIG_INCLUDE" -o tmp_include_depends -o scripts -o include/config/MARKER -C $LINUX_OBJ EXTRA_CFLAGS="-Werror-implicit-function-declaration $EXTRA_KCFLAGS" $MODULE_TARGET=$PWD/build) >/dev/null && AC_TRY_COMMAND([$3])],
  	[$4],
  	[_AC_MSG_LOG_CONFTEST
  m4_ifvaln([$5],[$5])dnl])
 diff --git a/ldiskfs/config/ldiskfs-build.m4 b/ldiskfs/config/ldiskfs-build.m4
-index 2feec80..4a4ecf4 100644
+index 2feec80..aee760e 100644
 --- a/ldiskfs/config/ldiskfs-build.m4
 +++ b/ldiskfs/config/ldiskfs-build.m4
-@@ -1,11 +1,11 @@
- AC_DEFUN([LDISKFS_AC_LINUX_VERSION], [
- 	AC_MSG_CHECKING([kernel source version])
- 
--	utsrelease1=${LINUX_OBJ}/include/linux/version.h
-+	utsrelease1=${LINUX_OBJ}/include/$LINUXVERSION_HDIR/version.h
+@@ -4,12 +4,12 @@ AC_DEFUN([LDISKFS_AC_LINUX_VERSION], [
+ 	utsrelease1=${LINUX_OBJ}/include/linux/version.h
  	utsrelease2=${LINUX_OBJ}/include/linux/utsrelease.h
  	utsrelease3=${LINUX_OBJ}/include/generated/utsrelease.h
- 	AS_IF([test -r ${utsrelease1} && fgrep -q UTS_RELEASE ${utsrelease1}], [
+-	AS_IF([test -r ${utsrelease1} && fgrep -q UTS_RELEASE ${utsrelease1}], [
 -		utsrelease=linux/version.h
-+		utsrelease=$LINUXVERSION_HDIR/version.h
++	AS_IF([test -r ${utsrelease3} && fgrep -q UTS_RELEASE ${utsrelease3}], [
++		utsrelease=generated/utsrelease.h
  	], [test -r ${utsrelease2} && fgrep -q UTS_RELEASE ${utsrelease2}], [
  		utsrelease=linux/utsrelease.h
- 	], [test -r ${utsrelease3} && fgrep -q UTS_RELEASE ${utsrelease3}], [
+-	], [test -r ${utsrelease3} && fgrep -q UTS_RELEASE ${utsrelease3}], [
+-		utsrelease=generated/utsrelease.h
++	], [test -r ${utsrelease1} && fgrep -q UTS_RELEASE ${utsrelease1}], [
++		utsrelease=linux/version.h
+ 	])
+ 
+ 	AS_IF([test "${utsrelease}"], [
 @@ -64,7 +64,7 @@ AC_SUBST(RELEASE)
  # check is redhat/suse kernels
  AC_MSG_CHECKING([that RedHat kernel])
  LB_LINUX_TRY_COMPILE([
 -		#include <linux/version.h>
-+		#include <$LINUXVERSION_HDIR/version.h>
++		#include <$VERSION_HDIR/version.h>
  	],[
  		#ifndef RHEL_RELEASE_CODE
  		#error "not redhat kernel"
-@@ -190,8 +190,10 @@ LB_CHECK_FILE([$LINUX_OBJ/include/generated/autoconf.h],[AUTOCONF_HDIR=generated
+@@ -190,8 +190,14 @@ LB_CHECK_FILE([$LINUX_OBJ/include/generated/autoconf.h],[AUTOCONF_HDIR=generated
          [LB_CHECK_FILE([$LINUX_OBJ/include/linux/autoconf.h],[AUTOCONF_HDIR=linux],
  	[AC_MSG_ERROR([Run make config in $LINUX.])])])
          AC_SUBST(AUTOCONF_HDIR)
 -LB_CHECK_FILE([$LINUX_OBJ/include/linux/version.h],[],
 -	[AC_MSG_ERROR([Run make config in $LINUX.])])
-+LB_CHECK_FILE([$LINUX_OBJ/include/generated/uapi/linux/version.h],[LINUXVERSION_HDIR=generated/uapi/linux],
-+        [LB_CHECK_FILE([$LINUX_OBJ/include/linux/version.h],[LINUXVERSION_HDIR=linux],
-+	[AC_MSG_ERROR([Run make config in $LINUX.])])])
-+        AC_SUBST(LINUXVERSION_HDIR)
++LB_CHECK_FILE([$LINUX_OBJ/include/linux/version.h], [VERSION_HDIR=linux],
++       [LB_CHECK_FILE([$LINUX_OBJ/include/generated/uapi/linux/version.h],
++               [VERSION_HDIR=generated/uapi/linux],
++               [AC_MSG_ERROR([Run make config in $LINUX.])])
++       ])
++       AC_SUBST(VERSION_HDIR)
++ 
++
  
  # ----------- kconfig.h exists ---------------
  # kernel 3.1, $LINUX/include/linux/kconfig.h is added
-@@ -208,7 +210,7 @@ LB_CHECK_FILE([$LINUX_OBJ/include/linux/kconfig.h],
+@@ -208,7 +214,7 @@ LB_CHECK_FILE([$LINUX_OBJ/include/linux/kconfig.h],
  # tarred up the tree and ran make dep etc. in it, then
  # version.h gets overwritten with a standard linux one.
  
 -if grep rhconfig $LINUX_OBJ/include/linux/version.h >/dev/null ; then
-+if grep rhconfig $LINUX_OBJ/include/$LINUXVERSION_HDIR/version.h >/dev/null ; then
++if grep rhconfig $LINUX_OBJ/include/$VERSION_HDIR/version.h >/dev/null ; then
  	# This is a clean kernel-source tree, we need to
  	# enable extensive workarounds to get this to build
  	# modules
 diff --git a/lustre/autoconf/lustre-core.m4 b/lustre/autoconf/lustre-core.m4
-index b9ff1ca..c13ad6a 100644
+index b9ff1ca..9447b2b 100644
 --- a/lustre/autoconf/lustre-core.m4
 +++ b/lustre/autoconf/lustre-core.m4
-@@ -319,7 +319,7 @@ AC_DEFUN([LC_BIT_SPINLOCK_H],
- AC_DEFUN([LC_CONST_ACL_SIZE],
- [AC_MSG_CHECKING([calc acl size])
- tmp_flags="$CFLAGS"
--CFLAGS="$CFLAGS -I$LINUX/include -I$LINUX_OBJ/include -I$LINUX_OBJ/include2 -I$LINUX/arch/`echo $target_cpu|sed -e 's/powerpc64/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/'`/include -include $AUTOCONF_HDIR/autoconf.h $EXTRA_KCFLAGS"
-+CFLAGS="$CFLAGS -I$LINUX/include -I$LINUX_OBJ/include -I$LINUX_OBJ/include/uapi -I$LINUX_OBJ/include2 -I$LINUX/arch/`echo $target_cpu|sed -e 's/powerpc64/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/'`/include -I $LINUX/arch/`echo $target_cpu|sed -e 's/powerpc64/powerpc/' -e 's/x86_64/x86/' -e 's/i.86/x86/'`/include/uapi -include $AUTOCONF_HDIR/autoconf.h $EXTRA_KCFLAGS"
- AC_TRY_RUN([
-         #define __KERNEL__
-         #include <linux/types.h>
+@@ -328,6 +328,7 @@ AC_TRY_RUN([
+         #define __LINUX_POSIX_ACL_H
+ 
+         #ifdef CONFIG_FS_POSIX_ACL
++        struct user_namespace;
+         # include <linux/posix_acl_xattr.h>
+         #endif
+ 
 diff --git a/lustre/scripts/version_tag.pl b/lustre/scripts/version_tag.pl
-index 61796c9..942e54f 100644
+index 61796c9..07cbdf8 100644
 --- a/lustre/scripts/version_tag.pl
 +++ b/lustre/scripts/version_tag.pl
-@@ -45,6 +45,7 @@ sub get_kernver($$)
+@@ -43,8 +43,10 @@ sub get_kernver($$)
+     my $objdir = shift;
+ 
      my $ver = new IO::File;
-     if (!$ver->open("$objdir/include/linux/utsrelease.h") &&
+-    if (!$ver->open("$objdir/include/linux/utsrelease.h") &&
++    if (!$ver->open("$objdir/include/generated/utsrelease.h") &&
++        !$ver->open("$objdir/include/linux/utsrelease.h") &&
          !$ver->open("$objdir/include/linux/version.h") &&
-+        !$ver->open("$objdir/include/generated/uapi/linux/version.h") &&
++        !$ver->open("$dir/include/generated/utsrelease.h") &&
          !$ver->open("$dir/include/linux/utsrelease.h") &&
          !$ver->open("$dir/include/linux/version.h")) {
              die "Run make dep on '$dir'\n";

diff --git a/sys-cluster/lustre/files/0006-LU-2850-kernel-3.8-upstream-removes-vmtruncate.patch b/sys-cluster/lustre/files/0006-LU-2850-kernel-3.8-upstream-removes-vmtruncate.patch
index c0099c3..d4f0e73 100644
--- a/sys-cluster/lustre/files/0006-LU-2850-kernel-3.8-upstream-removes-vmtruncate.patch
+++ b/sys-cluster/lustre/files/0006-LU-2850-kernel-3.8-upstream-removes-vmtruncate.patch
@@ -1,7 +1,7 @@
-From de4775789c14be8dce4b8dbb168c06c0055d1ca2 Mon Sep 17 00:00:00 2001
+From e6813c71a86696b6ba333d2d0af74f4bcc6d4468 Mon Sep 17 00:00:00 2001
 From: Alexey Shvetsov <alexxy@gentoo.org>
 Date: Wed, 27 Mar 2013 08:49:01 +0400
-Subject: [PATCH 06/11] LU-2850 kernel: 3.8 upstream removes vmtruncate()
+Subject: [PATCH 6/9] LU-2850 kernel: 3.8 upstream removes vmtruncate()
 
 vmtruncate() is removed since upstream commit b9f61c3.
 We can open code is for llite though.
@@ -14,10 +14,10 @@ Change-Id: I9d4f43a5c181f16482b4caa021ba7a09ee52b600
  2 files changed, 32 insertions(+)
 
 diff --git a/lustre/autoconf/lustre-core.m4 b/lustre/autoconf/lustre-core.m4
-index c13ad6a..604e00b 100644
+index 9447b2b..485b370 100644
 --- a/lustre/autoconf/lustre-core.m4
 +++ b/lustre/autoconf/lustre-core.m4
-@@ -2252,6 +2252,25 @@ LB_LINUX_TRY_COMPILE([
+@@ -2253,6 +2253,25 @@ LB_LINUX_TRY_COMPILE([
  ])
  
  #
@@ -43,7 +43,7 @@ index c13ad6a..604e00b 100644
  # LC_PROG_LINUX
  #
  # Lustre linux kernel checks
-@@ -2435,6 +2454,10 @@ AC_DEFUN([LC_PROG_LINUX],
+@@ -2436,6 +2455,10 @@ AC_DEFUN([LC_PROG_LINUX],
  
  	 # 3.7
   	 LC_HAVE_POSIXACL_USER_NS

diff --git a/sys-cluster/lustre/files/0007-LU-2850-kernel-3.8-upstream-kills-daemonize.patch b/sys-cluster/lustre/files/0007-LU-2850-kernel-3.8-upstream-kills-daemonize.patch
index c8207a0..2ab2042 100644
--- a/sys-cluster/lustre/files/0007-LU-2850-kernel-3.8-upstream-kills-daemonize.patch
+++ b/sys-cluster/lustre/files/0007-LU-2850-kernel-3.8-upstream-kills-daemonize.patch
@@ -1,22 +1,17 @@
-From 08c0e5bebb11c18370cce8b437d8e73b9d5d49db Mon Sep 17 00:00:00 2001
+From 1ab28dd30f7303302d4b5825d7b0e0417a339eee Mon Sep 17 00:00:00 2001
 From: Peng Tao <tao.peng@emc.com>
 Date: Mon, 18 Mar 2013 10:47:57 +0800
-Subject: [PATCH 07/11] LU-2850 kernel: 3.8 upstream kills daemonize()
+Subject: [PATCH 7/9] LU-2850 kernel: 3.8 upstream kills daemonize()
 
 kernel_thread() is a low level kernel function.
 Instead of calling kernel_thread() and relying on daemonize()
 to create new kernel threads, we should really switch to
 kthread_run() and elimilate daemonize().
 
-Conflicts:
-	lustre/obdclass/llog_cat.c
-	lustre/ptlrpc/recov_thread.c
-
 Signed-off-by: Peng Tao <tao.peng@emc.com>
-Signed-off-by: Alexey Shvetsov <alexxy@gentoo.org>
 Change-Id: I9f977bfc5d58192957d8c8d634204f4910edfa2a
 ---
- libcfs/autoconf/lustre-libcfs.m4           | 37 --------------
+ libcfs/autoconf/lustre-libcfs.m4           | 19 -------
  libcfs/include/libcfs/darwin/darwin-prim.h |  6 +--
  libcfs/include/libcfs/libcfs.h             | 13 +----
  libcfs/include/libcfs/linux/linux-prim.h   |  9 ----
@@ -84,39 +79,14 @@ Change-Id: I9f977bfc5d58192957d8c8d634204f4910edfa2a
  lustre/quota/qmt_lock.c                    | 17 +++----
  lustre/quota/qsd_reint.c                   |  6 +--
  lustre/quota/qsd_writeback.c               | 16 +++---
- 68 files changed, 515 insertions(+), 763 deletions(-)
+ 68 files changed, 515 insertions(+), 745 deletions(-)
  delete mode 100644 libcfs/libcfs/linux/linux-lwt.c
 
 diff --git a/libcfs/autoconf/lustre-libcfs.m4 b/libcfs/autoconf/lustre-libcfs.m4
-index 380fd5b..a1ed4b0 100644
+index 4545a7a..03a428c 100644
 --- a/libcfs/autoconf/lustre-libcfs.m4
 +++ b/libcfs/autoconf/lustre-libcfs.m4
-@@ -639,24 +639,6 @@ LB_LINUX_TRY_COMPILE([
- ])
- ])
- 
--AC_DEFUN([LIBCFS_HAVE_OOM_H],
--[LB_CHECK_FILE([$LINUX/include/linux/oom.h], [
--        AC_DEFINE(HAVE_LINUX_OOM_H, 1,
--                [kernel has include/oom.h])
--],[
--        AC_MSG_RESULT([no])
--])
--])
--
--AC_DEFUN([LIBCFS_HAVE_KEYTYPE_H],
--[LB_CHECK_FILE([$LINUX/include/linux/key-type.h], [
--        AC_DEFINE(HAVE_LINUX_KEYTYPE_H, 1,
--                [kernel has include/key-type.h])
--],[
--        AC_MSG_RESULT([no])
--])
--])
--
- #
- # check set_mems_allowed
- # 2.6.31 adds function set_mems_allowed in cpuset.h
-@@ -697,23 +679,6 @@ LB_LINUX_TRY_COMPILE([
+@@ -696,23 +696,6 @@ LB_LINUX_TRY_COMPILE([
  ])
  ])
  
@@ -140,7 +110,7 @@ index 380fd5b..a1ed4b0 100644
  #
  # 2.6.33 no longer has ctl_name & strategy field in struct ctl_table.
  #
-@@ -840,8 +805,6 @@ LIBCFS_HAVE_SET_MEMS_ALLOWED
+@@ -865,8 +848,6 @@ LIBCFS_HAVE_SET_MEMS_ALLOWED
  # 2.6.32
  LIBCFS_STACKTRACE_OPS_HAVE_WALK_STACK
  LC_SHRINKER_WANT_SHRINK_PTR

diff --git a/sys-cluster/lustre/files/0008-LU-2987-llite-rcu-free-inode.patch b/sys-cluster/lustre/files/0008-LU-2987-llite-rcu-free-inode.patch
index 915e072..bc9a0ef 100644
--- a/sys-cluster/lustre/files/0008-LU-2987-llite-rcu-free-inode.patch
+++ b/sys-cluster/lustre/files/0008-LU-2987-llite-rcu-free-inode.patch
@@ -1,7 +1,7 @@
-From 1abfc6069f78a8efd6002dfe09b6a8196f47552b Mon Sep 17 00:00:00 2001
+From eb03fd5e6cfb84118903ed18fe77a77c4935c662 Mon Sep 17 00:00:00 2001
 From: Peng Tao <tao.peng@emc.com>
 Date: Tue, 19 Mar 2013 14:04:47 +0800
-Subject: [PATCH 08/11] LU-2987 llite: rcu-free inode
+Subject: [PATCH 8/9] LU-2987 llite: rcu-free inode
 
 Since 2.6.38, inode.i_rcu was added and file system .destory_inode
 should rcu-free inodes.
@@ -14,10 +14,10 @@ Change-Id: Idc12c94fd1bf9c99756c9bcb2d07f3061e6dad5a
  2 files changed, 37 insertions(+), 2 deletions(-)
 
 diff --git a/lustre/autoconf/lustre-core.m4 b/lustre/autoconf/lustre-core.m4
-index 604e00b..bf83193 100644
+index 485b370..c36b055 100644
 --- a/lustre/autoconf/lustre-core.m4
 +++ b/lustre/autoconf/lustre-core.m4
-@@ -1682,6 +1682,26 @@ LB_LINUX_TRY_COMPILE([
+@@ -1683,6 +1683,26 @@ LB_LINUX_TRY_COMPILE([
  ])
  
  #
@@ -44,7 +44,7 @@ index 604e00b..bf83193 100644
  # 2.6.38 export blkdev_get_by_dev
  #
  AC_DEFUN([LC_BLKDEV_GET_BY_DEV],
-@@ -2408,6 +2428,7 @@ AC_DEFUN([LC_PROG_LINUX],
+@@ -2409,6 +2429,7 @@ AC_DEFUN([LC_PROG_LINUX],
           LC_GENERIC_PERMISSION
           LC_QUOTA_ON_USE_PATH
           LC_DCACHE_LOCK

diff --git a/sys-cluster/lustre/files/0009-LU-2850-kernel-3.9-hlist_for_each_entry-uses-3-args.patch b/sys-cluster/lustre/files/0009-LU-2850-kernel-3.9-hlist_for_each_entry-uses-3-args.patch
deleted file mode 100644
index faa30e6..0000000
--- a/sys-cluster/lustre/files/0009-LU-2850-kernel-3.9-hlist_for_each_entry-uses-3-args.patch
+++ /dev/null
@@ -1,115 +0,0 @@
-From 8ef04c8c6d6d8e9e5ba187ba1e88965aabf9794c Mon Sep 17 00:00:00 2001
-From: Alexey Shvetsov <alexxy@gentoo.org>
-Date: Sun, 31 Mar 2013 19:32:30 +0400
-Subject: [PATCH 09/11] LU-2850 kernel: 3.9 hlist_for_each_entry uses 3 args
-
-In 3.9 hlist_for_each_entry use 3 args since commit
-
-commit b67bfe0d42cac56c512dd5da4b1b347a23f4b70a
-Author: Sasha Levin <sasha.levin@oracle.com>
-Date:   Wed Feb 27 17:06:00 2013 -0800
-
-    hlist: drop the node parameter from iterators
-
-Signed-off-by: Alexey Shvetsov <alexxy@gentoo.org>
-Change-Id: I8f38d562607de21771b03575e37cc0498867a570
----
- libcfs/include/libcfs/list.h           | 10 ++++++++++
- lustre/autoconf/lustre-core.m4         | 26 ++++++++++++++++++++++++++
- lustre/include/linux/lustre_compat25.h |  5 +++++
- 3 files changed, 41 insertions(+)
-
-diff --git a/libcfs/include/libcfs/list.h b/libcfs/include/libcfs/list.h
-index be06e74..b747804 100644
---- a/libcfs/include/libcfs/list.h
-+++ b/libcfs/include/libcfs/list.h
-@@ -91,14 +91,24 @@ typedef struct hlist_node cfs_hlist_node_t;
- #define cfs_hlist_for_each(pos, head)      hlist_for_each(pos, head)
- #define cfs_hlist_for_each_safe(pos, n, head) \
-         hlist_for_each_safe(pos, n, head)
-+#ifdef HAVE_HLIST_FOR_EACH_3ARG
-+#define cfs_hlist_for_each_entry(tpos, pos, head, member) \
-+	pos = NULL; hlist_for_each_entry(tpos, head, member)
-+#else
- #define cfs_hlist_for_each_entry(tpos, pos, head, member) \
-         hlist_for_each_entry(tpos, pos, head, member)
-+#endif
- #define cfs_hlist_for_each_entry_continue(tpos, pos, member) \
-         hlist_for_each_entry_continue(tpos, pos, member)
- #define cfs_hlist_for_each_entry_from(tpos, pos, member) \
-         hlist_for_each_entry_from(tpos, pos, member)
-+#ifdef HAVE_HLIST_FOR_EACH_3ARG
-+#define cfs_hlist_for_each_entry_safe(tpos, pos, n, head, member) \
-+	pos = NULL; hlist_for_each_entry_safe(tpos, n, head, member)
-+#else
- #define cfs_hlist_for_each_entry_safe(tpos, pos, n, head, member) \
-         hlist_for_each_entry_safe(tpos, pos, n, head, member)
-+#endif
- 
- #define CFS_HLIST_HEAD_INIT		   HLIST_HEAD_INIT
- #define CFS_HLIST_HEAD(n)		   HLIST_HEAD(n)
-diff --git a/lustre/autoconf/lustre-core.m4 b/lustre/autoconf/lustre-core.m4
-index bf83193..5c1fee2 100644
---- a/lustre/autoconf/lustre-core.m4
-+++ b/lustre/autoconf/lustre-core.m4
-@@ -2291,6 +2291,29 @@ LB_LINUX_TRY_COMPILE([
- ])
- 
- #
-+# 3.9 uses hlist_for_each_entry with 3 args
-+# b67bfe0d42cac56c512dd5da4b1b347a23f4b70a
-+#
-+AC_DEFUN([LC_HAVE_HLIST_FOR_EACH_3ARG],
-+[AC_MSG_CHECKING([if hlist_for_each_entry has 3 args])
-+LB_LINUX_TRY_COMPILE([
-+	#include <linux/list.h>
-+	#include <linux/fs.h>
-+],[
-+	struct inode *inode;
-+	struct dentry *dentry;
-+	hlist_for_each_entry(dentry, &inode->i_dentry, d_alias) {
-+		continue;
-+	}
-+],[
-+	AC_DEFINE(HAVE_HLIST_FOR_EACH_3ARG, 1, [3 args])
-+	AC_MSG_RESULT([yes])
-+],[
-+	AC_MSG_RESULT([no])
-+])
-+])
-+
-+#
- # LC_PROG_LINUX
- #
- # Lustre linux kernel checks
-@@ -2479,6 +2502,9 @@ AC_DEFUN([LC_PROG_LINUX],
- 	 # 3.8
- 	 LC_HAVE_MM_VMTRUNCATE
- 
-+	 # 3.9
-+	 LC_HAVE_HLIST_FOR_EACH_3ARG
-+
- 	 #
- 	 if test x$enable_server = xyes ; then
- 		AC_DEFINE(HAVE_SERVER_SUPPORT, 1, [support server])
-diff --git a/lustre/include/linux/lustre_compat25.h b/lustre/include/linux/lustre_compat25.h
-index ca485cd..ecd689f 100644
---- a/lustre/include/linux/lustre_compat25.h
-+++ b/lustre/include/linux/lustre_compat25.h
-@@ -620,8 +620,13 @@ static inline int ll_quota_off(struct super_block *sb, int off, int remount)
- #define ll_d_hlist_empty(list) hlist_empty(list)
- #define ll_d_hlist_entry(ptr, type, name) hlist_entry(ptr.first, type, name)
- #define ll_d_hlist_for_each(tmp, i_dentry) hlist_for_each(tmp, i_dentry)
-+#ifdef HAVE_HLIST_FOR_EACH_3ARG
-+#define ll_d_hlist_for_each_entry(dentry, p, i_dentry, alias) \
-+	p = NULL; hlist_for_each_entry(dentry, i_dentry, alias)
-+#else
- #define ll_d_hlist_for_each_entry(dentry, p, i_dentry, alias) \
-         hlist_for_each_entry(dentry, p, i_dentry, alias)
-+#endif
- #else
- #define ll_d_hlist_node list_head
- #define ll_d_hlist_empty(list) list_empty(list)
--- 
-1.8.1.5
-

diff --git a/sys-cluster/lustre/files/0011-LU-3117-build-zfs-0.6.1-kmod-dkms-compatibility.patch b/sys-cluster/lustre/files/0009-LU-3117-build-zfs-0.6.1-kmod-dkms-compatibility.patch
similarity index 87%
rename from sys-cluster/lustre/files/0011-LU-3117-build-zfs-0.6.1-kmod-dkms-compatibility.patch
rename to sys-cluster/lustre/files/0009-LU-3117-build-zfs-0.6.1-kmod-dkms-compatibility.patch
index de36db2..be8f0da 100644
--- a/sys-cluster/lustre/files/0011-LU-3117-build-zfs-0.6.1-kmod-dkms-compatibility.patch
+++ b/sys-cluster/lustre/files/0009-LU-3117-build-zfs-0.6.1-kmod-dkms-compatibility.patch
@@ -1,7 +1,7 @@
-From 1542e6ffacd11b54b5ffe71b0a107be0ce20732d Mon Sep 17 00:00:00 2001
+From eb4e257e6d9bab8401bc746a3d00c80be5748e92 Mon Sep 17 00:00:00 2001
 From: Brian Behlendorf <behlendorf1@llnl.gov>
 Date: Thu, 28 Mar 2013 12:18:27 -0700
-Subject: [PATCH 11/11] LU-3117 build: zfs-0.6.1 kmod+dkms compatibility
+Subject: [PATCH 9/9] LU-3117 build: zfs-0.6.1 kmod+dkms compatibility
 
 With the release of zfs-0.6.1 the default install location of
 the zfs kmod headers and objects has changed.  The kmod headers
@@ -50,14 +50,14 @@ Signed-off-by: Nathaniel Clark <nathaniel.l.clark@intel.com>
  autoMakefile.am                |   2 +-
  config/lustre-build-ldiskfs.m4 |   1 -
  config/lustre-build-zfs.m4     | 731 ++++++++++++++++++-----------------------
- contrib/lbuild/lbuild          |   2 +
+ contrib/lbuild/lbuild          |  72 +---
  lustre.spec.in                 |   2 +-
  lustre/osd-zfs/Makefile.in     |   3 +-
  lustre/utils/Makefile.am       |   6 +-
- 7 files changed, 326 insertions(+), 421 deletions(-)
+ 7 files changed, 340 insertions(+), 477 deletions(-)
 
 diff --git a/autoMakefile.am b/autoMakefile.am
-index 93608de..5880d1c 100644
+index bfec407..27e16c1 100644
 --- a/autoMakefile.am
 +++ b/autoMakefile.am
 @@ -1,4 +1,4 @@
@@ -847,9 +847,22 @@ index bfc647f..507afd8 100644
 +	AM_CONDITIONAL(ZFS_ENABLED, test x$enable_zfs = xyes)
  ])
 diff --git a/contrib/lbuild/lbuild b/contrib/lbuild/lbuild
-index f389505..3eda63f 100755
+index f389505..d22a9f6 100755
 --- a/contrib/lbuild/lbuild
 +++ b/contrib/lbuild/lbuild
+@@ -1009,10 +1009,10 @@ build_spl_zfs() {
+     local pkg
+     for pkg in spl zfs; do
+ 
+-        local rpmmod spldir
++        local dkmspkg
+ 
+         [ "$pkg" == "zfs" ] && spldir="$(ls -d $TOPDIR/usr/src/spl-*/*)"
+-        rpmmod=$pkg-modules
++        dkmspkg=$pkg-dkms
+ 
+         # need to fetch the repo in order to build it.
+         # default to github but allow override
 @@ -1020,6 +1020,8 @@ build_spl_zfs() {
  
          pushd $pkg || return 255
@@ -859,6 +872,85 @@ index f389505..3eda63f 100755
          # XXX - _having_ to give a package a kernel just to have it configure
          #       enough to do a "make dist" is truely bogus!
          if  ! ./configure --with-linux=${LINUX} \
+@@ -1028,66 +1030,24 @@ build_spl_zfs() {
+             popd
+             return 255
+         fi
+-        popd
+-
+-        # XXX - dirty hack time.  ~sigh~
+-        #       because the spl tarball contains two .spec files, we cannot
+-        #       simply rebuild the tarball
+-        ln $pkg/$pkg-*.tar.gz $TOPDIR/SOURCES ||
+-            error "failed to link $pkg/$pkg-*.tar.gz into $TOPDIR/SOURCES"
+ 
+-        # First build the userspace tools RPMs
+-        if ! $RPMBUILD $targets -bb $pkg/$pkg.spec \
+-            --nodeps -v \
+-            --define "configure_args ${CONFIGURE_FLAGS}" \
+-            --define "_tmppath /var/tmp" \
+-            --define "_topdir $TOPDIR" 2>&1; then
+-            return 255
+-        fi
++	make rpm || return 255
+ 
+-        if $DO_SRC; then
+-            if ! $RPMBUILD -bs $pkg/$pkg.spec \
+-                --nodeps -v \
+-                --define "configure_args ${CONFIGURE_FLAGS}" \
+-                --define "_tmppath /var/tmp" \
+-                --define "_topdir $TOPDIR" 2>&1; then
+-                return 255
+-            fi
+-        fi
++	if $DO_SRC; then
++	    make srpm || return 255
++	    mkdir -p $TOPDIR/SRPMS/
++	    mv $pkg*.src.rpm $TOPDIR/SRPMS/
++	fi
+ 
+-        # Now the kernel module RPMs
+-        # Need to provide pointers to the lustre kernel source, objects, usr/src
+-        if ! $RPMBUILD $targets -bb $pkg/$rpmmod.spec \
+-            --nodeps -v \
+-            --define "require_kdir ${linux}" \
+-            ${linuxobj:+--define "require_kobj ${linuxobj}"} \
+-            ${spldir:+--define "require_spldir ${spldir}"} \
+-            --define "configure_args ${CONFIGURE_FLAGS}" \
+-            --define "_usrsrc $TOPDIR/usr/src" \
+-            --define "kver $kver" \
+-            --define "_tmppath /var/tmp" \
+-            --define "_topdir $TOPDIR" 2>&1; then
+-            return 255
+-        fi
++	mkdir -p $TOPDIR/RPMS/$(basearch)/ $TOPDIR/RPMS/noarch/
++	mv $pkg*.noarch.rpm $TOPDIR/RPMS/noarch/
++	mv *$pkg*.$(basearch).rpm $TOPDIR/RPMS/$(basearch)/
+ 
+-        if $DO_SRC; then
+-            if ! $RPMBUILD -bs $pkg/$rpmmod.spec \
+-                --nodeps -v \
+-                --define "require_kdir ${linux}" \
+-                ${linuxobj:+--define "require_kobj ${linuxobj}"} \
+-                ${spldir:+--define "require_spldir ${spldir}"} \
+-                --define "configure_args ${CONFIGURE_FLAGS}" \
+-                --define "_usrsrc $TOPDIR/usr/src" \
+-                --define "kver $kver" \
+-                --define "_tmppath /var/tmp" \
+-                --define "_topdir $TOPDIR" 2>&1; then
+-                return 255
+-            fi
+-        fi
++        popd
+ 
+-        # We have built the rpms for the package. No we need to extract the
++        # We have built the rpms for the package. Now we need to extract the
+         # contained files so we can build further things against them
+-        local rpm=$(ls $TOPDIR/RPMS/*/$rpmmod-devel-*.rpm)
++        local rpm=$(ls $TOPDIR/RPMS/noarch/$dkmspkg-*.noarch.rpm)
+ 
+         # cpio only extract to pwd so we need to go there.
+         pushd $TOPDIR
 diff --git a/lustre.spec.in b/lustre.spec.in
 index edd02f5..11ff302 100644
 --- a/lustre.spec.in

diff --git a/sys-cluster/lustre/files/0010-LU-2850-kernel-f_vfsmnt-replaced-by-f_path.mnt.patch b/sys-cluster/lustre/files/0010-LU-2850-kernel-f_vfsmnt-replaced-by-f_path.mnt.patch
deleted file mode 100644
index 611e762..0000000
--- a/sys-cluster/lustre/files/0010-LU-2850-kernel-f_vfsmnt-replaced-by-f_path.mnt.patch
+++ /dev/null
@@ -1,82 +0,0 @@
-From 3cde88f309039a3c248e15746d20c6492566b18c Mon Sep 17 00:00:00 2001
-From: Alexey Shvetsov <alexxy@gentoo.org>
-Date: Sun, 31 Mar 2013 20:13:21 +0400
-Subject: [PATCH 10/11] LU-2850 kernel: f_vfsmnt replaced by f_path.mnt
-
-In linux 3.9 f_vfsmnt was killed and replaced
-
-commit 182be684784334598eee1d90274e7f7aa0063616
-Author: Al Viro <viro@zeniv.linux.org.uk>
-Date:   Thu Jan 24 02:21:54 2013 -0500
-
-    kill f_vfsmnt
-
-    very few users left...
-
-Signed-off-by: Alexey Shvetsov <alexxy@gentoo.org>
-Change-Id: I02f595f0b7bbe804c9695d6da2106deb2d17e0ee
----
- lustre/autoconf/lustre-core.m4 | 23 +++++++++++++++++++++++
- lustre/llite/dir.c             |  4 ++++
- 2 files changed, 27 insertions(+)
-
-diff --git a/lustre/autoconf/lustre-core.m4 b/lustre/autoconf/lustre-core.m4
-index 5c1fee2..439f677 100644
---- a/lustre/autoconf/lustre-core.m4
-+++ b/lustre/autoconf/lustre-core.m4
-@@ -2314,6 +2314,28 @@ LB_LINUX_TRY_COMPILE([
- ])
- 
- #
-+# 3.9 killed f_vfsmnt by
-+# 182be684784334598eee1d90274e7f7aa0063616
-+# replacement is f_path.mnt
-+#
-+AC_DEFUN([LC_HAVE_F_PATH_MNT],
-+[AC_MSG_CHECKING([if struct file has f_path.mnt])
-+LB_LINUX_TRY_COMPILE([
-+	#include <linux/fs.h>
-+],[
-+	struct file *fp = NULL;
-+	struct path  path;
-+
-+	path.mnt = fp->f_path.mnt;
-+],[
-+	AC_DEFINE(HAVE_F_PATH_MNT,1,[yes])
-+	AC_MSG_RESULT([yes])
-+],[
-+	AC_MSG_RESULT([no])
-+])
-+])
-+
-+#
- # LC_PROG_LINUX
- #
- # Lustre linux kernel checks
-@@ -2504,6 +2526,7 @@ AC_DEFUN([LC_PROG_LINUX],
- 
- 	 # 3.9
- 	 LC_HAVE_HLIST_FOR_EACH_3ARG
-+	 LC_HAVE_F_PATH_MNT
- 
- 	 #
- 	 if test x$enable_server = xyes ; then
-diff --git a/lustre/llite/dir.c b/lustre/llite/dir.c
-index 14ea720..14d275c 100644
---- a/lustre/llite/dir.c
-+++ b/lustre/llite/dir.c
-@@ -639,7 +639,11 @@ static int ll_readdir(struct file *filp, void *cookie, filldir_t filldir)
-         }
- 	filp->f_version = inode->i_version;
- #ifdef HAVE_TOUCH_ATIME_1ARG
-+#ifdef HAVE_F_PATH_MNT
-+	path.mnt = filp->f_path.mnt;
-+#else
- 	path.mnt = filp->f_vfsmnt;
-+#endif
- 	path.dentry = filp->f_dentry;
- 	touch_atime(&path);
- #else
--- 
-1.8.1.5
-

diff --git a/sys-cluster/lustre/lustre-9999.ebuild b/sys-cluster/lustre/lustre-9999.ebuild
index 4471340..f9afeae 100644
--- a/sys-cluster/lustre/lustre-9999.ebuild
+++ b/sys-cluster/lustre/lustre-9999.ebuild
@@ -34,16 +34,14 @@ RDEPEND="${DEPEND}"
 
 PATCHES=(
 	"${FILESDIR}/0001-LU-2982-build-make-AC-check-for-linux-arch-sandbox-f.patch"
-	"${FILESDIR}/0002-LU-2800-libcfs-use-sock_alloc_file-instead-of-sock_m.patch"
+	"${FILESDIR}/0002-LU-2686-kernel-sock_map_fd-replaced-by-sock_alloc_fi.patch"
 	"${FILESDIR}/0003-LU-2850-compat-posix_acl_-to-from-_xattr-take-user_n.patch"
 	"${FILESDIR}/0004-LU-2800-llite-introduce-local-getname.patch"
-	"${FILESDIR}/0005-LU-2850-build-check-header-files-in-generated-uapi-d.patch"
+	"${FILESDIR}/0005-LU-2686-kernel-Kernel-update-for-3.7.2-201.fc18.patch"
 	"${FILESDIR}/0006-LU-2850-kernel-3.8-upstream-removes-vmtruncate.patch"
 	"${FILESDIR}/0007-LU-2850-kernel-3.8-upstream-kills-daemonize.patch"
 	"${FILESDIR}/0008-LU-2987-llite-rcu-free-inode.patch"
-	"${FILESDIR}/0009-LU-2850-kernel-3.9-hlist_for_each_entry-uses-3-args.patch"
-	"${FILESDIR}/0010-LU-2850-kernel-f_vfsmnt-replaced-by-f_path.mnt.patch"
-	"${FILESDIR}/0011-LU-3117-build-zfs-0.6.1-kmod-dkms-compatibility.patch"
+	"${FILESDIR}/0009-LU-3117-build-zfs-0.6.1-kmod-dkms-compatibility.patch"
 )
 
 pkg_setup() {


             reply	other threads:[~2013-04-16 12:08 UTC|newest]

Thread overview: 53+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2013-04-16 12:08 Alexey Shvetsov [this message]
  -- strict thread matches above, loose matches on Subject: below --
2016-06-29 10:28 [gentoo-commits] proj/sci:master commit in: sys-cluster/lustre/, sys-cluster/lustre/files/ Alexey Shvetsov
2016-06-12 20:32 Alexey Shvetsov
2016-06-12 19:19 Alexey Shvetsov
2016-06-10 19:06 Alexey Shvetsov
2014-05-29 12:44 Alexey Shvetsov
2014-05-24 22:55 Alexey Shvetsov
2014-05-20 13:44 Alexey Shvetsov
2014-05-20 12:43 Alexey Shvetsov
2014-05-19  9:06 Alexey Shvetsov
2014-04-22  8:41 Alexey Shvetsov
2014-04-22  7:22 Alexey Shvetsov
2014-04-02 12:29 Alexey Shvetsov
2014-04-02 10:50 Alexey Shvetsov
2014-02-27 12:08 Alexey Shvetsov
2014-02-12  6:56 Alexey Shvetsov
2014-02-12  6:39 Alexey Shvetsov
2014-02-12  6:36 Alexey Shvetsov
2014-02-04 11:28 Alexey Shvetsov
2013-12-19 14:21 Alexey Shvetsov
2013-12-19 14:13 Alexey Shvetsov
2013-12-19 13:45 Alexey Shvetsov
2013-12-19 13:29 Alexey Shvetsov
2013-12-19 13:23 Alexey Shvetsov
2013-12-19 12:54 Alexey Shvetsov
2013-07-11 15:36 Justin Lecher
2013-07-11 13:25 Alexey Shvetsov
2013-05-07 18:45 Alexey Shvetsov
2013-05-07  9:20 Alexey Shvetsov
2013-04-23  7:43 Alexey Shvetsov
2013-04-22  9:25 Alexey Shvetsov
2013-04-17  9:59 Alexey Shvetsov
2013-04-17  9:45 Alexey Shvetsov
2013-04-16 11:27 Alexey Shvetsov
2013-03-31 17:20 Alexey Shvetsov
2013-03-31 11:28 Alexey Shvetsov
2013-03-31 11:15 Alexey Shvetsov
2013-03-27  5:05 Alexey Shvetsov
2013-03-22 11:08 Alexey Shvetsov
2013-03-22 10:27 Alexey Shvetsov
2013-03-18 23:14 Alexey Shvetsov
2013-03-18 20:53 Alexey Shvetsov
2013-03-18 14:10 Alexey Shvetsov
2013-03-18 14:00 Alexey Shvetsov
2013-03-18 12:29 Alexey Shvetsov
2013-03-18 12:21 Alexey Shvetsov
2013-03-18 12:13 Alexey Shvetsov
2013-03-18  3:53 Alexey Shvetsov
2013-03-14 11:57 Alexey Shvetsov
2013-03-14 10:21 Alexey Shvetsov
2013-03-14  9:47 Alexey Shvetsov
2013-03-06 12:37 Alexey Shvetsov
2012-09-20 19:15 Alexey Shvetsov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1366114059.b80eb8efbb6d563d66b637019493db25333fc829.alexxy@gentoo \
    --to=alexxy@gentoo.org \
    --cc=gentoo-commits@lists.gentoo.org \
    --cc=gentoo-dev@lists.gentoo.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox