Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
adam.huang
Aufs5 Standalone
Commits
c94527ff
Commit
c94527ff
authored
Jan 18, 2020
by
J. R. Okajima
Browse files
aufs5.0 20200120
Signed-off-by:
J. R. Okajima
<
hooanon05g@gmail.com
>
parent
109aff9b
Changes
5
Hide whitespace changes
Inline
Side-by-side
aufs5-base.patch
View file @
c94527ff
...
@@ -68,7 +68,7 @@ index aac41adf4743..fc18967c2522 100644
...
@@ -68,7 +68,7 @@ index aac41adf4743..fc18967c2522 100644
{
{
struct dentry *this_parent;
struct dentry *this_parent;
diff --git a/fs/fcntl.c b/fs/fcntl.c
diff --git a/fs/fcntl.c b/fs/fcntl.c
index 083185174c6d..782
34ee16784
100644
index 083185174c6d..782
8d53148a7
100644
--- a/fs/fcntl.c
--- a/fs/fcntl.c
+++ b/fs/fcntl.c
+++ b/fs/fcntl.c
@@ -32,7 +32,7 @@
@@ -32,7 +32,7 @@
...
@@ -76,7 +76,7 @@ index 083185174c6d..78234ee16784 100644
...
@@ -76,7 +76,7 @@ index 083185174c6d..78234ee16784 100644
#define SETFL_MASK (O_APPEND | O_NONBLOCK | O_NDELAY | O_DIRECT | O_NOATIME)
#define SETFL_MASK (O_APPEND | O_NONBLOCK | O_NDELAY | O_DIRECT | O_NOATIME)
-static int setfl(int fd, struct file * filp, unsigned long arg)
-static int setfl(int fd, struct file * filp, unsigned long arg)
+int setfl(int fd, struct file *
filp, unsigned long arg)
+int setfl(int fd, struct file *filp, unsigned long arg)
{
{
struct inode * inode = file_inode(filp);
struct inode * inode = file_inode(filp);
int error = 0;
int error = 0;
...
@@ -120,7 +120,7 @@ index 678ef175d63a..9b6a3d0f87a1 100644
...
@@ -120,7 +120,7 @@ index 678ef175d63a..9b6a3d0f87a1 100644
* vfsmount lock must be held for write
* vfsmount lock must be held for write
*/
*/
diff --git a/fs/read_write.c b/fs/read_write.c
diff --git a/fs/read_write.c b/fs/read_write.c
index ff3c5e6f87cf..
5c18a9e51f37
100644
index ff3c5e6f87cf..
d41e5b992eaa
100644
--- a/fs/read_write.c
--- a/fs/read_write.c
+++ b/fs/read_write.c
+++ b/fs/read_write.c
@@ -489,6 +489,28 @@
ssize_t __vfs_write(struct file *file, const char __user *p, size_t count,
@@ -489,6 +489,28 @@
ssize_t __vfs_write(struct file *file, const char __user *p, size_t count,
...
@@ -135,7 +135,7 @@ index ff3c5e6f87cf..5c18a9e51f37 100644
...
@@ -135,7 +135,7 @@ index ff3c5e6f87cf..5c18a9e51f37 100644
+ return fop->read;
+ return fop->read;
+ if (fop->read_iter)
+ if (fop->read_iter)
+ return new_sync_read;
+ return new_sync_read;
+ return ERR_PTR(-ENOSYS);
+ return ERR_PTR(-ENOSYS);
/* doesn't have ->read(|_iter)() op */
+}
+}
+
+
+vfs_writef_t vfs_writef(struct file *file)
+vfs_writef_t vfs_writef(struct file *file)
...
@@ -146,7 +146,7 @@ index ff3c5e6f87cf..5c18a9e51f37 100644
...
@@ -146,7 +146,7 @@ index ff3c5e6f87cf..5c18a9e51f37 100644
+ return fop->write;
+ return fop->write;
+ if (fop->write_iter)
+ if (fop->write_iter)
+ return new_sync_write;
+ return new_sync_write;
+ return ERR_PTR(-ENOSYS);
+ return ERR_PTR(-ENOSYS);
/* doesn't have ->write(|_iter)() op */
+}
+}
+
+
ssize_t __kernel_write(struct file *file, const void *buf, size_t count, loff_t *pos)
ssize_t __kernel_write(struct file *file, const void *buf, size_t count, loff_t *pos)
...
@@ -194,14 +194,14 @@ index b54e0541ad89..28607828e96f 100644
...
@@ -194,14 +194,14 @@ index b54e0541ad89..28607828e96f 100644
if (wait)
if (wait)
sync_inodes_sb(sb);
sync_inodes_sb(sb);
diff --git a/include/linux/fs.h b/include/linux/fs.h
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 29d8e2cfed0e..5
db265e7d35a
100644
index 29d8e2cfed0e..5
26424dc746b
100644
--- a/include/linux/fs.h
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -1310,6 +1310,7 @@
extern void fasync_free(struct fasync_struct *);
@@ -1310,6 +1310,7 @@
extern void fasync_free(struct fasync_struct *);
/* can be called from interrupts */
/* can be called from interrupts */
extern void kill_fasync(struct fasync_struct **, int, int);
extern void kill_fasync(struct fasync_struct **, int, int);
+extern int setfl(int fd, struct file *
filp, unsigned long arg);
+extern int setfl(int fd, struct file *filp, unsigned long arg);
extern void __f_setown(struct file *filp, struct pid *, enum pid_type, int force);
extern void __f_setown(struct file *filp, struct pid *, enum pid_type, int force);
extern int f_setown(struct file *filp, unsigned long arg, int force);
extern int f_setown(struct file *filp, unsigned long arg, int force);
extern void f_delown(struct file *filp);
extern void f_delown(struct file *filp);
...
...
aufs5-loopback.patch
View file @
c94527ff
...
@@ -140,7 +140,7 @@ index a271e17e4b10..ee17c7577224 100644
...
@@ -140,7 +140,7 @@ index a271e17e4b10..ee17c7577224 100644
}
}
diff --git a/drivers/block/loop.h b/drivers/block/loop.h
diff --git a/drivers/block/loop.h b/drivers/block/loop.h
index af75a5ee4094..1
e6ee5a4f623
100644
index af75a5ee4094..1
d847cb194ff
100644
--- a/drivers/block/loop.h
--- a/drivers/block/loop.h
+++ b/drivers/block/loop.h
+++ b/drivers/block/loop.h
@@ -46,7 +46,7 @@
struct loop_device {
@@ -46,7 +46,7 @@
struct loop_device {
...
@@ -148,12 +148,12 @@ index af75a5ee4094..1e6ee5a4f623 100644
...
@@ -148,12 +148,12 @@ index af75a5ee4094..1e6ee5a4f623 100644
unsigned long arg);
unsigned long arg);
- struct file * lo_backing_file;
- struct file * lo_backing_file;
+ struct file
*
lo_backing_file, *lo_backing_virt_file;
+ struct file
*
lo_backing_file, *lo_backing_virt_file;
struct block_device *lo_device;
struct block_device *lo_device;
void *key_data;
void *key_data;
diff --git a/fs/aufs/f_op.c b/fs/aufs/f_op.c
diff --git a/fs/aufs/f_op.c b/fs/aufs/f_op.c
index
0309f0d502ff..19feb4f3cb5f
100644
index
240509add504..ae374ce4ded7
100644
--- a/fs/aufs/f_op.c
--- a/fs/aufs/f_op.c
+++ b/fs/aufs/f_op.c
+++ b/fs/aufs/f_op.c
@@ -359,7 +359,7 @@
static ssize_t aufs_read_iter(struct kiocb *kio, struct iov_iter *iov_iter)
@@ -359,7 +359,7 @@
static ssize_t aufs_read_iter(struct kiocb *kio, struct iov_iter *iov_iter)
...
@@ -212,7 +212,7 @@ index f31e40aff267..e13fb1a0717a 100644
...
@@ -212,7 +212,7 @@ index f31e40aff267..e13fb1a0717a 100644
#endif /* __KERNEL__ */
#endif /* __KERNEL__ */
diff --git a/fs/aufs/super.c b/fs/aufs/super.c
diff --git a/fs/aufs/super.c b/fs/aufs/super.c
index
73255f63b80c..f04e211cbf89
100644
index
97e1401359d8..514678aa1af3
100644
--- a/fs/aufs/super.c
--- a/fs/aufs/super.c
+++ b/fs/aufs/super.c
+++ b/fs/aufs/super.c
@@ -846,7 +846,10 @@
static const struct super_operations aufs_sop = {
@@ -846,7 +846,10 @@
static const struct super_operations aufs_sop = {
...
@@ -228,14 +228,14 @@ index 73255f63b80c..f04e211cbf89 100644
...
@@ -228,14 +228,14 @@ index 73255f63b80c..f04e211cbf89 100644
/* ---------------------------------------------------------------------- */
/* ---------------------------------------------------------------------- */
diff --git a/include/linux/fs.h b/include/linux/fs.h
diff --git a/include/linux/fs.h b/include/linux/fs.h
index 5
db265e7d35a..8895cd2343e3
100644
index 5
26424dc746b..d46a9b0222c4
100644
--- a/include/linux/fs.h
--- a/include/linux/fs.h
+++ b/include/linux/fs.h
+++ b/include/linux/fs.h
@@ -1937,6 +1937,10 @@
struct super_operations {
@@ -1937,6 +1937,10 @@
struct super_operations {
struct shrink_control *);
struct shrink_control *);
long (*free_cached_objects)(struct super_block *,
long (*free_cached_objects)(struct super_block *,
struct shrink_control *);
struct shrink_control *);
+#if
defined
(CONFIG_BLK_DEV_LOOP) ||
defined
(CONFIG_BLK_DEV_LOOP_MODULE)
+#if
IS_ENABLED
(CONFIG_BLK_DEV_LOOP) ||
IS_ENABLED
(CONFIG_BLK_DEV_LOOP_MODULE)
+ /* and aufs */
+ /* and aufs */
+ struct file *(*real_loop)(struct file *);
+ struct file *(*real_loop)(struct file *);
+#endif
+#endif
...
...
aufs5-standalone.patch
View file @
c94527ff
...
@@ -34,10 +34,10 @@ index fb72d36f7823..7ce68004cbf8 100644
...
@@ -34,10 +34,10 @@ index fb72d36f7823..7ce68004cbf8 100644
#ifdef CONFIG_USELIB
#ifdef CONFIG_USELIB
/*
/*
diff --git a/fs/fcntl.c b/fs/fcntl.c
diff --git a/fs/fcntl.c b/fs/fcntl.c
index 782
34ee16784..2072f690b121
100644
index 782
8d53148a7..efd8e2e9c0fa
100644
--- a/fs/fcntl.c
--- a/fs/fcntl.c
+++ b/fs/fcntl.c
+++ b/fs/fcntl.c
@@ -85,6 +85,7 @@
int setfl(int fd, struct file *
filp, unsigned long arg)
@@ -85,6 +85,7 @@
int setfl(int fd, struct file *filp, unsigned long arg)
out:
out:
return error;
return error;
}
}
...
@@ -190,7 +190,7 @@ index 0285ce7dbd51..cb81623a8b09 100644
...
@@ -190,7 +190,7 @@ index 0285ce7dbd51..cb81623a8b09 100644
long vfs_truncate(const struct path *path, loff_t length)
long vfs_truncate(const struct path *path, loff_t length)
{
{
diff --git a/fs/read_write.c b/fs/read_write.c
diff --git a/fs/read_write.c b/fs/read_write.c
index
5c18a9e51f37..542e59cd8d27
100644
index
d41e5b992eaa..bf0538e67b41
100644
--- a/fs/read_write.c
--- a/fs/read_write.c
+++ b/fs/read_write.c
+++ b/fs/read_write.c
@@ -459,6 +459,7 @@
ssize_t vfs_read(struct file *file, char __user *buf, size_t count, loff_t *pos)
@@ -459,6 +459,7 @@
ssize_t vfs_read(struct file *file, char __user *buf, size_t count, loff_t *pos)
...
@@ -203,7 +203,7 @@ index 5c18a9e51f37..542e59cd8d27 100644
...
@@ -203,7 +203,7 @@ index 5c18a9e51f37..542e59cd8d27 100644
{
{
@@ -499,6 +500,7 @@
vfs_readf_t vfs_readf(struct file *file)
@@ -499,6 +500,7 @@
vfs_readf_t vfs_readf(struct file *file)
return new_sync_read;
return new_sync_read;
return ERR_PTR(-ENOSYS);
return ERR_PTR(-ENOSYS);
/* doesn't have ->read(|_iter)() op */
}
}
+EXPORT_SYMBOL_GPL(vfs_readf);
+EXPORT_SYMBOL_GPL(vfs_readf);
...
@@ -211,7 +211,7 @@ index 5c18a9e51f37..542e59cd8d27 100644
...
@@ -211,7 +211,7 @@ index 5c18a9e51f37..542e59cd8d27 100644
{
{
@@ -510,6 +512,7 @@
vfs_writef_t vfs_writef(struct file *file)
@@ -510,6 +512,7 @@
vfs_writef_t vfs_writef(struct file *file)
return new_sync_write;
return new_sync_write;
return ERR_PTR(-ENOSYS);
return ERR_PTR(-ENOSYS);
/* doesn't have ->write(|_iter)() op */
}
}
+EXPORT_SYMBOL_GPL(vfs_writef);
+EXPORT_SYMBOL_GPL(vfs_writef);
...
...
include/uapi/linux/aufs_type.h
View file @
c94527ff
...
@@ -40,7 +40,7 @@
...
@@ -40,7 +40,7 @@
#include <limits.h>
#include <limits.h>
#endif
/* __KERNEL__ */
#endif
/* __KERNEL__ */
#define AUFS_VERSION "5.
x-rcN
"
#define AUFS_VERSION "5.
0-20200120
"
/* todo? move this to linux-2.6.19/include/magic.h */
/* todo? move this to linux-2.6.19/include/magic.h */
#define AUFS_SUPER_MAGIC ('a' << 24 | 'u' << 16 | 'f' << 8 | 's')
#define AUFS_SUPER_MAGIC ('a' << 24 | 'u' << 16 | 'f' << 8 | 's')
...
...
lockdep-debug.patch
View file @
c94527ff
...
@@ -36,7 +36,7 @@ index e91ec9ddcd30..7c63916d235d 100644
...
@@ -36,7 +36,7 @@ index e91ec9ddcd30..7c63916d235d 100644
* @n: the element to delete from the hash list.
* @n: the element to delete from the hash list.
*
*
diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
diff --git a/kernel/locking/lockdep.c b/kernel/locking/lockdep.c
index c4f72e461d28..
53979dd893e0
100644
index c4f72e461d28..
b4f4ba8ac9b2
100644
--- a/kernel/locking/lockdep.c
--- a/kernel/locking/lockdep.c
+++ b/kernel/locking/lockdep.c
+++ b/kernel/locking/lockdep.c
@@ -737,6 +739,58 @@
static bool assign_lock_key(struct lockdep_map *lock)
@@ -737,6 +739,58 @@
static bool assign_lock_key(struct lockdep_map *lock)
...
@@ -62,7 +62,7 @@ index c4f72e461d28..53979dd893e0 100644
...
@@ -62,7 +62,7 @@ index c4f72e461d28..53979dd893e0 100644
+ static unsigned long lastu;
+ static unsigned long lastu;
+
+
+ /* uncomment if you want to confirm */
+ /* uncomment if you want to confirm */
+ /*
+ /*
+ * DEBUG_LOCKS_WARN_ON(debug_locks
+ * DEBUG_LOCKS_WARN_ON(debug_locks
+ * && !arch_spin_is_locked(&lockdep_lock));
+ * && !arch_spin_is_locked(&lockdep_lock));
+ */
+ */
...
@@ -78,10 +78,10 @@ index c4f72e461d28..53979dd893e0 100644
...
@@ -78,10 +78,10 @@ index c4f72e461d28..53979dd893e0 100644
+ if (!class && lastu)
+ if (!class && lastu)
+ for (u = 0; u < lastu; u++) {
+ for (u = 0; u < lastu; u++) {
+ if (unused_lock_class_test(u)) {
+ if (unused_lock_class_test(u)) {
+ /*
+ /*
+
* pr_debug("%s:%d: u %lu\n",
+
* pr_debug("%s:%d: u %lu\n",
+ *
__func__, __LINE__, u);
+ *
__func__, __LINE__, u);
+
*/
+
*/
+ class = lock_classes + u;
+ class = lock_classes + u;
+ break;
+ break;
+ }
+ }
...
@@ -98,7 +98,7 @@ index c4f72e461d28..53979dd893e0 100644
...
@@ -98,7 +98,7 @@ index c4f72e461d28..53979dd893e0 100644
/*
/*
* Register a lock's class in the hash-table, if the class is not present
* Register a lock's class in the hash-table, if the class is not present
* yet. Otherwise we look it up. We cache the result in the lock object
* yet. Otherwise we look it up. We cache the result in the lock object
@@ -781,16 +835,2
2
@@
register_lock_class(struct lockdep_map *lock, unsigned int subclass, int force)
@@ -781,16 +835,2
1
@@
register_lock_class(struct lockdep_map *lock, unsigned int subclass, int force)
* Allocate a new key from the static array, and add it to
* Allocate a new key from the static array, and add it to
* the hash:
* the hash:
*/
*/
...
@@ -111,9 +111,8 @@ index c4f72e461d28..53979dd893e0 100644
...
@@ -111,9 +111,8 @@ index c4f72e461d28..53979dd893e0 100644
+ if (class)
+ if (class)
+ class->usage_mask = 0;
+ class->usage_mask = 0;
+ else {
+ else {
+ if (!debug_locks_off_graph_unlock())
{
+ if (!debug_locks_off_graph_unlock())
+ return NULL;
+ return NULL;
+ }
+
+
+ print_lockdep_off("BUG: MAX_LOCKDEP_KEYS too low!");
+ print_lockdep_off("BUG: MAX_LOCKDEP_KEYS too low!");
+ dump_stack();
+ dump_stack();
...
@@ -128,7 +127,7 @@ index c4f72e461d28..53979dd893e0 100644
...
@@ -128,7 +127,7 @@ index c4f72e461d28..53979dd893e0 100644
debug_atomic_inc(nr_unused_locks);
debug_atomic_inc(nr_unused_locks);
class->key = key;
class->key = key;
class->name = lock->name;
class->name = lock->name;
@@ -4124,6 +418
8
,7 @@
void lockdep_reset(void)
@@ -4124,6 +418
7
,7 @@
void lockdep_reset(void)
INIT_HLIST_HEAD(chainhash_table + i);
INIT_HLIST_HEAD(chainhash_table + i);
raw_local_irq_restore(flags);
raw_local_irq_restore(flags);
}
}
...
@@ -136,12 +135,14 @@ index c4f72e461d28..53979dd893e0 100644
...
@@ -136,12 +135,14 @@ index c4f72e461d28..53979dd893e0 100644
/*
/*
* Remove all references to a lock class. The caller must hold the graph lock.
* Remove all references to a lock class. The caller must hold the graph lock.
@@ -4132,19 +4197,20 @@
static void zap_class(struct lock_class *class)
@@ -4133,18 +4197,22 @@
static void zap_class(struct lock_class *class)
{
int i;
int i;
+ /* pr_debug("%s:%d: %lu\n", __func__, __LINE__, class - lock_classes); */
/*
/*
+ * pr_debug("%s:%d: %lu\n",
+ * __func__, __LINE__, class - lock_classes);
+ */
+ /*
* Remove all dependencies this lock is
* Remove all dependencies this lock is
* involved in:
* involved in:
*/
*/
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment