Tue 18 Sep 2012 05:49:47 AM UTC, original submission:
I've got unexpected (bogus) result patching Linux kernel with concat unified diff files and patch-2.7:
cat aufs3-fix-export-__devcgroup_inode_permission.patch aufs3-fix-export.patch | patch -p2
Got unexpected end of file:
=======================================================
--- device_cgroup.c-orig 2012-09-18 10:58:15.000000000 +0600
+++ device_cgroup.c 2012-09-18 11:24:58.000000000 +0600
@@ -7,12 +7,14 @@
#include <linux/device_cgroup.h>
#include <linux/cgroup.h>
#include <linux/ctype.h>
+#include <linux/export.h>
#include <linux/list.h>
#include <linux/uaccess.h>
#include <linux/seq_file.h>
#include <linux/slab.h>
#include <linux/rcupdate.h>
#include <linux/mutex.h>
+#include <linux/export.h>
#define ACC_MKNOD 1
#define ACC_READ 2
@@ -493,6 +495,7 @@
return -EPERM;
}
+EXPORT_SYMBOL(__devcgroup_inode_permission);
int devcgroup_inode_mknod(int mode, dev_t dev)
{
@@ -521,11 +524,4 @@
if (!(wh->access & ACC_MKNOD))
continue;
found:
- rcu_read_unlock();
- return 0;
- }
-
- rcu_read_unlock();
-
- return -EPERM;
-}
+ rcu
\ No newline at end of file
=======================================================
patch-2.6 works as expected:
=======================================================
--- device_cgroup.c-orig 2012-09-18 11:33:34.000000000 +0600
+++ device_cgroup.c 2012-09-18 10:37:03.000000000 +0600
@@ -7,12 +7,14 @@
#include <linux/device_cgroup.h>
#include <linux/cgroup.h>
#include <linux/ctype.h>
+#include <linux/export.h>
#include <linux/list.h>
#include <linux/uaccess.h>
#include <linux/seq_file.h>
#include <linux/slab.h>
#include <linux/rcupdate.h>
#include <linux/mutex.h>
+#include <linux/export.h>
#define ACC_MKNOD 1
#define ACC_READ 2
@@ -493,6 +495,7 @@
return -EPERM;
}
+EXPORT_SYMBOL(__devcgroup_inode_permission);
int devcgroup_inode_mknod(int mode, dev_t dev)
{
=======================================================
Bug details:
patch -v
GNU patch 2.7
CFLAGS="-O2 -march=corei7-avx -pipe"
OS Gentoo ~amd64
glibc-2.15, gcc-4.6.3
Compiled gentoo portage: sys-devel/patch-2.7.ebuild
|