├── patches ├── 3.2.51 │ ├── giant-patch │ │ └── 3.2.51-split-level-io-scheduler-mine.patch │ ├── cruft │ │ ├── exception_policy.conf.patch │ │ ├── gitignore.patch │ │ ├── vmlinux.scr.patch.000 │ │ └── vmlinux.scr.patch │ ├── kthread.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── page-writeback.c.patch │ ├── init_task.h.patch │ ├── journal-head.h.patch │ ├── xfs_vnodeops.c.patch │ ├── buffer_head.h.patch │ ├── blk_types.h.patch │ ├── filemap.c.patch │ └── fs.h.patch ├── 4.5 │ ├── fs-inode.c.patch │ ├── kthread.c.patch │ ├── filemap.c.patch │ ├── page-writeback.c.patch │ ├── fs.h.patch │ ├── blk-core.c.patch │ ├── hrtimer.c.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── extent_io.h.patch │ ├── Makefile.patch │ └── bio.c.patch ├── 3.3 │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── init_task.h.patch │ ├── journal-head.h.patch │ ├── xfs_vnodeops.c.patch │ ├── filemap.c.patch │ ├── buffer_head.h.patch │ ├── fs.h.patch │ ├── blk_types.h.patch │ ├── Makefile.patch │ └── mm_types.h.patch ├── 3.4 │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── checkpoint.c.patch │ ├── xfs_vnodeops.c.patch │ ├── filemap.c.patch │ ├── buffer_head.h.patch │ ├── fs.h.patch │ ├── blk_types.h.patch │ ├── Makefile.patch │ └── mm_types.h.patch ├── 3.5 │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── blk_types.h.patch │ ├── checkpoint.c.patch │ ├── xfs_vnodeops.c.patch │ ├── filemap.c.patch │ ├── buffer_head.h.patch │ ├── fs-inode.c.patch │ ├── fs.h.patch │ ├── Makefile.patch │ └── mm_types.h.patch ├── 3.6 │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── blk_types.h.patch │ ├── checkpoint.c.patch │ ├── xfs_vnodeops.c.patch │ ├── filemap.c.patch │ ├── buffer_head.h.patch │ ├── fs-inode.c.patch │ ├── fs.h.patch │ └── Makefile.patch ├── 3.2 │ ├── kthread.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── page-writeback.c.patch │ ├── init_task.h.patch │ ├── journal-head.h.patch │ ├── xfs_vnodeops.c.patch │ ├── filemap.c.patch │ ├── buffer_head.h.patch │ ├── fs.h.patch │ └── blk_types.h.patch ├── 4.2 │ ├── kthread.c.patch │ ├── filemap.c.patch │ ├── page-writeback.c.patch │ ├── blk-core.c.patch │ ├── hrtimer.c.patch │ ├── fs.h.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── Makefile.patch │ └── bio.c.patch ├── 4.3 │ ├── kthread.c.patch │ ├── filemap.c.patch │ ├── page-writeback.c.patch │ ├── blk-core.c.patch │ ├── hrtimer.c.patch │ ├── blk_types.h.patch │ ├── fs.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── Makefile.patch │ └── bio.c.patch ├── 4.4 │ ├── kthread.c.patch │ ├── filemap.c.patch │ ├── page-writeback.c.patch │ ├── blk-core.c.patch │ ├── hrtimer.c.patch │ ├── blk_types.h.patch │ ├── fs.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── Makefile.patch │ └── bio.c.patch ├── 4.1 │ ├── filemap.c.patch │ ├── page-writeback.c.patch │ ├── kthread.c.patch │ ├── blk-core.c.patch │ ├── hrtimer.c.patch │ ├── fs.h.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── Makefile.patch │ └── bio.c.patch ├── 3.16 │ ├── filemap.c.patch │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── fs.h.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── checkpoint.c.patch │ ├── fs-inode.c.patch │ └── Makefile.patch ├── 3.17 │ ├── filemap.c.patch │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── blk-core.c.patch │ ├── hrtimer.c.patch │ ├── fs.h.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── checkpoint.c.patch │ ├── fs-inode.c.patch │ └── Makefile.patch ├── 3.18 │ ├── filemap.c.patch │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── blk-core.c.patch │ ├── hrtimer.c.patch │ ├── fs.h.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── fs-inode.c.patch │ └── Makefile.patch ├── 3.19 │ ├── filemap.c.patch │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── blk-core.c.patch │ ├── hrtimer.c.patch │ ├── fs.h.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── fs-inode.c.patch │ └── Makefile.patch ├── 4.0 │ ├── filemap.c.patch │ ├── page-writeback.c.patch │ ├── kthread.c.patch │ ├── blk-core.c.patch │ ├── hrtimer.c.patch │ ├── fs.h.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── Makefile.patch │ └── bio.c.patch ├── 3.10 │ ├── page-writeback.c.patch │ ├── kthread.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── checkpoint.c.patch │ ├── xfs_vnodeops.c.patch │ ├── filemap.c.patch │ ├── fs-inode.c.patch │ ├── fs.h.patch │ └── Makefile.patch ├── 3.11 │ ├── page-writeback.c.patch │ ├── kthread.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── checkpoint.c.patch │ ├── xfs_vnodeops.c.patch │ ├── filemap.c.patch │ ├── fs-inode.c.patch │ ├── fs.h.patch │ └── Makefile.patch ├── 3.7 │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── checkpoint.c.patch │ ├── xfs_vnodeops.c.patch │ ├── filemap.c.patch │ ├── buffer_head.h.patch │ ├── fs-inode.c.patch │ ├── fs.h.patch │ └── Makefile.patch ├── 3.8 │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── checkpoint.c.patch │ ├── xfs_vnodeops.c.patch │ ├── filemap.c.patch │ ├── buffer_head.h.patch │ ├── fs-inode.c.patch │ ├── fs.h.patch │ └── Makefile.patch ├── 3.9 │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── checkpoint.c.patch │ ├── xfs_vnodeops.c.patch │ ├── filemap.c.patch │ ├── buffer_head.h.patch │ ├── fs-inode.c.patch │ ├── fs.h.patch │ └── Makefile.patch ├── 3.12 │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── checkpoint.c.patch │ ├── filemap.c.patch │ ├── fs-inode.c.patch │ ├── fs.h.patch │ └── Makefile.patch ├── 3.13 │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── checkpoint.c.patch │ ├── filemap.c.patch │ ├── fs-inode.c.patch │ └── fs.h.patch ├── 3.14 │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── checkpoint.c.patch │ ├── filemap.c.patch │ ├── fs-inode.c.patch │ └── fs.h.patch └── 3.15 │ ├── kthread.c.patch │ ├── page-writeback.c.patch │ ├── hrtimer.c.patch │ ├── blk-core.c.patch │ ├── fs.h.patch │ ├── blk_types.h.patch │ ├── journal-head.h.patch │ ├── init_task.h.patch │ ├── buffer_head.h.patch │ ├── checkpoint.c.patch │ ├── filemap.c.patch │ └── fs-inode.c.patch ├── .gitignore └── modules └── ioctl_helper.h /patches/3.2.51/giant-patch/3.2.51-split-level-io-scheduler-mine.patch: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/HenkPoley/split-io-scheduler/HEAD/patches/3.2.51/giant-patch/3.2.51-split-level-io-scheduler-mine.patch -------------------------------------------------------------------------------- /patches/3.2.51/cruft/exception_policy.conf.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/security/tomoyo/policy/exception_policy.conf 1970-01-01 01:00:00.000000000 +0100 2 | +++ ../split-release/release/linux-3.2.51/security/tomoyo/policy/exception_policy.conf 2016-04-19 15:20:02.188592000 +0200 3 | @@ -0,0 +1,2 @@ 4 | +initialize_domain /sbin/modprobe from any 5 | +initialize_domain /sbin/hotplug from any 6 | -------------------------------------------------------------------------------- /patches/3.2.51/cruft/gitignore.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/.gitignore 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/.gitignore 2015-09-01 05:42:29.000000000 +0200 3 | @@ -84,3 +84,5 @@ 4 | *.orig 5 | *~ 6 | \#*# 7 | +/build.sh 8 | +/install.sh 9 | diff -rubBN linux-3.2.51/include/linux/blkdev.h ../split-release/release/linux-3.2.51/include/linux/blkdev.h 10 | -------------------------------------------------------------------------------- /patches/4.5/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.5/fs/inode.c 2 | =================================================================== 3 | --- linux-4.5.orig/fs/inode.c 2016-04-27 10:50:35.738225881 +0200 4 | +++ linux-4.5/fs/inode.c 2016-04-27 15:00:05.889162150 +0200 5 | @@ -216,6 +216,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # Object files 2 | *.o 3 | *.ko 4 | *.obj 5 | *.elf 6 | 7 | # Precompiled Headers 8 | *.gch 9 | *.pch 10 | 11 | # Libraries 12 | *.lib 13 | *.a 14 | *.la 15 | *.lo 16 | 17 | # Shared objects (inc. Windows DLLs) 18 | *.dll 19 | *.so 20 | *.so.* 21 | *.dylib 22 | 23 | # Executables 24 | *.exe 25 | *.out 26 | *.app 27 | *.i*86 28 | *.x86_64 29 | *.hex 30 | 31 | # Debug files 32 | *.dSYM/ 33 | -------------------------------------------------------------------------------- /patches/3.3/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.3.orig/kernel/kthread.c 2016-04-25 11:48:20.813138857 +0200 4 | +++ linux-3.3/kernel/kthread.c 2016-04-25 11:48:20.806472191 +0200 5 | @@ -95,6 +95,7 @@ 6 | { 7 | return to_kthread(task)->data; 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | static int kthread(void *_create) 12 | { 13 | -------------------------------------------------------------------------------- /patches/3.4/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.3.orig/kernel/kthread.c 2016-04-25 11:48:20.813138857 +0200 4 | +++ linux-3.3/kernel/kthread.c 2016-04-25 11:48:20.806472191 +0200 5 | @@ -95,6 +95,7 @@ 6 | { 7 | return to_kthread(task)->data; 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | static int kthread(void *_create) 12 | { 13 | -------------------------------------------------------------------------------- /patches/3.5/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.3.orig/kernel/kthread.c 2016-04-25 11:48:20.813138857 +0200 4 | +++ linux-3.3/kernel/kthread.c 2016-04-25 11:48:20.806472191 +0200 5 | @@ -95,6 +95,7 @@ 6 | { 7 | return to_kthread(task)->data; 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | static int kthread(void *_create) 12 | { 13 | -------------------------------------------------------------------------------- /patches/3.6/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.3.orig/kernel/kthread.c 2016-04-25 11:48:20.813138857 +0200 4 | +++ linux-3.3/kernel/kthread.c 2016-04-25 11:48:20.806472191 +0200 5 | @@ -95,6 +95,7 @@ 6 | { 7 | return to_kthread(task)->data; 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | static int kthread(void *_create) 12 | { 13 | -------------------------------------------------------------------------------- /patches/3.2.51/kthread.c.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/kernel/kthread.c 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/kernel/kthread.c 2015-09-01 05:42:51.000000000 +0200 3 | @@ -70,6 +70,7 @@ 4 | { 5 | return to_kthread(task)->data; 6 | } 7 | +EXPORT_SYMBOL(kthread_data); 8 | 9 | static int kthread(void *_create) 10 | { 11 | diff -rubBN linux-3.2.51/mm/filemap.c ../split-release/release/linux-3.2.51/mm/filemap.c 12 | -------------------------------------------------------------------------------- /patches/3.2/kthread.c.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/kernel/kthread.c 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/kernel/kthread.c 2015-09-01 05:42:51.000000000 +0200 3 | @@ -70,6 +70,7 @@ 4 | { 5 | return to_kthread(task)->data; 6 | } 7 | +EXPORT_SYMBOL(kthread_data); 8 | 9 | static int kthread(void *_create) 10 | { 11 | diff -rubBN linux-3.2.51/mm/filemap.c ../split-release/release/linux-3.2.51/mm/filemap.c 12 | -------------------------------------------------------------------------------- /patches/4.2/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/kernel/kthread.c 2 | =================================================================== 3 | --- linux-4.2.orig/kernel/kthread.c 2016-04-26 17:00:48.593264725 +0200 4 | +++ linux-4.2/kernel/kthread.c 2016-04-26 17:00:48.586598059 +0200 5 | @@ -68,6 +68,7 @@ 6 | return __to_kthread(vfork); 7 | return NULL; 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_should_stop - should this kthread return now? 13 | -------------------------------------------------------------------------------- /patches/4.3/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/kernel/kthread.c 2 | =================================================================== 3 | --- linux-4.2.orig/kernel/kthread.c 2016-04-26 17:00:48.593264725 +0200 4 | +++ linux-4.2/kernel/kthread.c 2016-04-26 17:00:48.586598059 +0200 5 | @@ -68,6 +68,7 @@ 6 | return __to_kthread(vfork); 7 | return NULL; 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_should_stop - should this kthread return now? 13 | -------------------------------------------------------------------------------- /patches/4.4/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/kernel/kthread.c 2 | =================================================================== 3 | --- linux-4.2.orig/kernel/kthread.c 2016-04-26 17:00:48.593264725 +0200 4 | +++ linux-4.2/kernel/kthread.c 2016-04-26 17:00:48.586598059 +0200 5 | @@ -68,6 +68,7 @@ 6 | return __to_kthread(vfork); 7 | return NULL; 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_should_stop - should this kthread return now? 13 | -------------------------------------------------------------------------------- /patches/4.5/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/kernel/kthread.c 2 | =================================================================== 3 | --- linux-4.2.orig/kernel/kthread.c 2016-04-26 17:00:48.593264725 +0200 4 | +++ linux-4.2/kernel/kthread.c 2016-04-26 17:00:48.586598059 +0200 5 | @@ -68,6 +68,7 @@ 6 | return __to_kthread(vfork); 7 | return NULL; 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_should_stop - should this kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.2.51/cruft/vmlinux.scr.patch.000: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/arch/sh/boot/romimage/vmlinux.scr 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/arch/sh/boot/romimage/vmlinux.scr 1970-01-01 01:00:00.000000000 +0100 3 | @@ -1,8 +0,0 @@ 4 | -SECTIONS 5 | -{ 6 | - .text : { 7 | - zero_page_pos = .; 8 | - *(.data) 9 | - end_data = .; 10 | - } 11 | -} 12 | diff -rubBN linux-3.2.51/block/blk-core.c ../split-release/release/linux-3.2.51/block/blk-core.c 13 | -------------------------------------------------------------------------------- /patches/4.1/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.1/mm/filemap.c 2 | =================================================================== 3 | --- linux-4.1.orig/mm/filemap.c 2016-04-26 15:18:30.783183356 +0200 4 | +++ linux-4.1/mm/filemap.c 2016-04-26 15:18:30.779850022 +0200 5 | @@ -1108,6 +1108,10 @@ 6 | if (!page) 7 | return NULL; 8 | 9 | +#ifndef DISABLE_CAUSES 10 | + page->locked_causes = NULL; 11 | +#endif 12 | + 13 | if (WARN_ON_ONCE(!(fgp_flags & FGP_LOCK))) 14 | fgp_flags |= FGP_LOCK; 15 | 16 | -------------------------------------------------------------------------------- /patches/4.2/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/mm/filemap.c 2 | =================================================================== 3 | --- linux-4.2.orig/mm/filemap.c 2016-04-26 17:00:27.969931921 +0200 4 | +++ linux-4.2/mm/filemap.c 2016-04-26 17:00:27.963265255 +0200 5 | @@ -1134,6 +1134,10 @@ 6 | if (!page) 7 | return NULL; 8 | 9 | +#ifndef DISABLE_CAUSES 10 | + page->locked_causes = NULL; 11 | +#endif 12 | + 13 | if (WARN_ON_ONCE(!(fgp_flags & FGP_LOCK))) 14 | fgp_flags |= FGP_LOCK; 15 | 16 | -------------------------------------------------------------------------------- /patches/4.3/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/mm/filemap.c 2 | =================================================================== 3 | --- linux-4.2.orig/mm/filemap.c 2016-04-26 17:00:27.969931921 +0200 4 | +++ linux-4.2/mm/filemap.c 2016-04-26 17:00:27.963265255 +0200 5 | @@ -1134,6 +1134,10 @@ 6 | if (!page) 7 | return NULL; 8 | 9 | +#ifndef DISABLE_CAUSES 10 | + page->locked_causes = NULL; 11 | +#endif 12 | + 13 | if (WARN_ON_ONCE(!(fgp_flags & FGP_LOCK))) 14 | fgp_flags |= FGP_LOCK; 15 | 16 | -------------------------------------------------------------------------------- /patches/4.4/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.4/mm/filemap.c 2 | =================================================================== 3 | --- linux-4.4.orig/mm/filemap.c 2016-04-27 09:37:10.708338851 +0200 4 | +++ linux-4.4/mm/filemap.c 2016-04-27 09:37:10.701672185 +0200 5 | @@ -1175,6 +1175,10 @@ 6 | if (!page) 7 | return NULL; 8 | 9 | +#ifndef DISABLE_CAUSES 10 | + page->locked_causes = NULL; 11 | +#endif 12 | + 13 | if (WARN_ON_ONCE(!(fgp_flags & FGP_LOCK))) 14 | fgp_flags |= FGP_LOCK; 15 | 16 | -------------------------------------------------------------------------------- /patches/4.5/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.5/mm/filemap.c 2 | =================================================================== 3 | --- linux-4.5.orig/mm/filemap.c 2016-04-27 09:54:09.848312714 +0200 4 | +++ linux-4.5/mm/filemap.c 2016-04-27 09:54:09.841646048 +0200 5 | @@ -1208,6 +1208,10 @@ 6 | if (!page) 7 | return NULL; 8 | 9 | +#ifndef DISABLE_CAUSES 10 | + page->locked_causes = NULL; 11 | +#endif 12 | + 13 | if (WARN_ON_ONCE(!(fgp_flags & FGP_LOCK))) 14 | fgp_flags |= FGP_LOCK; 15 | 16 | -------------------------------------------------------------------------------- /patches/3.16/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.16/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.16.orig/mm/filemap.c 2016-04-26 13:42:22.659997951 +0200 4 | +++ linux-3.16/mm/filemap.c 2016-04-26 13:44:55.463327365 +0200 5 | @@ -1100,6 +1100,10 @@ 6 | if (!page) 7 | return NULL; 8 | 9 | +#ifndef DISABLE_CAUSES 10 | + page->locked_causes = NULL; 11 | +#endif 12 | + 13 | if (WARN_ON_ONCE(!(fgp_flags & FGP_LOCK))) 14 | fgp_flags |= FGP_LOCK; 15 | 16 | -------------------------------------------------------------------------------- /patches/3.17/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.17/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.17.orig/mm/filemap.c 2016-04-26 14:05:15.286629415 +0200 4 | +++ linux-3.17/mm/filemap.c 2016-04-26 14:05:15.279962748 +0200 5 | @@ -1106,6 +1106,10 @@ 6 | if (!page) 7 | return NULL; 8 | 9 | +#ifndef DISABLE_CAUSES 10 | + page->locked_causes = NULL; 11 | +#endif 12 | + 13 | if (WARN_ON_ONCE(!(fgp_flags & FGP_LOCK))) 14 | fgp_flags |= FGP_LOCK; 15 | 16 | -------------------------------------------------------------------------------- /patches/3.18/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.18/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.18.orig/mm/filemap.c 2016-04-26 14:26:16.173263746 +0200 4 | +++ linux-3.18/mm/filemap.c 2016-04-26 14:26:16.166597078 +0200 5 | @@ -1115,6 +1115,10 @@ 6 | if (!page) 7 | return NULL; 8 | 9 | +#ifndef DISABLE_CAUSES 10 | + page->locked_causes = NULL; 11 | +#endif 12 | + 13 | if (WARN_ON_ONCE(!(fgp_flags & FGP_LOCK))) 14 | fgp_flags |= FGP_LOCK; 15 | 16 | -------------------------------------------------------------------------------- /patches/3.19/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.19/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.19.orig/mm/filemap.c 2016-04-26 14:44:35.313235557 +0200 4 | +++ linux-3.19/mm/filemap.c 2016-04-26 14:44:35.306568891 +0200 5 | @@ -1110,6 +1110,10 @@ 6 | if (!page) 7 | return NULL; 8 | 9 | +#ifndef DISABLE_CAUSES 10 | + page->locked_causes = NULL; 11 | +#endif 12 | + 13 | if (WARN_ON_ONCE(!(fgp_flags & FGP_LOCK))) 14 | fgp_flags |= FGP_LOCK; 15 | 16 | -------------------------------------------------------------------------------- /patches/4.0/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.19/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.19.orig/mm/filemap.c 2016-04-26 14:44:35.313235557 +0200 4 | +++ linux-3.19/mm/filemap.c 2016-04-26 14:44:35.306568891 +0200 5 | @@ -1110,6 +1110,10 @@ 6 | if (!page) 7 | return NULL; 8 | 9 | +#ifndef DISABLE_CAUSES 10 | + page->locked_causes = NULL; 11 | +#endif 12 | + 13 | if (WARN_ON_ONCE(!(fgp_flags & FGP_LOCK))) 14 | fgp_flags |= FGP_LOCK; 15 | 16 | -------------------------------------------------------------------------------- /patches/3.10/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.9/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.9.orig/mm/page-writeback.c 2016-04-25 19:57:13.618734999 +0200 4 | +++ linux-3.9/mm/page-writeback.c 2016-04-25 19:57:13.615401666 +0200 5 | @@ -1930,6 +1930,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.11/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.9/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.9.orig/mm/page-writeback.c 2016-04-25 19:57:13.618734999 +0200 4 | +++ linux-3.9/mm/page-writeback.c 2016-04-25 19:57:13.615401666 +0200 5 | @@ -1930,6 +1930,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.3/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.3.orig/mm/page-writeback.c 2016-04-25 11:48:38.433138313 +0200 4 | +++ linux-3.3/mm/page-writeback.c 2016-04-25 11:48:38.429804981 +0200 5 | @@ -1876,6 +1876,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.4/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.4.orig/mm/page-writeback.c 2016-04-25 14:47:20.118008055 +0200 4 | +++ linux-3.4/mm/page-writeback.c 2016-04-25 14:47:20.111341388 +0200 5 | @@ -1879,6 +1879,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.5/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.5.orig/mm/page-writeback.c 2016-04-25 17:37:53.894474741 +0200 4 | +++ linux-3.5/mm/page-writeback.c 2016-04-25 17:37:53.887808075 +0200 5 | @@ -1880,6 +1880,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.6/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.6/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.6.orig/mm/page-writeback.c 2016-04-25 17:52:57.317780178 +0200 4 | +++ linux-3.6/mm/page-writeback.c 2016-04-25 17:52:57.307780179 +0200 5 | @@ -1904,6 +1904,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.7/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.7/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.7.orig/kernel/kthread.c 2016-04-25 18:19:04.104398465 +0200 4 | +++ linux-3.7/kernel/kthread.c 2016-04-25 18:19:04.071065132 +0200 5 | @@ -83,6 +83,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.7/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.7/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.7.orig/mm/page-writeback.c 2016-04-25 18:19:17.101064730 +0200 4 | +++ linux-3.7/mm/page-writeback.c 2016-04-25 18:19:17.094398063 +0200 5 | @@ -1912,6 +1912,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.8/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.7/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.7.orig/kernel/kthread.c 2016-04-25 18:19:04.104398465 +0200 4 | +++ linux-3.7/kernel/kthread.c 2016-04-25 18:19:04.071065132 +0200 5 | @@ -83,6 +83,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.8/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.8/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.8.orig/mm/page-writeback.c 2016-04-25 19:36:51.495439403 +0200 4 | +++ linux-3.8/mm/page-writeback.c 2016-04-25 19:36:51.492106070 +0200 5 | @@ -1926,6 +1926,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.9/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.7/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.7.orig/kernel/kthread.c 2016-04-25 18:19:04.104398465 +0200 4 | +++ linux-3.7/kernel/kthread.c 2016-04-25 18:19:04.071065132 +0200 5 | @@ -83,6 +83,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.9/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.9/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.9.orig/mm/page-writeback.c 2016-04-25 19:57:13.618734999 +0200 4 | +++ linux-3.9/mm/page-writeback.c 2016-04-25 19:57:13.615401666 +0200 5 | @@ -1930,6 +1930,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/4.0/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.0/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-4.0.orig/mm/page-writeback.c 2016-04-26 15:07:44.533199930 +0200 4 | +++ linux-4.0/mm/page-writeback.c 2016-04-26 15:07:44.526533263 +0200 5 | @@ -2038,6 +2038,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/4.1/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.0/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-4.0.orig/mm/page-writeback.c 2016-04-26 15:07:44.533199930 +0200 4 | +++ linux-4.0/mm/page-writeback.c 2016-04-26 15:07:44.526533263 +0200 5 | @@ -2038,6 +2038,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/4.2/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-4.2.orig/mm/page-writeback.c 2016-04-26 17:00:58.466597805 +0200 4 | +++ linux-4.2/mm/page-writeback.c 2016-04-26 17:00:58.463264472 +0200 5 | @@ -2334,6 +2334,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/4.3/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.3/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-4.3.orig/mm/page-writeback.c 2016-04-27 09:16:31.318370636 +0200 4 | +++ linux-4.3/mm/page-writeback.c 2016-04-27 09:16:31.311703970 +0200 5 | @@ -2344,6 +2344,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/4.4/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.4/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-4.4.orig/mm/page-writeback.c 2016-04-27 09:37:37.631671494 +0200 4 | +++ linux-4.4/mm/page-writeback.c 2016-04-27 09:37:37.628338161 +0200 5 | @@ -2346,6 +2346,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/4.5/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.5/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-4.5.orig/mm/page-writeback.c 2016-04-27 09:54:34.554978748 +0200 4 | +++ linux-4.5/mm/page-writeback.c 2016-04-27 09:54:34.548312081 +0200 5 | @@ -2356,6 +2356,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.10/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.10.orig/kernel/kthread.c 2016-04-26 05:53:48.974135105 +0200 4 | +++ linux-3.10/kernel/kthread.c 2016-04-26 05:53:48.967468439 +0200 5 | @@ -97,6 +97,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.11/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.10.orig/kernel/kthread.c 2016-04-26 05:53:48.974135105 +0200 4 | +++ linux-3.10/kernel/kthread.c 2016-04-26 05:53:48.967468439 +0200 5 | @@ -97,6 +97,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.12/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.10.orig/kernel/kthread.c 2016-04-26 05:53:48.974135105 +0200 4 | +++ linux-3.10/kernel/kthread.c 2016-04-26 05:53:48.967468439 +0200 5 | @@ -97,6 +97,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.12/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.12.orig/mm/page-writeback.c 2016-04-26 10:55:59.600312429 +0200 4 | +++ linux-3.12/mm/page-writeback.c 2016-04-26 10:55:59.593645763 +0200 5 | @@ -2071,6 +2071,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.13/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.10.orig/kernel/kthread.c 2016-04-26 05:53:48.974135105 +0200 4 | +++ linux-3.10/kernel/kthread.c 2016-04-26 05:53:48.967468439 +0200 5 | @@ -97,6 +97,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.13/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.12.orig/mm/page-writeback.c 2016-04-26 10:55:59.600312429 +0200 4 | +++ linux-3.12/mm/page-writeback.c 2016-04-26 10:55:59.593645763 +0200 5 | @@ -2071,6 +2071,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.14/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.10.orig/kernel/kthread.c 2016-04-26 05:53:48.974135105 +0200 4 | +++ linux-3.10/kernel/kthread.c 2016-04-26 05:53:48.967468439 +0200 5 | @@ -97,6 +97,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.14/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.14/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.14.orig/mm/page-writeback.c 2016-04-26 12:13:27.496859897 +0200 4 | +++ linux-3.14/mm/page-writeback.c 2016-04-26 12:13:27.490193230 +0200 5 | @@ -2066,6 +2066,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.15/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.10.orig/kernel/kthread.c 2016-04-26 05:53:48.974135105 +0200 4 | +++ linux-3.10/kernel/kthread.c 2016-04-26 05:53:48.967468439 +0200 5 | @@ -97,6 +97,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.15/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.14/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.14.orig/mm/page-writeback.c 2016-04-26 12:13:27.496859897 +0200 4 | +++ linux-3.14/mm/page-writeback.c 2016-04-26 12:13:27.490193230 +0200 5 | @@ -2066,6 +2066,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.16/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.10.orig/kernel/kthread.c 2016-04-26 05:53:48.974135105 +0200 4 | +++ linux-3.10/kernel/kthread.c 2016-04-26 05:53:48.967468439 +0200 5 | @@ -97,6 +97,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.16/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.16/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.16.orig/mm/page-writeback.c 2016-04-26 13:51:58.519983182 +0200 4 | +++ linux-3.16/mm/page-writeback.c 2016-04-26 13:51:58.513316515 +0200 5 | @@ -2048,6 +2048,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.17/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.10.orig/kernel/kthread.c 2016-04-26 05:53:48.974135105 +0200 4 | +++ linux-3.10/kernel/kthread.c 2016-04-26 05:53:48.967468439 +0200 5 | @@ -97,6 +97,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.17/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.17/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.17.orig/mm/page-writeback.c 2016-04-26 14:05:42.083295395 +0200 4 | +++ linux-3.17/mm/page-writeback.c 2016-04-26 14:05:42.076628728 +0200 5 | @@ -2045,6 +2045,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.18/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.10.orig/kernel/kthread.c 2016-04-26 05:53:48.974135105 +0200 4 | +++ linux-3.10/kernel/kthread.c 2016-04-26 05:53:48.967468439 +0200 5 | @@ -97,6 +97,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.18/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.17/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.17.orig/mm/page-writeback.c 2016-04-26 14:05:42.083295395 +0200 4 | +++ linux-3.17/mm/page-writeback.c 2016-04-26 14:05:42.076628728 +0200 5 | @@ -2045,6 +2045,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.19/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.10.orig/kernel/kthread.c 2016-04-26 05:53:48.974135105 +0200 4 | +++ linux-3.10/kernel/kthread.c 2016-04-26 05:53:48.967468439 +0200 5 | @@ -97,6 +97,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.19/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.19/mm/page-writeback.c 2 | =================================================================== 3 | --- linux-3.19.orig/mm/page-writeback.c 2016-04-26 14:45:04.226568149 +0200 4 | +++ linux-3.19/mm/page-writeback.c 2016-04-26 14:45:04.223234815 +0200 5 | @@ -2035,6 +2035,7 @@ 6 | ret = generic_writepages(mapping, wbc); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL(do_writepages); 10 | 11 | /** 12 | * write_one_page - write out a single page and optionally wait on I/O 13 | -------------------------------------------------------------------------------- /patches/3.2/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.2/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.2.orig/kernel/hrtimer.c 2016-04-25 11:04:15.906553862 +0200 4 | +++ linux-3.2/kernel/hrtimer.c 2016-04-25 11:04:15.899887196 +0200 5 | @@ -1596,6 +1596,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.3/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.2/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.2.orig/kernel/hrtimer.c 2016-04-25 11:04:15.906553862 +0200 4 | +++ linux-3.2/kernel/hrtimer.c 2016-04-25 11:04:15.899887196 +0200 5 | @@ -1596,6 +1596,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.4/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.2/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.2.orig/kernel/hrtimer.c 2016-04-25 11:04:15.906553862 +0200 4 | +++ linux-3.2/kernel/hrtimer.c 2016-04-25 11:04:15.899887196 +0200 5 | @@ -1596,6 +1596,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.5/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.5.orig/kernel/hrtimer.c 2016-04-25 17:37:29.751142153 +0200 4 | +++ linux-3.5/kernel/hrtimer.c 2016-04-25 17:37:29.744475487 +0200 5 | @@ -1617,6 +1617,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.6/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.5.orig/kernel/hrtimer.c 2016-04-25 17:37:29.751142153 +0200 4 | +++ linux-3.5/kernel/hrtimer.c 2016-04-25 17:37:29.744475487 +0200 5 | @@ -1617,6 +1617,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.7/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.5.orig/kernel/hrtimer.c 2016-04-25 17:37:29.751142153 +0200 4 | +++ linux-3.5/kernel/hrtimer.c 2016-04-25 17:37:29.744475487 +0200 5 | @@ -1617,6 +1617,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.8/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.5.orig/kernel/hrtimer.c 2016-04-25 17:37:29.751142153 +0200 4 | +++ linux-3.5/kernel/hrtimer.c 2016-04-25 17:37:29.744475487 +0200 5 | @@ -1617,6 +1617,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.9/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.9/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.9.orig/kernel/hrtimer.c 2016-04-25 19:56:51.342069020 +0200 4 | +++ linux-3.9/kernel/hrtimer.c 2016-04-25 19:56:51.332069020 +0200 5 | @@ -1620,6 +1620,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/4.0/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.10.orig/kernel/kthread.c 2016-04-26 05:53:48.974135105 +0200 4 | +++ linux-3.10/kernel/kthread.c 2016-04-26 05:53:48.967468439 +0200 5 | @@ -97,6 +97,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/4.1/kthread.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/kernel/kthread.c 2 | =================================================================== 3 | --- linux-3.10.orig/kernel/kthread.c 2016-04-26 05:53:48.974135105 +0200 4 | +++ linux-3.10/kernel/kthread.c 2016-04-26 05:53:48.967468439 +0200 5 | @@ -97,6 +97,7 @@ 6 | { 7 | return test_bit(KTHREAD_SHOULD_PARK, &to_kthread(current)->flags); 8 | } 9 | +EXPORT_SYMBOL(kthread_data); 10 | 11 | /** 12 | * kthread_freezable_should_stop - should this freezable kthread return now? 13 | -------------------------------------------------------------------------------- /patches/3.10/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.10.orig/kernel/hrtimer.c 2016-04-26 05:53:36.634135486 +0200 4 | +++ linux-3.10/kernel/hrtimer.c 2016-04-26 05:53:36.630802153 +0200 5 | @@ -1640,6 +1640,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.11/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.11/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.11.orig/kernel/hrtimer.c 2016-04-26 10:17:17.117038657 +0200 4 | +++ linux-3.11/kernel/hrtimer.c 2016-04-26 10:17:17.110371991 +0200 5 | @@ -1641,6 +1641,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.12/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.11/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.11.orig/kernel/hrtimer.c 2016-04-26 10:17:17.117038657 +0200 4 | +++ linux-3.11/kernel/hrtimer.c 2016-04-26 10:17:17.110371991 +0200 5 | @@ -1641,6 +1641,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.13/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.11/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.11.orig/kernel/hrtimer.c 2016-04-26 10:17:17.117038657 +0200 4 | +++ linux-3.11/kernel/hrtimer.c 2016-04-26 10:17:17.110371991 +0200 5 | @@ -1641,6 +1641,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.14/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.14/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.14.orig/kernel/hrtimer.c 2016-04-26 12:13:11.440193642 +0200 4 | +++ linux-3.14/kernel/hrtimer.c 2016-04-26 12:13:11.433526976 +0200 5 | @@ -1642,6 +1642,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.15/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.15/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.15.orig/kernel/hrtimer.c 2016-04-26 13:24:14.073359201 +0200 4 | +++ linux-3.15/kernel/hrtimer.c 2016-04-26 13:24:14.066692535 +0200 5 | @@ -1651,6 +1651,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.16/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.16/kernel/hrtimer.c 2 | =================================================================== 3 | --- linux-3.16.orig/kernel/hrtimer.c 2016-04-26 13:51:44.776650201 +0200 4 | +++ linux-3.16/kernel/hrtimer.c 2016-04-26 13:51:44.769983534 +0200 5 | @@ -1652,6 +1652,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/4.5/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.5/include/linux/fs.h 2 | =================================================================== 3 | --- linux-4.5.orig/include/linux/fs.h 2016-04-27 15:37:09.519105123 +0200 4 | +++ linux-4.5/include/linux/fs.h 2016-04-27 17:46:50.556136436 +0200 5 | @@ -679,6 +679,8 @@ 6 | #endif 7 | 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + long i_private1; /* temp var for split-level io scheduler */ 11 | }; 12 | 13 | static inline int inode_unhashed(struct inode *inode) 14 | -------------------------------------------------------------------------------- /patches/3.10/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.10.orig/block/blk-core.c 2016-04-26 05:52:26.374137657 +0200 4 | +++ linux-3.10/block/blk-core.c 2016-04-26 05:52:26.367470989 +0200 5 | @@ -142,6 +142,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.11/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.10.orig/block/blk-core.c 2016-04-26 05:52:26.374137657 +0200 4 | +++ linux-3.10/block/blk-core.c 2016-04-26 05:52:26.367470989 +0200 5 | @@ -142,6 +142,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.12/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.10.orig/block/blk-core.c 2016-04-26 05:52:26.374137657 +0200 4 | +++ linux-3.10/block/blk-core.c 2016-04-26 05:52:26.367470989 +0200 5 | @@ -142,6 +142,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.13/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.13/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.13.orig/block/blk-core.c 2016-04-26 11:04:48.206965539 +0200 4 | +++ linux-3.13/block/blk-core.c 2016-04-26 11:04:48.200298872 +0200 5 | @@ -107,6 +107,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.14/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.14/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.14.orig/block/blk-core.c 2016-04-26 12:12:30.966861347 +0200 4 | +++ linux-3.14/block/blk-core.c 2016-04-26 12:12:30.960194680 +0200 5 | @@ -108,6 +108,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.15/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.14/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.14.orig/block/blk-core.c 2016-04-26 12:12:30.966861347 +0200 4 | +++ linux-3.14/block/blk-core.c 2016-04-26 12:12:30.960194680 +0200 5 | @@ -108,6 +108,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.16/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.16/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.16.orig/block/blk-core.c 2016-04-26 13:51:13.553317668 +0200 4 | +++ linux-3.16/block/blk-core.c 2016-04-26 13:51:13.546651002 +0200 5 | @@ -109,6 +109,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.17/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.16/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.16.orig/block/blk-core.c 2016-04-26 13:51:13.553317668 +0200 4 | +++ linux-3.16/block/blk-core.c 2016-04-26 13:51:13.546651002 +0200 5 | @@ -109,6 +109,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.18/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.18/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.18.orig/block/blk-core.c 2016-04-26 14:25:29.659931605 +0200 4 | +++ linux-3.18/block/blk-core.c 2016-04-26 14:25:29.653264938 +0200 5 | @@ -105,6 +105,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.19/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.18/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.18.orig/block/blk-core.c 2016-04-26 14:25:29.659931605 +0200 4 | +++ linux-3.18/block/blk-core.c 2016-04-26 14:25:29.653264938 +0200 5 | @@ -105,6 +105,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.3/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.3.orig/block/blk-core.c 2016-04-25 11:46:31.169808910 +0200 4 | +++ linux-3.3/block/blk-core.c 2016-04-25 11:46:31.166475577 +0200 5 | @@ -138,6 +138,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.4/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.3.orig/block/blk-core.c 2016-04-25 11:46:31.169808910 +0200 4 | +++ linux-3.3/block/blk-core.c 2016-04-25 11:46:31.166475577 +0200 5 | @@ -138,6 +138,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.5/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.5.orig/block/blk-core.c 2016-04-25 17:36:39.664477034 +0200 4 | +++ linux-3.5/block/blk-core.c 2016-04-25 17:36:39.661143700 +0200 5 | @@ -140,6 +140,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.6/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.5.orig/block/blk-core.c 2016-04-25 17:36:39.664477034 +0200 4 | +++ linux-3.5/block/blk-core.c 2016-04-25 17:36:39.661143700 +0200 5 | @@ -140,6 +140,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.7/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.5.orig/block/blk-core.c 2016-04-25 17:36:39.664477034 +0200 4 | +++ linux-3.5/block/blk-core.c 2016-04-25 17:36:39.661143700 +0200 5 | @@ -140,6 +140,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.8/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.8/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.8.orig/block/blk-core.c 2016-04-25 19:35:16.288775677 +0200 4 | +++ linux-3.8/block/blk-core.c 2016-04-25 19:35:16.282109009 +0200 5 | @@ -141,6 +141,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/3.9/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.8/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.8.orig/block/blk-core.c 2016-04-25 19:35:16.288775677 +0200 4 | +++ linux-3.8/block/blk-core.c 2016-04-25 19:35:16.282109009 +0200 5 | @@ -141,6 +141,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/4.0/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.18/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.18.orig/block/blk-core.c 2016-04-26 14:25:29.659931605 +0200 4 | +++ linux-3.18/block/blk-core.c 2016-04-26 14:25:29.653264938 +0200 5 | @@ -105,6 +105,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/4.1/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.18/block/blk-core.c 2 | =================================================================== 3 | --- linux-3.18.orig/block/blk-core.c 2016-04-26 14:25:29.659931605 +0200 4 | +++ linux-3.18/block/blk-core.c 2016-04-26 14:25:29.653264938 +0200 5 | @@ -105,6 +105,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/4.2/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/block/blk-core.c 2 | =================================================================== 3 | --- linux-4.2.orig/block/blk-core.c 2016-04-26 16:59:56.853266052 +0200 4 | +++ linux-4.2/block/blk-core.c 2016-04-26 16:59:56.846599386 +0200 5 | @@ -130,6 +130,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/4.3/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/block/blk-core.c 2 | =================================================================== 3 | --- linux-4.2.orig/block/blk-core.c 2016-04-26 16:59:56.853266052 +0200 4 | +++ linux-4.2/block/blk-core.c 2016-04-26 16:59:56.846599386 +0200 5 | @@ -130,6 +130,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/4.4/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/block/blk-core.c 2 | =================================================================== 3 | --- linux-4.2.orig/block/blk-core.c 2016-04-26 16:59:56.853266052 +0200 4 | +++ linux-4.2/block/blk-core.c 2016-04-26 16:59:56.846599386 +0200 5 | @@ -130,6 +130,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/4.5/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/block/blk-core.c 2 | =================================================================== 3 | --- linux-4.2.orig/block/blk-core.c 2016-04-26 16:59:56.853266052 +0200 4 | +++ linux-4.2/block/blk-core.c 2016-04-26 16:59:56.846599386 +0200 5 | @@ -130,6 +130,7 @@ 6 | rq->__sector = (sector_t) -1; 7 | INIT_HLIST_NODE(&rq->hash); 8 | RB_CLEAR_NODE(&rq->rb_node); 9 | + RB_CLEAR_NODE(&rq->expire_rb_node); 10 | rq->cmd = rq->__cmd; 11 | rq->cmd_len = BLK_MAX_CDB; 12 | rq->tag = -1; 13 | -------------------------------------------------------------------------------- /patches/4.0/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.0/kernel/time/hrtimer.c 2 | =================================================================== 3 | --- linux-4.0.orig/kernel/time/hrtimer.c 2016-04-26 15:07:20.889867203 +0200 4 | +++ linux-4.0/kernel/time/hrtimer.c 2016-04-26 15:07:20.886533869 +0200 5 | @@ -1594,6 +1594,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/4.1/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.1/kernel/time/hrtimer.c 2 | =================================================================== 3 | --- linux-4.1.orig/kernel/time/hrtimer.c 2016-04-26 15:18:39.033183144 +0200 4 | +++ linux-4.1/kernel/time/hrtimer.c 2016-04-26 15:18:39.029849811 +0200 5 | @@ -1596,6 +1596,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/4.2/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/kernel/time/hrtimer.c 2 | =================================================================== 3 | --- linux-4.2.orig/kernel/time/hrtimer.c 2016-04-26 17:00:37.183265018 +0200 4 | +++ linux-4.2/kernel/time/hrtimer.c 2016-04-26 17:00:37.176598351 +0200 5 | @@ -1555,6 +1555,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/4.3/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.3/kernel/time/hrtimer.c 2 | =================================================================== 3 | --- linux-4.3.orig/kernel/time/hrtimer.c 2016-04-27 09:16:11.351704481 +0200 4 | +++ linux-4.3/kernel/time/hrtimer.c 2016-04-27 09:16:11.345037815 +0200 5 | @@ -1563,6 +1563,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/4.4/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.3/kernel/time/hrtimer.c 2 | =================================================================== 3 | --- linux-4.3.orig/kernel/time/hrtimer.c 2016-04-27 09:16:11.351704481 +0200 4 | +++ linux-4.3/kernel/time/hrtimer.c 2016-04-27 09:16:11.345037815 +0200 5 | @@ -1563,6 +1563,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/4.5/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.5/kernel/time/hrtimer.c 2 | =================================================================== 3 | --- linux-4.5.orig/kernel/time/hrtimer.c 2016-04-27 09:54:19.604979131 +0200 4 | +++ linux-4.5/kernel/time/hrtimer.c 2016-04-27 09:54:19.598312465 +0200 5 | @@ -1582,6 +1582,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.17/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.17/kernel/time/hrtimer.c 2 | =================================================================== 3 | --- linux-3.17.orig/kernel/time/hrtimer.c 2016-04-26 14:02:01.633301048 +0200 4 | +++ linux-3.17/kernel/time/hrtimer.c 2016-04-26 14:02:01.626634382 +0200 5 | @@ -1602,6 +1602,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.18/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.17/kernel/time/hrtimer.c 2 | =================================================================== 3 | --- linux-3.17.orig/kernel/time/hrtimer.c 2016-04-26 14:02:01.633301048 +0200 4 | +++ linux-3.17/kernel/time/hrtimer.c 2016-04-26 14:02:01.626634382 +0200 5 | @@ -1602,6 +1602,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.19/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.17/kernel/time/hrtimer.c 2 | =================================================================== 3 | --- linux-3.17.orig/kernel/time/hrtimer.c 2016-04-26 14:02:01.633301048 +0200 4 | +++ linux-3.17/kernel/time/hrtimer.c 2016-04-26 14:02:01.626634382 +0200 5 | @@ -1602,6 +1602,7 @@ 6 | destroy_hrtimer_on_stack(&t.timer); 7 | return ret; 8 | } 9 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 10 | 11 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 12 | struct timespec __user *, rmtp) 13 | -------------------------------------------------------------------------------- /patches/3.2.51/hrtimer.c.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/kernel/hrtimer.c 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/kernel/hrtimer.c 2015-09-01 05:42:50.000000000 +0200 3 | @@ -1624,6 +1624,7 @@ 4 | destroy_hrtimer_on_stack(&t.timer); 5 | return ret; 6 | } 7 | +EXPORT_SYMBOL_GPL(hrtimer_nanosleep); 8 | 9 | SYSCALL_DEFINE2(nanosleep, struct timespec __user *, rqtp, 10 | struct timespec __user *, rmtp) 11 | diff -rubBN linux-3.2.51/kernel/kthread.c ../split-release/release/linux-3.2.51/kernel/kthread.c 12 | -------------------------------------------------------------------------------- /patches/3.2/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/block/blk-core.c 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/block/blk-core.c 2015-09-01 05:42:46.000000000 +0200 3 | @@ -136,6 +136,7 @@ 4 | rq->__sector = (sector_t) -1; 5 | INIT_HLIST_NODE(&rq->hash); 6 | RB_CLEAR_NODE(&rq->rb_node); 7 | + RB_CLEAR_NODE(&rq->expire_rb_node); 8 | rq->cmd = rq->__cmd; 9 | rq->cmd_len = BLK_MAX_CDB; 10 | rq->tag = -1; 11 | diff -rubBN linux-3.2.51/block/blk-lib.c ../split-release/release/linux-3.2.51/block/blk-lib.c 12 | -------------------------------------------------------------------------------- /patches/3.2.51/blk-core.c.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/block/blk-core.c 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/block/blk-core.c 2015-09-01 05:42:46.000000000 +0200 3 | @@ -136,6 +136,7 @@ 4 | rq->__sector = (sector_t) -1; 5 | INIT_HLIST_NODE(&rq->hash); 6 | RB_CLEAR_NODE(&rq->rb_node); 7 | + RB_CLEAR_NODE(&rq->expire_rb_node); 8 | rq->cmd = rq->__cmd; 9 | rq->cmd_len = BLK_MAX_CDB; 10 | rq->tag = -1; 11 | diff -rubBN linux-3.2.51/block/blk-lib.c ../split-release/release/linux-3.2.51/block/blk-lib.c 12 | -------------------------------------------------------------------------------- /patches/3.2/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/mm/page-writeback.c 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/mm/page-writeback.c 2015-09-01 05:42:46.000000000 +0200 3 | @@ -1679,6 +1679,7 @@ 4 | ret = generic_writepages(mapping, wbc); 5 | return ret; 6 | } 7 | +EXPORT_SYMBOL(do_writepages); 8 | 9 | /** 10 | * write_one_page - write out a single page and optionally wait on I/O 11 | diff -rubBN linux-3.2.51/scripts/genksyms/keywords.hash.c ../split-release/release/linux-3.2.51/scripts/genksyms/keywords.hash.c 12 | -------------------------------------------------------------------------------- /patches/3.10/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.7/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.7.orig/include/linux/blk_types.h 2016-04-25 18:18:10.834400110 +0200 4 | +++ linux-3.7/include/linux/blk_types.h 2016-04-25 18:18:10.831066776 +0200 5 | @@ -86,6 +86,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.11/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.7/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.7.orig/include/linux/blk_types.h 2016-04-25 18:18:10.834400110 +0200 4 | +++ linux-3.7/include/linux/blk_types.h 2016-04-25 18:18:10.831066776 +0200 5 | @@ -86,6 +86,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.12/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.7/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.7.orig/include/linux/blk_types.h 2016-04-25 18:18:10.834400110 +0200 4 | +++ linux-3.7/include/linux/blk_types.h 2016-04-25 18:18:10.831066776 +0200 5 | @@ -86,6 +86,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.13/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.7/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.7.orig/include/linux/blk_types.h 2016-04-25 18:18:10.834400110 +0200 4 | +++ linux-3.7/include/linux/blk_types.h 2016-04-25 18:18:10.831066776 +0200 5 | @@ -86,6 +86,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.15/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.15/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.15.orig/include/linux/fs.h 2016-04-26 13:24:07.326692707 +0200 4 | +++ linux-3.15/include/linux/fs.h 2016-04-26 13:24:07.323359375 +0200 5 | @@ -585,6 +585,9 @@ 6 | #endif 7 | 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.16/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.16/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.16.orig/include/linux/fs.h 2016-04-26 13:49:13.899987404 +0200 4 | +++ linux-3.16/include/linux/fs.h 2016-04-26 13:49:13.889987404 +0200 5 | @@ -588,6 +588,9 @@ 6 | #endif 7 | 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.17/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.17/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.17.orig/include/linux/fs.h 2016-04-26 14:05:17.746629352 +0200 4 | +++ linux-3.17/include/linux/fs.h 2016-04-26 14:05:17.743296019 +0200 5 | @@ -613,6 +613,9 @@ 6 | #endif 7 | 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.18/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.18/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.18.orig/include/linux/fs.h 2016-04-26 14:26:18.573263684 +0200 4 | +++ linux-3.18/include/linux/fs.h 2016-04-26 14:26:18.566597017 +0200 5 | @@ -624,6 +624,9 @@ 6 | #endif 7 | 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.19/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.19/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.19.orig/include/linux/fs.h 2016-04-26 14:44:38.406568811 +0200 4 | +++ linux-3.19/include/linux/fs.h 2016-04-26 14:44:38.399902144 +0200 5 | @@ -642,6 +642,9 @@ 6 | #endif 7 | 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.2.51/page-writeback.c.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/mm/page-writeback.c 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/mm/page-writeback.c 2015-09-01 05:42:46.000000000 +0200 3 | @@ -1679,6 +1679,7 @@ 4 | ret = generic_writepages(mapping, wbc); 5 | return ret; 6 | } 7 | +EXPORT_SYMBOL(do_writepages); 8 | 9 | /** 10 | * write_one_page - write out a single page and optionally wait on I/O 11 | diff -rubBN linux-3.2.51/scripts/genksyms/keywords.hash.c ../split-release/release/linux-3.2.51/scripts/genksyms/keywords.hash.c 12 | -------------------------------------------------------------------------------- /patches/3.7/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.7/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.7.orig/include/linux/blk_types.h 2016-04-25 18:18:10.834400110 +0200 4 | +++ linux-3.7/include/linux/blk_types.h 2016-04-25 18:18:10.831066776 +0200 5 | @@ -86,6 +86,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.8/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.7/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.7.orig/include/linux/blk_types.h 2016-04-25 18:18:10.834400110 +0200 4 | +++ linux-3.7/include/linux/blk_types.h 2016-04-25 18:18:10.831066776 +0200 5 | @@ -86,6 +86,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.9/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.7/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.7.orig/include/linux/blk_types.h 2016-04-25 18:18:10.834400110 +0200 4 | +++ linux-3.7/include/linux/blk_types.h 2016-04-25 18:18:10.831066776 +0200 5 | @@ -86,6 +86,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/4.0/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.0/include/linux/fs.h 2 | =================================================================== 3 | --- linux-4.0.orig/include/linux/fs.h 2016-04-26 15:07:16.736533976 +0200 4 | +++ linux-4.0/include/linux/fs.h 2016-04-26 15:07:16.733200642 +0200 5 | @@ -639,6 +639,9 @@ 6 | #endif 7 | 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/4.1/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.1/include/linux/fs.h 2 | =================================================================== 3 | --- linux-4.1.orig/include/linux/fs.h 2016-04-26 15:18:33.339849957 +0200 4 | +++ linux-4.1/include/linux/fs.h 2016-04-26 15:18:33.333183291 +0200 5 | @@ -666,6 +666,9 @@ 6 | #endif 7 | 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/4.2/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/include/linux/fs.h 2 | =================================================================== 3 | --- linux-4.2.orig/include/linux/fs.h 2016-04-26 17:00:30.593265187 +0200 4 | +++ linux-4.2/include/linux/fs.h 2016-04-26 17:00:30.586598520 +0200 5 | @@ -677,6 +677,9 @@ 6 | #endif 7 | 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/4.3/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.3/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-4.3.orig/include/linux/blk_types.h 2016-04-27 09:15:16.485039222 +0200 4 | +++ linux-4.3/include/linux/blk_types.h 2016-04-27 09:15:16.478372555 +0200 5 | @@ -99,6 +99,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/4.3/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/include/linux/fs.h 2 | =================================================================== 3 | --- linux-4.2.orig/include/linux/fs.h 2016-04-26 17:00:30.593265187 +0200 4 | +++ linux-4.2/include/linux/fs.h 2016-04-26 17:00:30.586598520 +0200 5 | @@ -677,6 +677,9 @@ 6 | #endif 7 | 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/4.4/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.3/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-4.3.orig/include/linux/blk_types.h 2016-04-27 09:15:16.485039222 +0200 4 | +++ linux-4.3/include/linux/blk_types.h 2016-04-27 09:15:16.478372555 +0200 5 | @@ -99,6 +99,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/4.4/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/include/linux/fs.h 2 | =================================================================== 3 | --- linux-4.2.orig/include/linux/fs.h 2016-04-26 17:00:30.593265187 +0200 4 | +++ linux-4.2/include/linux/fs.h 2016-04-26 17:00:30.586598520 +0200 5 | @@ -677,6 +677,9 @@ 6 | #endif 7 | 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/4.5/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.3/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-4.3.orig/include/linux/blk_types.h 2016-04-27 09:15:16.485039222 +0200 4 | +++ linux-4.3/include/linux/blk_types.h 2016-04-27 09:15:16.478372555 +0200 5 | @@ -99,6 +99,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.14/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.14/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.14.orig/include/linux/blk_types.h 2016-04-26 12:12:37.536861178 +0200 4 | +++ linux-3.14/include/linux/blk_types.h 2016-04-26 12:12:37.530194511 +0200 5 | @@ -96,6 +96,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.15/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.14/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.14.orig/include/linux/blk_types.h 2016-04-26 12:12:37.536861178 +0200 4 | +++ linux-3.14/include/linux/blk_types.h 2016-04-26 12:12:37.530194511 +0200 5 | @@ -96,6 +96,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.16/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.14/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.14.orig/include/linux/blk_types.h 2016-04-26 12:12:37.536861178 +0200 4 | +++ linux-3.14/include/linux/blk_types.h 2016-04-26 12:12:37.530194511 +0200 5 | @@ -96,6 +96,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.17/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.14/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.14.orig/include/linux/blk_types.h 2016-04-26 12:12:37.536861178 +0200 4 | +++ linux-3.14/include/linux/blk_types.h 2016-04-26 12:12:37.530194511 +0200 5 | @@ -96,6 +96,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.18/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.18/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.18.orig/include/linux/blk_types.h 2016-04-26 14:25:38.949931367 +0200 4 | +++ linux-3.18/include/linux/blk_types.h 2016-04-26 14:25:38.943264700 +0200 5 | @@ -98,6 +98,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.19/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.18/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.18.orig/include/linux/blk_types.h 2016-04-26 14:25:38.949931367 +0200 4 | +++ linux-3.18/include/linux/blk_types.h 2016-04-26 14:25:38.943264700 +0200 5 | @@ -98,6 +98,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.4/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.4.orig/include/linux/journal-head.h 2016-04-25 14:47:08.991341731 +0200 4 | +++ linux-3.4/include/linux/journal-head.h 2016-04-25 14:47:08.984675065 +0200 5 | @@ -104,6 +104,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.5/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.4.orig/include/linux/journal-head.h 2016-04-25 14:47:08.991341731 +0200 4 | +++ linux-3.4/include/linux/journal-head.h 2016-04-25 14:47:08.984675065 +0200 5 | @@ -104,6 +104,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.6/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.4.orig/include/linux/journal-head.h 2016-04-25 14:47:08.991341731 +0200 4 | +++ linux-3.4/include/linux/journal-head.h 2016-04-25 14:47:08.984675065 +0200 5 | @@ -104,6 +104,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.7/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.4.orig/include/linux/journal-head.h 2016-04-25 14:47:08.991341731 +0200 4 | +++ linux-3.4/include/linux/journal-head.h 2016-04-25 14:47:08.984675065 +0200 5 | @@ -104,6 +104,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.8/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.4.orig/include/linux/journal-head.h 2016-04-25 14:47:08.991341731 +0200 4 | +++ linux-3.4/include/linux/journal-head.h 2016-04-25 14:47:08.984675065 +0200 5 | @@ -104,6 +104,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.9/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.4.orig/include/linux/journal-head.h 2016-04-25 14:47:08.991341731 +0200 4 | +++ linux-3.4/include/linux/journal-head.h 2016-04-25 14:47:08.984675065 +0200 5 | @@ -104,6 +104,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/4.0/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.18/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.18.orig/include/linux/blk_types.h 2016-04-26 14:25:38.949931367 +0200 4 | +++ linux-3.18/include/linux/blk_types.h 2016-04-26 14:25:38.943264700 +0200 5 | @@ -98,6 +98,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/4.1/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.18/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.18.orig/include/linux/blk_types.h 2016-04-26 14:25:38.949931367 +0200 4 | +++ linux-3.18/include/linux/blk_types.h 2016-04-26 14:25:38.943264700 +0200 5 | @@ -98,6 +98,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/4.2/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.18/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.18.orig/include/linux/blk_types.h 2016-04-26 14:25:38.949931367 +0200 4 | +++ linux-3.18/include/linux/blk_types.h 2016-04-26 14:25:38.943264700 +0200 5 | @@ -98,6 +98,8 @@ 6 | 7 | struct bio_set *bi_pool; 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/4.5/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.5/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-4.5.orig/include/linux/journal-head.h 2016-04-27 15:37:09.742438450 +0200 4 | +++ linux-4.5/include/linux/journal-head.h 2016-04-27 17:12:13.032878143 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list *causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.10/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.11/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.12/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.13/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.14/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.15/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.16/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.17/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.18/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.19/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/4.0/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/4.1/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/4.2/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/4.3/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/4.4/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/journal-head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/journal-head.h 2016-04-26 05:53:46.137468527 +0200 4 | +++ linux-3.10/include/linux/journal-head.h 2016-04-26 05:53:46.130801860 +0200 5 | @@ -101,6 +101,8 @@ 6 | 7 | /* Trigger type for the committing transaction's frozen data */ 8 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 9 | + 10 | + struct cause_list* causes; 11 | }; 12 | 13 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 14 | -------------------------------------------------------------------------------- /patches/3.10/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.9/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.9.orig/include/linux/init_task.h 2016-04-25 19:56:54.088735602 +0200 4 | +++ linux-3.9/include/linux/init_task.h 2016-04-25 19:56:54.085402269 +0200 5 | @@ -160,6 +160,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.11/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.9/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.9.orig/include/linux/init_task.h 2016-04-25 19:56:54.088735602 +0200 4 | +++ linux-3.9/include/linux/init_task.h 2016-04-25 19:56:54.085402269 +0200 5 | @@ -160,6 +160,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.12/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.9/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.9.orig/include/linux/init_task.h 2016-04-25 19:56:54.088735602 +0200 4 | +++ linux-3.9/include/linux/init_task.h 2016-04-25 19:56:54.085402269 +0200 5 | @@ -160,6 +160,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.13/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.9/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.9.orig/include/linux/init_task.h 2016-04-25 19:56:54.088735602 +0200 4 | +++ linux-3.9/include/linux/init_task.h 2016-04-25 19:56:54.085402269 +0200 5 | @@ -160,6 +160,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.2/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.2/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.2.orig/include/linux/init_task.h 2016-04-25 11:04:21.969887008 +0200 4 | +++ linux-3.2/include/linux/init_task.h 2016-04-25 11:04:21.966553675 +0200 5 | @@ -134,6 +134,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.3/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.3.orig/include/linux/init_task.h 2016-04-25 11:48:03.913139379 +0200 4 | +++ linux-3.3/include/linux/init_task.h 2016-04-25 11:48:03.909806046 +0200 5 | @@ -133,6 +133,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.4/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.4.orig/include/linux/init_task.h 2016-04-25 14:47:01.771341955 +0200 4 | +++ linux-3.4/include/linux/init_task.h 2016-04-25 14:47:01.764675288 +0200 5 | @@ -140,6 +140,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.5/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.4.orig/include/linux/init_task.h 2016-04-25 14:47:01.771341955 +0200 4 | +++ linux-3.4/include/linux/init_task.h 2016-04-25 14:47:01.764675288 +0200 5 | @@ -140,6 +140,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.6/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.6/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.6.orig/include/linux/init_task.h 2016-04-25 17:52:32.274447619 +0200 4 | +++ linux-3.6/include/linux/init_task.h 2016-04-25 17:52:32.241114286 +0200 5 | @@ -149,6 +149,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.7/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.6/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.6.orig/include/linux/init_task.h 2016-04-25 17:52:32.274447619 +0200 4 | +++ linux-3.6/include/linux/init_task.h 2016-04-25 17:52:32.241114286 +0200 5 | @@ -149,6 +149,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.8/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.6/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.6.orig/include/linux/init_task.h 2016-04-25 17:52:32.274447619 +0200 4 | +++ linux-3.6/include/linux/init_task.h 2016-04-25 17:52:32.241114286 +0200 5 | @@ -149,6 +149,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.9/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.9/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.9.orig/include/linux/init_task.h 2016-04-25 19:56:54.088735602 +0200 4 | +++ linux-3.9/include/linux/init_task.h 2016-04-25 19:56:54.085402269 +0200 5 | @@ -160,6 +160,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/4.0/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.0/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-4.0.orig/include/linux/init_task.h 2016-04-26 15:07:23.039867147 +0200 4 | +++ linux-4.0/include/linux/init_task.h 2016-04-26 15:07:23.033200481 +0200 5 | @@ -188,6 +188,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/4.1/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.0/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-4.0.orig/include/linux/init_task.h 2016-04-26 15:07:23.039867147 +0200 4 | +++ linux-4.0/include/linux/init_task.h 2016-04-26 15:07:23.033200481 +0200 5 | @@ -188,6 +188,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/4.2/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-4.2.orig/include/linux/init_task.h 2016-04-26 17:00:39.279931631 +0200 4 | +++ linux-4.2/include/linux/init_task.h 2016-04-26 17:00:39.273264964 +0200 5 | @@ -179,6 +179,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/4.3/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.3/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-4.3.orig/include/linux/init_task.h 2016-04-27 09:16:14.271704407 +0200 4 | +++ linux-4.3/include/linux/init_task.h 2016-04-27 09:16:14.265037740 +0200 5 | @@ -196,6 +196,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/4.4/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.4/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-4.4.orig/include/linux/init_task.h 2016-04-27 09:37:18.671671980 +0200 4 | +++ linux-4.4/include/linux/init_task.h 2016-04-27 09:37:18.668338647 +0200 5 | @@ -189,6 +189,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/4.5/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.4/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-4.4.orig/include/linux/init_task.h 2016-04-27 09:37:18.671671980 +0200 4 | +++ linux-4.4/include/linux/init_task.h 2016-04-27 09:37:18.668338647 +0200 5 | @@ -189,6 +189,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.14/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.14/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.14.orig/include/linux/init_task.h 2016-04-26 12:13:13.600193587 +0200 4 | +++ linux-3.14/include/linux/init_task.h 2016-04-26 12:13:13.593526920 +0200 5 | @@ -170,6 +170,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.15/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.14/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.14.orig/include/linux/init_task.h 2016-04-26 12:13:13.600193587 +0200 4 | +++ linux-3.14/include/linux/init_task.h 2016-04-26 12:13:13.593526920 +0200 5 | @@ -170,6 +170,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.16/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.16/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.16.orig/include/linux/init_task.h 2016-04-26 13:51:46.703316818 +0200 4 | +++ linux-3.16/include/linux/init_task.h 2016-04-26 13:51:46.699983485 +0200 5 | @@ -170,6 +170,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.17/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.17/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.17.orig/include/linux/init_task.h 2016-04-26 14:05:25.009962499 +0200 4 | +++ linux-3.17/include/linux/init_task.h 2016-04-26 14:05:25.003295832 +0200 5 | @@ -163,6 +163,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.18/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.18/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.18.orig/include/linux/init_task.h 2016-04-26 14:26:25.279930179 +0200 4 | +++ linux-3.18/include/linux/init_task.h 2016-04-26 14:26:25.276596845 +0200 5 | @@ -172,6 +172,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.19/init_task.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.19/include/linux/init_task.h 2 | =================================================================== 3 | --- linux-3.19.orig/include/linux/init_task.h 2016-04-26 14:44:45.833235287 +0200 4 | +++ linux-3.19/include/linux/init_task.h 2016-04-26 14:44:45.826568621 +0200 5 | @@ -181,6 +181,8 @@ 6 | */ 7 | #define INIT_TASK(tsk) \ 8 | { \ 9 | + .causes = NULL, \ 10 | + .account_id = ATOMIC_INIT(0), \ 11 | .state = 0, \ 12 | .stack = &init_thread_info, \ 13 | .usage = ATOMIC_INIT(2), \ 14 | -------------------------------------------------------------------------------- /patches/3.10/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/buffer_head.h 2016-04-26 05:52:39.470803919 +0200 4 | +++ linux-3.10/include/linux/buffer_head.h 2016-04-26 05:52:39.467470585 +0200 5 | @@ -74,6 +74,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/3.10/checkpoint.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/fs/jbd2/checkpoint.c 2 | =================================================================== 3 | --- linux-3.4.orig/fs/jbd2/checkpoint.c 2016-04-25 14:20:51.221390451 +0200 4 | +++ linux-3.4/fs/jbd2/checkpoint.c 2016-04-25 14:20:51.218057118 +0200 5 | @@ -314,6 +314,7 @@ 6 | (*batch_count)++; 7 | if (*batch_count == JBD2_NR_BATCH) { 8 | spin_unlock(&journal->j_list_lock); 9 | + printk("yangsuli: journal checkpoint process submit %d blocks\n", *batch_count); 10 | __flush_batch(journal, batch_count); 11 | ret = 1; 12 | } 13 | -------------------------------------------------------------------------------- /patches/3.11/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.10.orig/include/linux/buffer_head.h 2016-04-26 05:52:39.470803919 +0200 4 | +++ linux-3.10/include/linux/buffer_head.h 2016-04-26 05:52:39.467470585 +0200 5 | @@ -74,6 +74,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/3.11/checkpoint.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.11/fs/jbd2/checkpoint.c 2 | =================================================================== 3 | --- linux-3.11.orig/fs/jbd2/checkpoint.c 2016-04-26 10:16:47.753706077 +0200 4 | +++ linux-3.11/fs/jbd2/checkpoint.c 2016-04-26 10:16:47.750372743 +0200 5 | @@ -322,6 +322,7 @@ 6 | (*batch_count)++; 7 | if (*batch_count == JBD2_NR_BATCH) { 8 | spin_unlock(&journal->j_list_lock); 9 | + printk("yangsuli: journal checkpoint process submit %d blocks\n", *batch_count); 10 | __flush_batch(journal, batch_count); 11 | ret = 1; 12 | } 13 | -------------------------------------------------------------------------------- /patches/3.12/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/buffer_head.h 2016-04-26 10:55:14.216980260 +0200 4 | +++ linux-3.12/include/linux/buffer_head.h 2016-04-26 10:55:14.210313593 +0200 5 | @@ -75,6 +75,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/3.12/checkpoint.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.11/fs/jbd2/checkpoint.c 2 | =================================================================== 3 | --- linux-3.11.orig/fs/jbd2/checkpoint.c 2016-04-26 10:16:47.753706077 +0200 4 | +++ linux-3.11/fs/jbd2/checkpoint.c 2016-04-26 10:16:47.750372743 +0200 5 | @@ -322,6 +322,7 @@ 6 | (*batch_count)++; 7 | if (*batch_count == JBD2_NR_BATCH) { 8 | spin_unlock(&journal->j_list_lock); 9 | + printk("yangsuli: journal checkpoint process submit %d blocks\n", *batch_count); 10 | __flush_batch(journal, batch_count); 11 | ret = 1; 12 | } 13 | -------------------------------------------------------------------------------- /patches/3.13/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/buffer_head.h 2016-04-26 10:55:14.216980260 +0200 4 | +++ linux-3.12/include/linux/buffer_head.h 2016-04-26 10:55:14.210313593 +0200 5 | @@ -75,6 +75,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/3.13/checkpoint.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.11/fs/jbd2/checkpoint.c 2 | =================================================================== 3 | --- linux-3.11.orig/fs/jbd2/checkpoint.c 2016-04-26 10:16:47.753706077 +0200 4 | +++ linux-3.11/fs/jbd2/checkpoint.c 2016-04-26 10:16:47.750372743 +0200 5 | @@ -322,6 +322,7 @@ 6 | (*batch_count)++; 7 | if (*batch_count == JBD2_NR_BATCH) { 8 | spin_unlock(&journal->j_list_lock); 9 | + printk("yangsuli: journal checkpoint process submit %d blocks\n", *batch_count); 10 | __flush_batch(journal, batch_count); 11 | ret = 1; 12 | } 13 | -------------------------------------------------------------------------------- /patches/3.14/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/buffer_head.h 2016-04-26 10:55:14.216980260 +0200 4 | +++ linux-3.12/include/linux/buffer_head.h 2016-04-26 10:55:14.210313593 +0200 5 | @@ -75,6 +75,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/3.14/checkpoint.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.11/fs/jbd2/checkpoint.c 2 | =================================================================== 3 | --- linux-3.11.orig/fs/jbd2/checkpoint.c 2016-04-26 10:16:47.753706077 +0200 4 | +++ linux-3.11/fs/jbd2/checkpoint.c 2016-04-26 10:16:47.750372743 +0200 5 | @@ -322,6 +322,7 @@ 6 | (*batch_count)++; 7 | if (*batch_count == JBD2_NR_BATCH) { 8 | spin_unlock(&journal->j_list_lock); 9 | + printk("yangsuli: journal checkpoint process submit %d blocks\n", *batch_count); 10 | __flush_batch(journal, batch_count); 11 | ret = 1; 12 | } 13 | -------------------------------------------------------------------------------- /patches/3.15/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/buffer_head.h 2016-04-26 10:55:14.216980260 +0200 4 | +++ linux-3.12/include/linux/buffer_head.h 2016-04-26 10:55:14.210313593 +0200 5 | @@ -75,6 +75,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/3.15/checkpoint.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.11/fs/jbd2/checkpoint.c 2 | =================================================================== 3 | --- linux-3.11.orig/fs/jbd2/checkpoint.c 2016-04-26 10:16:47.753706077 +0200 4 | +++ linux-3.11/fs/jbd2/checkpoint.c 2016-04-26 10:16:47.750372743 +0200 5 | @@ -322,6 +322,7 @@ 6 | (*batch_count)++; 7 | if (*batch_count == JBD2_NR_BATCH) { 8 | spin_unlock(&journal->j_list_lock); 9 | + printk("yangsuli: journal checkpoint process submit %d blocks\n", *batch_count); 10 | __flush_batch(journal, batch_count); 11 | ret = 1; 12 | } 13 | -------------------------------------------------------------------------------- /patches/3.16/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/buffer_head.h 2016-04-26 10:55:14.216980260 +0200 4 | +++ linux-3.12/include/linux/buffer_head.h 2016-04-26 10:55:14.210313593 +0200 5 | @@ -75,6 +75,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/3.16/checkpoint.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.11/fs/jbd2/checkpoint.c 2 | =================================================================== 3 | --- linux-3.11.orig/fs/jbd2/checkpoint.c 2016-04-26 10:16:47.753706077 +0200 4 | +++ linux-3.11/fs/jbd2/checkpoint.c 2016-04-26 10:16:47.750372743 +0200 5 | @@ -322,6 +322,7 @@ 6 | (*batch_count)++; 7 | if (*batch_count == JBD2_NR_BATCH) { 8 | spin_unlock(&journal->j_list_lock); 9 | + printk("yangsuli: journal checkpoint process submit %d blocks\n", *batch_count); 10 | __flush_batch(journal, batch_count); 11 | ret = 1; 12 | } 13 | -------------------------------------------------------------------------------- /patches/3.17/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/buffer_head.h 2016-04-26 10:55:14.216980260 +0200 4 | +++ linux-3.12/include/linux/buffer_head.h 2016-04-26 10:55:14.210313593 +0200 5 | @@ -75,6 +75,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/3.17/checkpoint.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.11/fs/jbd2/checkpoint.c 2 | =================================================================== 3 | --- linux-3.11.orig/fs/jbd2/checkpoint.c 2016-04-26 10:16:47.753706077 +0200 4 | +++ linux-3.11/fs/jbd2/checkpoint.c 2016-04-26 10:16:47.750372743 +0200 5 | @@ -322,6 +322,7 @@ 6 | (*batch_count)++; 7 | if (*batch_count == JBD2_NR_BATCH) { 8 | spin_unlock(&journal->j_list_lock); 9 | + printk("yangsuli: journal checkpoint process submit %d blocks\n", *batch_count); 10 | __flush_batch(journal, batch_count); 11 | ret = 1; 12 | } 13 | -------------------------------------------------------------------------------- /patches/3.18/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/buffer_head.h 2016-04-26 10:55:14.216980260 +0200 4 | +++ linux-3.12/include/linux/buffer_head.h 2016-04-26 10:55:14.210313593 +0200 5 | @@ -75,6 +75,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/3.19/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/buffer_head.h 2016-04-26 10:55:14.216980260 +0200 4 | +++ linux-3.12/include/linux/buffer_head.h 2016-04-26 10:55:14.210313593 +0200 5 | @@ -75,6 +75,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/3.2/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/journal-head.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/journal-head.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -102,6 +102,8 @@ 4 | 5 | /* Trigger type for the committing transaction's frozen data */ 6 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 7 | + 8 | + struct cause_list* causes; 9 | }; 10 | 11 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 12 | diff -rubBN linux-3.2.51/include/linux/mm_types.h ../split-release/release/linux-3.2.51/include/linux/mm_types.h 13 | -------------------------------------------------------------------------------- /patches/3.2/xfs_vnodeops.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.2/fs/xfs/xfs_vnodeops.c 2 | =================================================================== 3 | --- linux-3.2.orig/fs/xfs/xfs_vnodeops.c 2016-04-25 11:05:16.933218644 +0200 4 | +++ linux-3.2/fs/xfs/xfs_vnodeops.c 2016-04-25 11:05:16.926551977 +0200 5 | @@ -945,6 +945,8 @@ 6 | * the transaction cancel unlocking dp so don't do it explicitly in the 7 | * error path. 8 | */ 9 | + //yangsuli 10 | + //here is where metadata actually got dirtied.... 11 | xfs_trans_ijoin(tp, dp, XFS_ILOCK_EXCL); 12 | unlock_dp_on_error = B_FALSE; 13 | 14 | -------------------------------------------------------------------------------- /patches/3.3/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/journal-head.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/journal-head.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -102,6 +102,8 @@ 4 | 5 | /* Trigger type for the committing transaction's frozen data */ 6 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 7 | + 8 | + struct cause_list* causes; 9 | }; 10 | 11 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 12 | diff -rubBN linux-3.2.51/include/linux/mm_types.h ../split-release/release/linux-3.2.51/include/linux/mm_types.h 13 | -------------------------------------------------------------------------------- /patches/3.3/xfs_vnodeops.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/fs/xfs/xfs_vnodeops.c 2 | =================================================================== 3 | --- linux-3.3.orig/fs/xfs/xfs_vnodeops.c 2016-04-25 11:49:30.573136703 +0200 4 | +++ linux-3.3/fs/xfs/xfs_vnodeops.c 2016-04-25 11:49:30.566470037 +0200 5 | @@ -958,6 +958,8 @@ 6 | * the transaction cancel unlocking dp so don't do it explicitly in the 7 | * error path. 8 | */ 9 | + //yangsuli 10 | + //here is where metadata actually got dirtied.... 11 | xfs_trans_ijoin(tp, dp, XFS_ILOCK_EXCL); 12 | unlock_dp_on_error = B_FALSE; 13 | 14 | -------------------------------------------------------------------------------- /patches/3.4/checkpoint.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/fs/jbd2/checkpoint.c 2 | =================================================================== 3 | --- linux-3.4.orig/fs/jbd2/checkpoint.c 2016-04-25 14:20:51.221390451 +0200 4 | +++ linux-3.4/fs/jbd2/checkpoint.c 2016-04-25 14:20:51.218057118 +0200 5 | @@ -314,6 +314,7 @@ 6 | (*batch_count)++; 7 | if (*batch_count == JBD2_NR_BATCH) { 8 | spin_unlock(&journal->j_list_lock); 9 | + printk("yangsuli: journal checkpoint process submit %d blocks\n", *batch_count); 10 | __flush_batch(journal, batch_count); 11 | ret = 1; 12 | } 13 | -------------------------------------------------------------------------------- /patches/3.4/xfs_vnodeops.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/fs/xfs/xfs_vnodeops.c 2 | =================================================================== 3 | --- linux-3.4.orig/fs/xfs/xfs_vnodeops.c 2016-04-25 14:48:04.671340012 +0200 4 | +++ linux-3.4/fs/xfs/xfs_vnodeops.c 2016-04-25 14:48:04.668006679 +0200 5 | @@ -950,6 +950,8 @@ 6 | * the transaction cancel unlocking dp so don't do it explicitly in the 7 | * error path. 8 | */ 9 | + //yangsuli 10 | + //here is where metadata actually got dirtied.... 11 | xfs_trans_ijoin(tp, dp, XFS_ILOCK_EXCL); 12 | unlock_dp_on_error = B_FALSE; 13 | 14 | -------------------------------------------------------------------------------- /patches/3.5/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.5.orig/include/linux/blk_types.h 2016-04-25 17:36:50.524476698 +0200 4 | +++ linux-3.5/include/linux/blk_types.h 2016-04-25 17:36:50.521143365 +0200 5 | @@ -82,6 +82,8 @@ 6 | 7 | bio_destructor_t *bi_destructor; /* destructor */ 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.5/checkpoint.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/fs/jbd2/checkpoint.c 2 | =================================================================== 3 | --- linux-3.4.orig/fs/jbd2/checkpoint.c 2016-04-25 14:20:51.221390451 +0200 4 | +++ linux-3.4/fs/jbd2/checkpoint.c 2016-04-25 14:20:51.218057118 +0200 5 | @@ -314,6 +314,7 @@ 6 | (*batch_count)++; 7 | if (*batch_count == JBD2_NR_BATCH) { 8 | spin_unlock(&journal->j_list_lock); 9 | + printk("yangsuli: journal checkpoint process submit %d blocks\n", *batch_count); 10 | __flush_batch(journal, batch_count); 11 | ret = 1; 12 | } 13 | -------------------------------------------------------------------------------- /patches/3.5/xfs_vnodeops.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/fs/xfs/xfs_vnodeops.c 2 | =================================================================== 3 | --- linux-3.5.orig/fs/xfs/xfs_vnodeops.c 2016-04-25 17:38:12.691140827 +0200 4 | +++ linux-3.5/fs/xfs/xfs_vnodeops.c 2016-04-25 17:38:12.684474161 +0200 5 | @@ -947,6 +947,8 @@ 6 | * the transaction cancel unlocking dp so don't do it explicitly in the 7 | * error path. 8 | */ 9 | + //yangsuli 10 | + //here is where metadata actually got dirtied.... 11 | xfs_trans_ijoin(tp, dp, XFS_ILOCK_EXCL); 12 | unlock_dp_on_error = B_FALSE; 13 | 14 | -------------------------------------------------------------------------------- /patches/3.6/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/include/linux/blk_types.h 2 | =================================================================== 3 | --- linux-3.5.orig/include/linux/blk_types.h 2016-04-25 17:36:50.524476698 +0200 4 | +++ linux-3.5/include/linux/blk_types.h 2016-04-25 17:36:50.521143365 +0200 5 | @@ -82,6 +82,8 @@ 6 | 7 | bio_destructor_t *bi_destructor; /* destructor */ 8 | 9 | + struct cause_list_list *cll; 10 | + 11 | /* 12 | * We can inline a number of vecs at the end of the bio, to avoid 13 | * double allocations for a small number of bio_vecs. This member 14 | -------------------------------------------------------------------------------- /patches/3.6/checkpoint.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/fs/jbd2/checkpoint.c 2 | =================================================================== 3 | --- linux-3.4.orig/fs/jbd2/checkpoint.c 2016-04-25 14:20:51.221390451 +0200 4 | +++ linux-3.4/fs/jbd2/checkpoint.c 2016-04-25 14:20:51.218057118 +0200 5 | @@ -314,6 +314,7 @@ 6 | (*batch_count)++; 7 | if (*batch_count == JBD2_NR_BATCH) { 8 | spin_unlock(&journal->j_list_lock); 9 | + printk("yangsuli: journal checkpoint process submit %d blocks\n", *batch_count); 10 | __flush_batch(journal, batch_count); 11 | ret = 1; 12 | } 13 | -------------------------------------------------------------------------------- /patches/3.6/xfs_vnodeops.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.6/fs/xfs/xfs_vnodeops.c 2 | =================================================================== 3 | --- linux-3.6.orig/fs/xfs/xfs_vnodeops.c 2016-04-25 17:53:23.561112701 +0200 4 | +++ linux-3.6/fs/xfs/xfs_vnodeops.c 2016-04-25 17:53:23.534446036 +0200 5 | @@ -828,6 +828,8 @@ 6 | * the transaction cancel unlocking dp so don't do it explicitly in the 7 | * error path. 8 | */ 9 | + //yangsuli 10 | + //here is where metadata actually got dirtied.... 11 | xfs_trans_ijoin(tp, dp, XFS_ILOCK_EXCL); 12 | unlock_dp_on_error = B_FALSE; 13 | 14 | -------------------------------------------------------------------------------- /patches/3.7/checkpoint.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/fs/jbd2/checkpoint.c 2 | =================================================================== 3 | --- linux-3.4.orig/fs/jbd2/checkpoint.c 2016-04-25 14:20:51.221390451 +0200 4 | +++ linux-3.4/fs/jbd2/checkpoint.c 2016-04-25 14:20:51.218057118 +0200 5 | @@ -314,6 +314,7 @@ 6 | (*batch_count)++; 7 | if (*batch_count == JBD2_NR_BATCH) { 8 | spin_unlock(&journal->j_list_lock); 9 | + printk("yangsuli: journal checkpoint process submit %d blocks\n", *batch_count); 10 | __flush_batch(journal, batch_count); 11 | ret = 1; 12 | } 13 | -------------------------------------------------------------------------------- /patches/3.7/xfs_vnodeops.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.6/fs/xfs/xfs_vnodeops.c 2 | =================================================================== 3 | --- linux-3.6.orig/fs/xfs/xfs_vnodeops.c 2016-04-25 17:53:23.561112701 +0200 4 | +++ linux-3.6/fs/xfs/xfs_vnodeops.c 2016-04-25 17:53:23.534446036 +0200 5 | @@ -828,6 +828,8 @@ 6 | * the transaction cancel unlocking dp so don't do it explicitly in the 7 | * error path. 8 | */ 9 | + //yangsuli 10 | + //here is where metadata actually got dirtied.... 11 | xfs_trans_ijoin(tp, dp, XFS_ILOCK_EXCL); 12 | unlock_dp_on_error = B_FALSE; 13 | 14 | -------------------------------------------------------------------------------- /patches/3.8/checkpoint.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/fs/jbd2/checkpoint.c 2 | =================================================================== 3 | --- linux-3.4.orig/fs/jbd2/checkpoint.c 2016-04-25 14:20:51.221390451 +0200 4 | +++ linux-3.4/fs/jbd2/checkpoint.c 2016-04-25 14:20:51.218057118 +0200 5 | @@ -314,6 +314,7 @@ 6 | (*batch_count)++; 7 | if (*batch_count == JBD2_NR_BATCH) { 8 | spin_unlock(&journal->j_list_lock); 9 | + printk("yangsuli: journal checkpoint process submit %d blocks\n", *batch_count); 10 | __flush_batch(journal, batch_count); 11 | ret = 1; 12 | } 13 | -------------------------------------------------------------------------------- /patches/3.8/xfs_vnodeops.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.8/fs/xfs/xfs_vnodeops.c 2 | =================================================================== 3 | --- linux-3.8.orig/fs/xfs/xfs_vnodeops.c 2016-04-25 19:37:17.895438587 +0200 4 | +++ linux-3.8/fs/xfs/xfs_vnodeops.c 2016-04-25 19:37:17.888771921 +0200 5 | @@ -829,6 +829,8 @@ 6 | * the transaction cancel unlocking dp so don't do it explicitly in the 7 | * error path. 8 | */ 9 | + //yangsuli 10 | + //here is where metadata actually got dirtied.... 11 | xfs_trans_ijoin(tp, dp, XFS_ILOCK_EXCL); 12 | unlock_dp_on_error = B_FALSE; 13 | 14 | -------------------------------------------------------------------------------- /patches/3.9/checkpoint.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/fs/jbd2/checkpoint.c 2 | =================================================================== 3 | --- linux-3.4.orig/fs/jbd2/checkpoint.c 2016-04-25 14:20:51.221390451 +0200 4 | +++ linux-3.4/fs/jbd2/checkpoint.c 2016-04-25 14:20:51.218057118 +0200 5 | @@ -314,6 +314,7 @@ 6 | (*batch_count)++; 7 | if (*batch_count == JBD2_NR_BATCH) { 8 | spin_unlock(&journal->j_list_lock); 9 | + printk("yangsuli: journal checkpoint process submit %d blocks\n", *batch_count); 10 | __flush_batch(journal, batch_count); 11 | ret = 1; 12 | } 13 | -------------------------------------------------------------------------------- /patches/3.9/xfs_vnodeops.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.9/fs/xfs/xfs_vnodeops.c 2 | =================================================================== 3 | --- linux-3.9.orig/fs/xfs/xfs_vnodeops.c 2016-04-25 19:57:28.702067866 +0200 4 | +++ linux-3.9/fs/xfs/xfs_vnodeops.c 2016-04-25 19:57:28.695401200 +0200 5 | @@ -829,6 +829,8 @@ 6 | * the transaction cancel unlocking dp so don't do it explicitly in the 7 | * error path. 8 | */ 9 | + //yangsuli 10 | + //here is where metadata actually got dirtied.... 11 | xfs_trans_ijoin(tp, dp, XFS_ILOCK_EXCL); 12 | unlock_dp_on_error = false; 13 | 14 | -------------------------------------------------------------------------------- /patches/4.0/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/buffer_head.h 2016-04-26 10:55:14.216980260 +0200 4 | +++ linux-3.12/include/linux/buffer_head.h 2016-04-26 10:55:14.210313593 +0200 5 | @@ -75,6 +75,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/4.1/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/buffer_head.h 2016-04-26 10:55:14.216980260 +0200 4 | +++ linux-3.12/include/linux/buffer_head.h 2016-04-26 10:55:14.210313593 +0200 5 | @@ -75,6 +75,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/4.2/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/buffer_head.h 2016-04-26 10:55:14.216980260 +0200 4 | +++ linux-3.12/include/linux/buffer_head.h 2016-04-26 10:55:14.210313593 +0200 5 | @@ -75,6 +75,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/4.3/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/buffer_head.h 2016-04-26 10:55:14.216980260 +0200 4 | +++ linux-3.12/include/linux/buffer_head.h 2016-04-26 10:55:14.210313593 +0200 5 | @@ -75,6 +75,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/4.4/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/buffer_head.h 2016-04-26 10:55:14.216980260 +0200 4 | +++ linux-3.12/include/linux/buffer_head.h 2016-04-26 10:55:14.210313593 +0200 5 | @@ -75,6 +75,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list* causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/4.5/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.5/include/linux/buffer_head.h 2 | =================================================================== 3 | --- linux-4.5.orig/include/linux/buffer_head.h 2016-04-27 15:37:09.095771801 +0200 4 | +++ linux-4.5/include/linux/buffer_head.h 2016-04-27 19:17:54.231820513 +0200 5 | @@ -75,6 +75,9 @@ 6 | struct address_space *b_assoc_map; /* mapping this buffer is 7 | associated with */ 8 | atomic_t b_count; /* users using this buffer_head */ 9 | + 10 | + spinlock_t causes_lock; 11 | + struct cause_list *causes; 12 | }; 13 | 14 | /* 15 | -------------------------------------------------------------------------------- /patches/3.10/xfs_vnodeops.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/fs/xfs/xfs_vnodeops.c 2 | =================================================================== 3 | --- linux-3.10.orig/fs/xfs/xfs_vnodeops.c 2016-04-26 05:54:16.357467594 +0200 4 | +++ linux-3.10/fs/xfs/xfs_vnodeops.c 2016-04-26 05:54:16.350800927 +0200 5 | @@ -596,6 +596,8 @@ 6 | * the transaction cancel unlocking dp so don't do it explicitly in the 7 | * error path. 8 | */ 9 | + //yangsuli 10 | + //here is where metadata actually got dirtied.... 11 | xfs_trans_ijoin(tp, dp, XFS_ILOCK_EXCL); 12 | unlock_dp_on_error = false; 13 | 14 | -------------------------------------------------------------------------------- /patches/3.11/xfs_vnodeops.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.11/fs/xfs/xfs_vnodeops.c 2 | =================================================================== 3 | --- linux-3.11.orig/fs/xfs/xfs_vnodeops.c 2016-04-26 10:17:52.413704419 +0200 4 | +++ linux-3.11/fs/xfs/xfs_vnodeops.c 2016-04-26 10:17:52.407037752 +0200 5 | @@ -590,6 +590,8 @@ 6 | * the transaction cancel unlocking dp so don't do it explicitly in the 7 | * error path. 8 | */ 9 | + //yangsuli 10 | + //here is where metadata actually got dirtied.... 11 | xfs_trans_ijoin(tp, dp, XFS_ILOCK_EXCL); 12 | unlock_dp_on_error = false; 13 | 14 | -------------------------------------------------------------------------------- /patches/3.2.51/init_task.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/init_task.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/init_task.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -150,6 +150,8 @@ 4 | */ 5 | #define INIT_TASK(tsk) \ 6 | { \ 7 | + .causes = NULL, \ 8 | + .account_id = ATOMIC_INIT(0), \ 9 | .state = 0, \ 10 | .stack = &init_thread_info, \ 11 | .usage = ATOMIC_INIT(2), \ 12 | diff -rubBN linux-3.2.51/include/linux/jbd2.h ../split-release/release/linux-3.2.51/include/linux/jbd2.h 13 | -------------------------------------------------------------------------------- /patches/3.2.51/journal-head.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/journal-head.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/journal-head.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -102,6 +102,8 @@ 4 | 5 | /* Trigger type for the committing transaction's frozen data */ 6 | struct jbd2_buffer_trigger_type *b_frozen_triggers; 7 | + 8 | + struct cause_list* causes; 9 | }; 10 | 11 | #endif /* JOURNAL_HEAD_H_INCLUDED */ 12 | diff -rubBN linux-3.2.51/include/linux/mm_types.h ../split-release/release/linux-3.2.51/include/linux/mm_types.h 13 | -------------------------------------------------------------------------------- /patches/3.2.51/xfs_vnodeops.c.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/fs/xfs/xfs_vnodeops.c 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/fs/xfs/xfs_vnodeops.c 2015-09-01 05:42:49.000000000 +0200 3 | @@ -946,6 +946,8 @@ 4 | * the transaction cancel unlocking dp so don't do it explicitly in the 5 | * error path. 6 | */ 7 | + //yangsuli 8 | + //here is where metadata actually got dirtied.... 9 | xfs_trans_ijoin(tp, dp, XFS_ILOCK_EXCL); 10 | unlock_dp_on_error = B_FALSE; 11 | 12 | diff -rubBN linux-3.2.51/.gitignore ../split-release/release/linux-3.2.51/.gitignore 13 | -------------------------------------------------------------------------------- /patches/3.2/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.2/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.2.orig/mm/filemap.c 2016-04-25 11:03:59.463221036 +0200 4 | +++ linux-3.2/mm/filemap.c 2016-04-25 11:03:59.456554370 +0200 5 | @@ -787,6 +787,10 @@ 6 | page = __page_cache_alloc(gfp_mask); 7 | if (!page) 8 | return NULL; 9 | + 10 | +#ifndef DISABLE_CAUSES 11 | + page->locked_causes = NULL; 12 | +#endif 13 | /* 14 | * We want a regular kernel memory (not highmem or DMA etc) 15 | * allocation for the radix tree nodes, but we need to honour 16 | -------------------------------------------------------------------------------- /patches/3.3/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.3.orig/mm/filemap.c 2016-04-25 11:47:51.873139751 +0200 4 | +++ linux-3.3/mm/filemap.c 2016-04-25 11:47:51.866473084 +0200 5 | @@ -773,6 +773,10 @@ 6 | page = __page_cache_alloc(gfp_mask); 7 | if (!page) 8 | return NULL; 9 | + 10 | +#ifndef DISABLE_CAUSES 11 | + page->locked_causes = NULL; 12 | +#endif 13 | /* 14 | * We want a regular kernel memory (not highmem or DMA etc) 15 | * allocation for the radix tree nodes, but we need to honour 16 | -------------------------------------------------------------------------------- /patches/3.4/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.4.orig/mm/filemap.c 2016-04-25 14:46:42.168009226 +0200 4 | +++ linux-3.4/mm/filemap.c 2016-04-25 14:46:42.161342560 +0200 5 | @@ -775,6 +775,10 @@ 6 | page = __page_cache_alloc(gfp_mask); 7 | if (!page) 8 | return NULL; 9 | + 10 | +#ifndef DISABLE_CAUSES 11 | + page->locked_causes = NULL; 12 | +#endif 13 | /* 14 | * We want a regular kernel memory (not highmem or DMA etc) 15 | * allocation for the radix tree nodes, but we need to honour 16 | -------------------------------------------------------------------------------- /patches/3.5/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.5.orig/mm/filemap.c 2016-04-25 17:37:19.604475801 +0200 4 | +++ linux-3.5/mm/filemap.c 2016-04-25 17:37:19.601142467 +0200 5 | @@ -774,6 +774,10 @@ 6 | page = __page_cache_alloc(gfp_mask); 7 | if (!page) 8 | return NULL; 9 | + 10 | +#ifndef DISABLE_CAUSES 11 | + page->locked_causes = NULL; 12 | +#endif 13 | /* 14 | * We want a regular kernel memory (not highmem or DMA etc) 15 | * allocation for the radix tree nodes, but we need to honour 16 | -------------------------------------------------------------------------------- /patches/3.6/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.5.orig/mm/filemap.c 2016-04-25 17:37:19.604475801 +0200 4 | +++ linux-3.5/mm/filemap.c 2016-04-25 17:37:19.601142467 +0200 5 | @@ -774,6 +774,10 @@ 6 | page = __page_cache_alloc(gfp_mask); 7 | if (!page) 8 | return NULL; 9 | + 10 | +#ifndef DISABLE_CAUSES 11 | + page->locked_causes = NULL; 12 | +#endif 13 | /* 14 | * We want a regular kernel memory (not highmem or DMA etc) 15 | * allocation for the radix tree nodes, but we need to honour 16 | -------------------------------------------------------------------------------- /patches/3.7/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.5.orig/mm/filemap.c 2016-04-25 17:37:19.604475801 +0200 4 | +++ linux-3.5/mm/filemap.c 2016-04-25 17:37:19.601142467 +0200 5 | @@ -774,6 +774,10 @@ 6 | page = __page_cache_alloc(gfp_mask); 7 | if (!page) 8 | return NULL; 9 | + 10 | +#ifndef DISABLE_CAUSES 11 | + page->locked_causes = NULL; 12 | +#endif 13 | /* 14 | * We want a regular kernel memory (not highmem or DMA etc) 15 | * allocation for the radix tree nodes, but we need to honour 16 | -------------------------------------------------------------------------------- /patches/3.8/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.5.orig/mm/filemap.c 2016-04-25 17:37:19.604475801 +0200 4 | +++ linux-3.5/mm/filemap.c 2016-04-25 17:37:19.601142467 +0200 5 | @@ -774,6 +774,10 @@ 6 | page = __page_cache_alloc(gfp_mask); 7 | if (!page) 8 | return NULL; 9 | + 10 | +#ifndef DISABLE_CAUSES 11 | + page->locked_causes = NULL; 12 | +#endif 13 | /* 14 | * We want a regular kernel memory (not highmem or DMA etc) 15 | * allocation for the radix tree nodes, but we need to honour 16 | -------------------------------------------------------------------------------- /patches/3.9/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.5.orig/mm/filemap.c 2016-04-25 17:37:19.604475801 +0200 4 | +++ linux-3.5/mm/filemap.c 2016-04-25 17:37:19.601142467 +0200 5 | @@ -774,6 +774,10 @@ 6 | page = __page_cache_alloc(gfp_mask); 7 | if (!page) 8 | return NULL; 9 | + 10 | +#ifndef DISABLE_CAUSES 11 | + page->locked_causes = NULL; 12 | +#endif 13 | /* 14 | * We want a regular kernel memory (not highmem or DMA etc) 15 | * allocation for the radix tree nodes, but we need to honour 16 | -------------------------------------------------------------------------------- /patches/3.10/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.10.orig/mm/filemap.c 2016-04-26 05:53:27.347469106 +0200 4 | +++ linux-3.10/mm/filemap.c 2016-04-26 05:53:27.340802440 +0200 5 | @@ -792,6 +792,10 @@ 6 | page = __page_cache_alloc(gfp_mask); 7 | if (!page) 8 | return NULL; 9 | + 10 | +#ifndef DISABLE_CAUSES 11 | + page->locked_causes = NULL; 12 | +#endif 13 | /* 14 | * We want a regular kernel memory (not highmem or DMA etc) 15 | * allocation for the radix tree nodes, but we need to honour 16 | -------------------------------------------------------------------------------- /patches/3.11/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.10/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.10.orig/mm/filemap.c 2016-04-26 05:53:27.347469106 +0200 4 | +++ linux-3.10/mm/filemap.c 2016-04-26 05:53:27.340802440 +0200 5 | @@ -792,6 +792,10 @@ 6 | page = __page_cache_alloc(gfp_mask); 7 | if (!page) 8 | return NULL; 9 | + 10 | +#ifndef DISABLE_CAUSES 11 | + page->locked_causes = NULL; 12 | +#endif 13 | /* 14 | * We want a regular kernel memory (not highmem or DMA etc) 15 | * allocation for the radix tree nodes, but we need to honour 16 | -------------------------------------------------------------------------------- /patches/3.12/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.12.orig/mm/filemap.c 2016-04-26 10:55:38.100312980 +0200 4 | +++ linux-3.12/mm/filemap.c 2016-04-26 10:55:38.093646313 +0200 5 | @@ -794,6 +794,10 @@ 6 | page = __page_cache_alloc(gfp_mask); 7 | if (!page) 8 | return NULL; 9 | + 10 | +#ifndef DISABLE_CAUSES 11 | + page->locked_causes = NULL; 12 | +#endif 13 | /* 14 | * We want a regular kernel memory (not highmem or DMA etc) 15 | * allocation for the radix tree nodes, but we need to honour 16 | -------------------------------------------------------------------------------- /patches/3.13/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.12.orig/mm/filemap.c 2016-04-26 10:55:38.100312980 +0200 4 | +++ linux-3.12/mm/filemap.c 2016-04-26 10:55:38.093646313 +0200 5 | @@ -794,6 +794,10 @@ 6 | page = __page_cache_alloc(gfp_mask); 7 | if (!page) 8 | return NULL; 9 | + 10 | +#ifndef DISABLE_CAUSES 11 | + page->locked_causes = NULL; 12 | +#endif 13 | /* 14 | * We want a regular kernel memory (not highmem or DMA etc) 15 | * allocation for the radix tree nodes, but we need to honour 16 | -------------------------------------------------------------------------------- /patches/3.14/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.12.orig/mm/filemap.c 2016-04-26 10:55:38.100312980 +0200 4 | +++ linux-3.12/mm/filemap.c 2016-04-26 10:55:38.093646313 +0200 5 | @@ -794,6 +794,10 @@ 6 | page = __page_cache_alloc(gfp_mask); 7 | if (!page) 8 | return NULL; 9 | + 10 | +#ifndef DISABLE_CAUSES 11 | + page->locked_causes = NULL; 12 | +#endif 13 | /* 14 | * We want a regular kernel memory (not highmem or DMA etc) 15 | * allocation for the radix tree nodes, but we need to honour 16 | -------------------------------------------------------------------------------- /patches/4.2/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/block/Makefile 2 | =================================================================== 3 | --- linux-4.2.orig/block/Makefile 2016-04-26 17:01:31.889930282 +0200 4 | +++ linux-4.2/block/Makefile 2016-04-26 18:03:35.293168125 +0200 5 | @@ -8,7 +8,7 @@ 6 | blk-iopoll.o blk-lib.o blk-mq.o blk-mq-tag.o \ 7 | blk-mq-sysfs.o blk-mq-cpu.o blk-mq-cpumap.o ioctl.o \ 8 | genhd.o scsi_ioctl.o partition-generic.o ioprio.o \ 9 | - partitions/ 10 | + cause_tags.o partitions/ 11 | 12 | obj-$(CONFIG_BOUNCE) += bounce.o 13 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 14 | -------------------------------------------------------------------------------- /patches/4.3/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/block/Makefile 2 | =================================================================== 3 | --- linux-4.2.orig/block/Makefile 2016-04-26 17:01:31.889930282 +0200 4 | +++ linux-4.2/block/Makefile 2016-04-26 18:03:35.293168125 +0200 5 | @@ -8,7 +8,7 @@ 6 | blk-iopoll.o blk-lib.o blk-mq.o blk-mq-tag.o \ 7 | blk-mq-sysfs.o blk-mq-cpu.o blk-mq-cpumap.o ioctl.o \ 8 | genhd.o scsi_ioctl.o partition-generic.o ioprio.o \ 9 | - partitions/ 10 | + cause_tags.o partitions/ 11 | 12 | obj-$(CONFIG_BOUNCE) += bounce.o 13 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 14 | -------------------------------------------------------------------------------- /patches/4.4/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.2/block/Makefile 2 | =================================================================== 3 | --- linux-4.2.orig/block/Makefile 2016-04-26 17:01:31.889930282 +0200 4 | +++ linux-4.2/block/Makefile 2016-04-26 18:03:35.293168125 +0200 5 | @@ -8,7 +8,7 @@ 6 | blk-iopoll.o blk-lib.o blk-mq.o blk-mq-tag.o \ 7 | blk-mq-sysfs.o blk-mq-cpu.o blk-mq-cpumap.o ioctl.o \ 8 | genhd.o scsi_ioctl.o partition-generic.o ioprio.o \ 9 | - partitions/ 10 | + cause_tags.o partitions/ 11 | 12 | obj-$(CONFIG_BOUNCE) += bounce.o 13 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 14 | -------------------------------------------------------------------------------- /patches/3.15/filemap.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.15/mm/filemap.c 2 | =================================================================== 3 | --- linux-3.15.orig/mm/filemap.c 2016-04-26 13:24:05.180026096 +0200 4 | +++ linux-3.15/mm/filemap.c 2016-04-26 13:24:05.173359430 +0200 5 | @@ -1065,6 +1065,10 @@ 6 | page = __page_cache_alloc(gfp_mask); 7 | if (!page) 8 | return NULL; 9 | + 10 | +#ifndef DISABLE_CAUSES 11 | + page->locked_causes = NULL; 12 | +#endif 13 | /* 14 | * We want a regular kernel memory (not highmem or DMA etc) 15 | * allocation for the radix tree nodes, but we need to honour 16 | -------------------------------------------------------------------------------- /patches/3.2.51/cruft/vmlinux.scr.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/arch/sh/boot/compressed/vmlinux.scr 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/arch/sh/boot/compressed/vmlinux.scr 1970-01-01 01:00:00.000000000 +0100 3 | @@ -1,10 +0,0 @@ 4 | -SECTIONS 5 | -{ 6 | - .rodata..compressed : { 7 | - input_len = .; 8 | - LONG(input_data_end - input_data) input_data = .; 9 | - *(.data) 10 | - output_len = . - 4; 11 | - input_data_end = .; 12 | - } 13 | -} 14 | diff -rubBN linux-3.2.51/arch/sh/boot/romimage/vmlinux.scr ../split-release/release/linux-3.2.51/arch/sh/boot/romimage/vmlinux.scr 15 | -------------------------------------------------------------------------------- /patches/3.10/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.9/fs/inode.c 2 | =================================================================== 3 | --- linux-3.9.orig/fs/inode.c 2016-04-25 19:56:47.005402487 +0200 4 | +++ linux-3.9/fs/inode.c 2016-04-25 19:56:47.002069155 +0200 5 | @@ -219,6 +219,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1511,7 +1513,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.10/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.8/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.8.orig/include/linux/fs.h 2016-04-25 19:35:57.642107732 +0200 4 | +++ linux-3.8/include/linux/fs.h 2016-04-25 19:35:57.635441066 +0200 5 | @@ -607,6 +607,9 @@ 6 | atomic_t i_readcount; /* struct files open RO */ 7 | #endif 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.11/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.11/fs/inode.c 2 | =================================================================== 3 | --- linux-3.11.orig/fs/inode.c 2016-04-26 10:17:12.113705452 +0200 4 | +++ linux-3.11/fs/inode.c 2016-04-26 10:17:12.107038786 +0200 5 | @@ -219,6 +219,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1513,7 +1515,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.11/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.11/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.11.orig/include/linux/fs.h 2016-04-26 10:17:09.883705509 +0200 4 | +++ linux-3.11/include/linux/fs.h 2016-04-26 10:17:09.877038843 +0200 5 | @@ -609,6 +609,9 @@ 6 | atomic_t i_readcount; /* struct files open RO */ 7 | #endif 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.12/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/fs/inode.c 2 | =================================================================== 3 | --- linux-3.12.orig/fs/inode.c 2016-04-26 10:55:41.783646219 +0200 4 | +++ linux-3.12/fs/inode.c 2016-04-26 10:55:41.776979553 +0200 5 | @@ -220,6 +220,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1482,7 +1484,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.12/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/fs.h 2016-04-26 10:55:39.960312933 +0200 4 | +++ linux-3.12/include/linux/fs.h 2016-04-26 10:55:39.956979599 +0200 5 | @@ -610,6 +610,9 @@ 6 | atomic_t i_readcount; /* struct files open RO */ 7 | #endif 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.13/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.13/fs/inode.c 2 | =================================================================== 3 | --- linux-3.13.orig/fs/inode.c 2016-04-26 11:05:21.246964692 +0200 4 | +++ linux-3.13/fs/inode.c 2016-04-26 11:05:21.240298025 +0200 5 | @@ -220,6 +220,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1510,7 +1512,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.13/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.12/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.12.orig/include/linux/fs.h 2016-04-26 10:55:39.960312933 +0200 4 | +++ linux-3.12/include/linux/fs.h 2016-04-26 10:55:39.956979599 +0200 5 | @@ -610,6 +610,9 @@ 6 | atomic_t i_readcount; /* struct files open RO */ 7 | #endif 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.14/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.13/fs/inode.c 2 | =================================================================== 3 | --- linux-3.13.orig/fs/inode.c 2016-04-26 11:05:21.246964692 +0200 4 | +++ linux-3.13/fs/inode.c 2016-04-26 11:05:21.240298025 +0200 5 | @@ -220,6 +220,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1510,7 +1512,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.14/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.14/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.14.orig/include/linux/fs.h 2016-04-26 12:13:05.803527120 +0200 4 | +++ linux-3.14/include/linux/fs.h 2016-04-26 12:13:05.796860453 +0200 5 | @@ -613,6 +613,9 @@ 6 | atomic_t i_readcount; /* struct files open RO */ 7 | #endif 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.15/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.15/fs/inode.c 2 | =================================================================== 3 | --- linux-3.15.orig/fs/inode.c 2016-04-26 13:24:09.860025976 +0200 4 | +++ linux-3.15/fs/inode.c 2016-04-26 13:24:09.853359309 +0200 5 | @@ -220,6 +220,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1509,7 +1511,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.16/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.15/fs/inode.c 2 | =================================================================== 3 | --- linux-3.15.orig/fs/inode.c 2016-04-26 13:24:09.860025976 +0200 4 | +++ linux-3.15/fs/inode.c 2016-04-26 13:24:09.853359309 +0200 5 | @@ -220,6 +220,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1509,7 +1511,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.17/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.17/fs/inode.c 2 | =================================================================== 3 | --- linux-3.17.orig/fs/inode.c 2016-04-26 14:05:20.369962618 +0200 4 | +++ linux-3.17/fs/inode.c 2016-04-26 14:05:20.363295952 +0200 5 | @@ -221,6 +221,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1510,7 +1512,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.18/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.17/fs/inode.c 2 | =================================================================== 3 | --- linux-3.17.orig/fs/inode.c 2016-04-26 14:05:20.369962618 +0200 4 | +++ linux-3.17/fs/inode.c 2016-04-26 14:05:20.363295952 +0200 5 | @@ -221,6 +221,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1510,7 +1512,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.19/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.19/fs/inode.c 2 | =================================================================== 3 | --- linux-3.19.orig/fs/inode.c 2016-04-26 14:44:41.209902072 +0200 4 | +++ linux-3.19/fs/inode.c 2016-04-26 14:44:41.203235406 +0200 5 | @@ -223,6 +223,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1512,7 +1514,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.2.51/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/buffer_head.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/buffer_head.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -72,6 +72,9 @@ 4 | struct address_space *b_assoc_map; /* mapping this buffer is 5 | associated with */ 6 | atomic_t b_count; /* users using this buffer_head */ 7 | + 8 | + spinlock_t causes_lock; 9 | + struct cause_list* causes; 10 | }; 11 | 12 | /* 13 | diff -rubBN linux-3.2.51/include/linux/cause_tags.h ../split-release/release/linux-3.2.51/include/linux/cause_tags.h 14 | -------------------------------------------------------------------------------- /patches/3.2/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/buffer_head.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/buffer_head.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -72,6 +72,9 @@ 4 | struct address_space *b_assoc_map; /* mapping this buffer is 5 | associated with */ 6 | atomic_t b_count; /* users using this buffer_head */ 7 | + 8 | + spinlock_t causes_lock; 9 | + struct cause_list* causes; 10 | }; 11 | 12 | /* 13 | diff -rubBN linux-3.2.51/include/linux/cause_tags.h ../split-release/release/linux-3.2.51/include/linux/cause_tags.h 14 | -------------------------------------------------------------------------------- /patches/3.2/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.2/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.2.orig/include/linux/fs.h 2016-04-25 11:04:05.893220838 +0200 4 | +++ linux-3.2/include/linux/fs.h 2016-04-25 11:04:05.886554171 +0200 5 | @@ -835,6 +835,9 @@ 6 | atomic_t i_readcount; /* struct files open RO */ 7 | #endif 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.3/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/buffer_head.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/buffer_head.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -72,6 +72,9 @@ 4 | struct address_space *b_assoc_map; /* mapping this buffer is 5 | associated with */ 6 | atomic_t b_count; /* users using this buffer_head */ 7 | + 8 | + spinlock_t causes_lock; 9 | + struct cause_list* causes; 10 | }; 11 | 12 | /* 13 | diff -rubBN linux-3.2.51/include/linux/cause_tags.h ../split-release/release/linux-3.2.51/include/linux/cause_tags.h 14 | -------------------------------------------------------------------------------- /patches/3.3/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.3.orig/include/linux/fs.h 2016-04-25 11:47:55.046472986 +0200 4 | +++ linux-3.3/include/linux/fs.h 2016-04-25 11:47:55.043139653 +0200 5 | @@ -842,6 +842,9 @@ 6 | atomic_t i_readcount; /* struct files open RO */ 7 | #endif 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.4/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/buffer_head.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/buffer_head.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -72,6 +72,9 @@ 4 | struct address_space *b_assoc_map; /* mapping this buffer is 5 | associated with */ 6 | atomic_t b_count; /* users using this buffer_head */ 7 | + 8 | + spinlock_t causes_lock; 9 | + struct cause_list* causes; 10 | }; 11 | 12 | /* 13 | diff -rubBN linux-3.2.51/include/linux/cause_tags.h ../split-release/release/linux-3.2.51/include/linux/cause_tags.h 14 | -------------------------------------------------------------------------------- /patches/3.4/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.4/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.4.orig/include/linux/fs.h 2016-04-25 14:46:44.818009145 +0200 4 | +++ linux-3.4/include/linux/fs.h 2016-04-25 14:46:44.811342479 +0200 5 | @@ -847,6 +847,9 @@ 6 | atomic_t i_readcount; /* struct files open RO */ 7 | #endif 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.5/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/buffer_head.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/buffer_head.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -72,6 +72,9 @@ 4 | struct address_space *b_assoc_map; /* mapping this buffer is 5 | associated with */ 6 | atomic_t b_count; /* users using this buffer_head */ 7 | + 8 | + spinlock_t causes_lock; 9 | + struct cause_list* causes; 10 | }; 11 | 12 | /* 13 | diff -rubBN linux-3.2.51/include/linux/cause_tags.h ../split-release/release/linux-3.2.51/include/linux/cause_tags.h 14 | -------------------------------------------------------------------------------- /patches/3.5/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/fs/inode.c 2 | =================================================================== 3 | --- linux-3.5.orig/fs/inode.c 2016-04-25 17:20:59.361172736 +0200 4 | +++ linux-3.5/fs/inode.c 2016-04-25 17:27:51.067826690 +0200 5 | @@ -219,6 +219,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1504,7 +1506,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.5/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.5.orig/include/linux/fs.h 2016-04-25 17:37:22.737809037 +0200 4 | +++ linux-3.5/include/linux/fs.h 2016-04-25 17:37:22.731142371 +0200 5 | @@ -857,6 +857,9 @@ 6 | atomic_t i_readcount; /* struct files open RO */ 7 | #endif 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.6/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/buffer_head.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/buffer_head.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -72,6 +72,9 @@ 4 | struct address_space *b_assoc_map; /* mapping this buffer is 5 | associated with */ 6 | atomic_t b_count; /* users using this buffer_head */ 7 | + 8 | + spinlock_t causes_lock; 9 | + struct cause_list* causes; 10 | }; 11 | 12 | /* 13 | diff -rubBN linux-3.2.51/include/linux/cause_tags.h ../split-release/release/linux-3.2.51/include/linux/cause_tags.h 14 | -------------------------------------------------------------------------------- /patches/3.6/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/fs/inode.c 2 | =================================================================== 3 | --- linux-3.5.orig/fs/inode.c 2016-04-25 17:20:59.361172736 +0200 4 | +++ linux-3.5/fs/inode.c 2016-04-25 17:27:51.067826690 +0200 5 | @@ -219,6 +219,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1504,7 +1506,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.6/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.6/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.6.orig/include/linux/fs.h 2016-04-25 17:52:22.287781260 +0200 4 | +++ linux-3.6/include/linux/fs.h 2016-04-25 17:52:22.284447927 +0200 5 | @@ -868,6 +868,9 @@ 6 | atomic_t i_readcount; /* struct files open RO */ 7 | #endif 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.7/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/buffer_head.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/buffer_head.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -72,6 +72,9 @@ 4 | struct address_space *b_assoc_map; /* mapping this buffer is 5 | associated with */ 6 | atomic_t b_count; /* users using this buffer_head */ 7 | + 8 | + spinlock_t causes_lock; 9 | + struct cause_list* causes; 10 | }; 11 | 12 | /* 13 | diff -rubBN linux-3.2.51/include/linux/cause_tags.h ../split-release/release/linux-3.2.51/include/linux/cause_tags.h 14 | -------------------------------------------------------------------------------- /patches/3.7/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.7/fs/inode.c 2 | =================================================================== 3 | --- linux-3.7.orig/fs/inode.c 2016-04-25 18:18:50.021065567 +0200 4 | +++ linux-3.7/fs/inode.c 2016-04-25 18:18:49.994398900 +0200 5 | @@ -219,6 +219,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1516,7 +1518,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.7/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.7/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.7.orig/include/linux/fs.h 2016-04-25 18:18:47.061065657 +0200 4 | +++ linux-3.7/include/linux/fs.h 2016-04-25 18:18:47.054398991 +0200 5 | @@ -606,6 +606,9 @@ 6 | atomic_t i_readcount; /* struct files open RO */ 7 | #endif 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.8/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/buffer_head.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/buffer_head.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -72,6 +72,9 @@ 4 | struct address_space *b_assoc_map; /* mapping this buffer is 5 | associated with */ 6 | atomic_t b_count; /* users using this buffer_head */ 7 | + 8 | + spinlock_t causes_lock; 9 | + struct cause_list* causes; 10 | }; 11 | 12 | /* 13 | diff -rubBN linux-3.2.51/include/linux/cause_tags.h ../split-release/release/linux-3.2.51/include/linux/cause_tags.h 14 | -------------------------------------------------------------------------------- /patches/3.8/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.7/fs/inode.c 2 | =================================================================== 3 | --- linux-3.7.orig/fs/inode.c 2016-04-25 18:18:50.021065567 +0200 4 | +++ linux-3.7/fs/inode.c 2016-04-25 18:18:49.994398900 +0200 5 | @@ -219,6 +219,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1516,7 +1518,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.8/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.8/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.8.orig/include/linux/fs.h 2016-04-25 19:35:57.642107732 +0200 4 | +++ linux-3.8/include/linux/fs.h 2016-04-25 19:35:57.635441066 +0200 5 | @@ -607,6 +607,9 @@ 6 | atomic_t i_readcount; /* struct files open RO */ 7 | #endif 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /patches/3.9/buffer_head.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/buffer_head.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/buffer_head.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -72,6 +72,9 @@ 4 | struct address_space *b_assoc_map; /* mapping this buffer is 5 | associated with */ 6 | atomic_t b_count; /* users using this buffer_head */ 7 | + 8 | + spinlock_t causes_lock; 9 | + struct cause_list* causes; 10 | }; 11 | 12 | /* 13 | diff -rubBN linux-3.2.51/include/linux/cause_tags.h ../split-release/release/linux-3.2.51/include/linux/cause_tags.h 14 | -------------------------------------------------------------------------------- /patches/3.9/fs-inode.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.9/fs/inode.c 2 | =================================================================== 3 | --- linux-3.9.orig/fs/inode.c 2016-04-25 19:56:47.005402487 +0200 4 | +++ linux-3.9/fs/inode.c 2016-04-25 19:56:47.002069155 +0200 5 | @@ -219,6 +219,8 @@ 6 | return NULL; 7 | } 8 | 9 | + inode->i_private1 = 0; 10 | + 11 | return inode; 12 | } 13 | 14 | @@ -1511,7 +1513,9 @@ 15 | inode->i_ctime = *time; 16 | if (flags & S_MTIME) 17 | inode->i_mtime = *time; 18 | +#ifndef SPLIT_NODEP 19 | mark_inode_dirty_sync(inode); 20 | +#endif 21 | return 0; 22 | } 23 | 24 | -------------------------------------------------------------------------------- /patches/3.9/fs.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.8/include/linux/fs.h 2 | =================================================================== 3 | --- linux-3.8.orig/include/linux/fs.h 2016-04-25 19:35:57.642107732 +0200 4 | +++ linux-3.8/include/linux/fs.h 2016-04-25 19:35:57.635441066 +0200 5 | @@ -607,6 +607,9 @@ 6 | atomic_t i_readcount; /* struct files open RO */ 7 | #endif 8 | void *i_private; /* fs or device private pointer */ 9 | + 10 | + // for scheduler to use as it pleases 11 | + long i_private1; // (maybe use as last write offset) 12 | }; 13 | 14 | static inline int inode_unhashed(struct inode *inode) 15 | -------------------------------------------------------------------------------- /modules/ioctl_helper.h: -------------------------------------------------------------------------------- 1 | #ifndef __IOCTL_HELPER_ 2 | #define __IOCTL_HELPER_ 3 | 4 | #include 5 | #include 6 | #include 7 | #include 8 | #include 9 | 10 | #define IOCTL_MAJOR 437 11 | 12 | 13 | typedef void (kv_set_fn) (struct request_queue *q, 14 | int id, char* key, long val); 15 | 16 | int ioctl_helper_register_disk(struct request_queue *q, 17 | kv_set_fn kv_set); 18 | void ioctl_helper_unregister_disk(struct request_queue *q); 19 | int ioctl_helper_init(int maj); 20 | void ioctl_helper_cleanup(void); 21 | 22 | #endif 23 | -------------------------------------------------------------------------------- /patches/3.16/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.16/block/Makefile 2 | =================================================================== 3 | --- linux-3.16.orig/block/Makefile 2016-04-26 13:49:32.926653583 +0200 4 | +++ linux-3.16/block/Makefile 2016-04-26 13:49:53.209986396 +0200 5 | @@ -8,7 +8,8 @@ 6 | blk-iopoll.o blk-lib.o blk-mq.o blk-mq-tag.o \ 7 | blk-mq-sysfs.o blk-mq-cpu.o blk-mq-cpumap.o ioctl.o \ 8 | genhd.o scsi_ioctl.o partition-generic.o ioprio.o \ 9 | - partitions/ 10 | + partitions/ \ 11 | + cause_tags.o 12 | 13 | obj-$(CONFIG_BOUNCE) += bounce.o 14 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 15 | -------------------------------------------------------------------------------- /patches/3.17/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.16/block/Makefile 2 | =================================================================== 3 | --- linux-3.16.orig/block/Makefile 2016-04-26 13:49:32.926653583 +0200 4 | +++ linux-3.16/block/Makefile 2016-04-26 13:49:53.209986396 +0200 5 | @@ -8,7 +8,8 @@ 6 | blk-iopoll.o blk-lib.o blk-mq.o blk-mq-tag.o \ 7 | blk-mq-sysfs.o blk-mq-cpu.o blk-mq-cpumap.o ioctl.o \ 8 | genhd.o scsi_ioctl.o partition-generic.o ioprio.o \ 9 | - partitions/ 10 | + partitions/ \ 11 | + cause_tags.o 12 | 13 | obj-$(CONFIG_BOUNCE) += bounce.o 14 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 15 | -------------------------------------------------------------------------------- /patches/3.18/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.16/block/Makefile 2 | =================================================================== 3 | --- linux-3.16.orig/block/Makefile 2016-04-26 13:49:32.926653583 +0200 4 | +++ linux-3.16/block/Makefile 2016-04-26 13:49:53.209986396 +0200 5 | @@ -8,7 +8,8 @@ 6 | blk-iopoll.o blk-lib.o blk-mq.o blk-mq-tag.o \ 7 | blk-mq-sysfs.o blk-mq-cpu.o blk-mq-cpumap.o ioctl.o \ 8 | genhd.o scsi_ioctl.o partition-generic.o ioprio.o \ 9 | - partitions/ 10 | + partitions/ \ 11 | + cause_tags.o 12 | 13 | obj-$(CONFIG_BOUNCE) += bounce.o 14 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 15 | -------------------------------------------------------------------------------- /patches/3.19/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.16/block/Makefile 2 | =================================================================== 3 | --- linux-3.16.orig/block/Makefile 2016-04-26 13:49:32.926653583 +0200 4 | +++ linux-3.16/block/Makefile 2016-04-26 13:49:53.209986396 +0200 5 | @@ -8,7 +8,8 @@ 6 | blk-iopoll.o blk-lib.o blk-mq.o blk-mq-tag.o \ 7 | blk-mq-sysfs.o blk-mq-cpu.o blk-mq-cpumap.o ioctl.o \ 8 | genhd.o scsi_ioctl.o partition-generic.o ioprio.o \ 9 | - partitions/ 10 | + partitions/ \ 11 | + cause_tags.o 12 | 13 | obj-$(CONFIG_BOUNCE) += bounce.o 14 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 15 | -------------------------------------------------------------------------------- /patches/3.2.51/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/blk_types.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/blk_types.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -72,6 +72,8 @@ 4 | 5 | bio_destructor_t *bi_destructor; /* destructor */ 6 | 7 | + struct cause_list_list *cll; 8 | + 9 | /* 10 | * We can inline a number of vecs at the end of the bio, to avoid 11 | * double allocations for a small number of bio_vecs. This member 12 | diff -rubBN linux-3.2.51/include/linux/buffer_head.h ../split-release/release/linux-3.2.51/include/linux/buffer_head.h 13 | -------------------------------------------------------------------------------- /patches/3.2/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/blk_types.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/blk_types.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -72,6 +72,8 @@ 4 | 5 | bio_destructor_t *bi_destructor; /* destructor */ 6 | 7 | + struct cause_list_list *cll; 8 | + 9 | /* 10 | * We can inline a number of vecs at the end of the bio, to avoid 11 | * double allocations for a small number of bio_vecs. This member 12 | diff -rubBN linux-3.2.51/include/linux/buffer_head.h ../split-release/release/linux-3.2.51/include/linux/buffer_head.h 13 | -------------------------------------------------------------------------------- /patches/3.3/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/blk_types.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/blk_types.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -72,6 +72,8 @@ 4 | 5 | bio_destructor_t *bi_destructor; /* destructor */ 6 | 7 | + struct cause_list_list *cll; 8 | + 9 | /* 10 | * We can inline a number of vecs at the end of the bio, to avoid 11 | * double allocations for a small number of bio_vecs. This member 12 | diff -rubBN linux-3.2.51/include/linux/buffer_head.h ../split-release/release/linux-3.2.51/include/linux/buffer_head.h 13 | -------------------------------------------------------------------------------- /patches/3.4/blk_types.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/blk_types.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/blk_types.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -72,6 +72,8 @@ 4 | 5 | bio_destructor_t *bi_destructor; /* destructor */ 6 | 7 | + struct cause_list_list *cll; 8 | + 9 | /* 10 | * We can inline a number of vecs at the end of the bio, to avoid 11 | * double allocations for a small number of bio_vecs. This member 12 | diff -rubBN linux-3.2.51/include/linux/buffer_head.h ../split-release/release/linux-3.2.51/include/linux/buffer_head.h 13 | -------------------------------------------------------------------------------- /patches/4.0/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.16/block/Makefile 2 | =================================================================== 3 | --- linux-3.16.orig/block/Makefile 2016-04-26 13:49:32.926653583 +0200 4 | +++ linux-3.16/block/Makefile 2016-04-26 13:49:53.209986396 +0200 5 | @@ -8,7 +8,8 @@ 6 | blk-iopoll.o blk-lib.o blk-mq.o blk-mq-tag.o \ 7 | blk-mq-sysfs.o blk-mq-cpu.o blk-mq-cpumap.o ioctl.o \ 8 | genhd.o scsi_ioctl.o partition-generic.o ioprio.o \ 9 | - partitions/ 10 | + partitions/ \ 11 | + cause_tags.o 12 | 13 | obj-$(CONFIG_BOUNCE) += bounce.o 14 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 15 | -------------------------------------------------------------------------------- /patches/4.1/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.16/block/Makefile 2 | =================================================================== 3 | --- linux-3.16.orig/block/Makefile 2016-04-26 13:49:32.926653583 +0200 4 | +++ linux-3.16/block/Makefile 2016-04-26 13:49:53.209986396 +0200 5 | @@ -8,7 +8,8 @@ 6 | blk-iopoll.o blk-lib.o blk-mq.o blk-mq-tag.o \ 7 | blk-mq-sysfs.o blk-mq-cpu.o blk-mq-cpumap.o ioctl.o \ 8 | genhd.o scsi_ioctl.o partition-generic.o ioprio.o \ 9 | - partitions/ 10 | + partitions/ \ 11 | + cause_tags.o 12 | 13 | obj-$(CONFIG_BOUNCE) += bounce.o 14 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 15 | -------------------------------------------------------------------------------- /patches/4.5/extent_io.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.5/fs/btrfs/extent_io.h 2 | =================================================================== 3 | --- linux-4.5.orig/fs/btrfs/extent_io.h 2016-04-27 09:54:05.191646167 +0200 4 | +++ linux-4.5/fs/btrfs/extent_io.h 2016-04-27 09:54:05.184979501 +0200 5 | @@ -207,6 +207,7 @@ 6 | } 7 | 8 | int try_lock_extent(struct extent_io_tree *tree, u64 start, u64 end); 9 | +void print_page_info(struct page *page); 10 | int extent_read_full_page(struct extent_io_tree *tree, struct page *page, 11 | get_extent_t *get_extent, int mirror_num); 12 | int __init extent_io_init(void); 13 | -------------------------------------------------------------------------------- /patches/4.5/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.5/block/Makefile 2 | =================================================================== 3 | --- linux-4.5.orig/block/Makefile 2016-04-27 09:51:57.764982768 +0200 4 | +++ linux-4.5/block/Makefile 2016-04-27 09:52:25.121648733 +0200 5 | @@ -8,7 +8,8 @@ 6 | blk-lib.o blk-mq.o blk-mq-tag.o \ 7 | blk-mq-sysfs.o blk-mq-cpu.o blk-mq-cpumap.o ioctl.o \ 8 | genhd.o scsi_ioctl.o partition-generic.o ioprio.o \ 9 | - badblocks.o partitions/ 10 | + badblocks.o partitions/ \ 11 | + cause_tags.o 12 | 13 | obj-$(CONFIG_BOUNCE) += bounce.o 14 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 15 | -------------------------------------------------------------------------------- /patches/3.2.51/filemap.c.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/mm/filemap.c 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/mm/filemap.c 2015-09-01 05:42:46.000000000 +0200 3 | @@ -776,6 +776,10 @@ 4 | page = __page_cache_alloc(gfp_mask); 5 | if (!page) 6 | return NULL; 7 | + 8 | +#ifndef DISABLE_CAUSES 9 | + page->locked_causes = NULL; 10 | +#endif 11 | /* 12 | * We want a regular kernel memory (not highmem or DMA etc) 13 | * allocation for the radix tree nodes, but we need to honour 14 | diff -rubBN linux-3.2.51/mm/page-writeback.c ../split-release/release/linux-3.2.51/mm/page-writeback.c 15 | -------------------------------------------------------------------------------- /patches/4.0/bio.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.0/block/bio.c 2 | =================================================================== 3 | --- linux-4.0.orig/block/bio.c 2016-04-26 14:57:36.429882192 +0200 4 | +++ linux-4.0/block/bio.c 2016-04-26 14:58:00.383214911 +0200 5 | @@ -28,6 +28,7 @@ 6 | #include 7 | #include 8 | #include 9 | +#include 10 | 11 | #include 12 | 13 | @@ -247,6 +248,8 @@ 14 | struct bio_set *bs = bio->bi_pool; 15 | void *p; 16 | 17 | + del_cause_list_list(bio->cll); 18 | + 19 | __bio_free(bio); 20 | 21 | if (bs) { 22 | -------------------------------------------------------------------------------- /patches/4.1/bio.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.0/block/bio.c 2 | =================================================================== 3 | --- linux-4.0.orig/block/bio.c 2016-04-26 14:57:36.429882192 +0200 4 | +++ linux-4.0/block/bio.c 2016-04-26 14:58:00.383214911 +0200 5 | @@ -28,6 +28,7 @@ 6 | #include 7 | #include 8 | #include 9 | +#include 10 | 11 | #include 12 | 13 | @@ -247,6 +248,8 @@ 14 | struct bio_set *bs = bio->bi_pool; 15 | void *p; 16 | 17 | + del_cause_list_list(bio->cll); 18 | + 19 | __bio_free(bio); 20 | 21 | if (bs) { 22 | -------------------------------------------------------------------------------- /patches/4.2/bio.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.0/block/bio.c 2 | =================================================================== 3 | --- linux-4.0.orig/block/bio.c 2016-04-26 14:57:36.429882192 +0200 4 | +++ linux-4.0/block/bio.c 2016-04-26 14:58:00.383214911 +0200 5 | @@ -28,6 +28,7 @@ 6 | #include 7 | #include 8 | #include 9 | +#include 10 | 11 | #include 12 | 13 | @@ -247,6 +248,8 @@ 14 | struct bio_set *bs = bio->bi_pool; 15 | void *p; 16 | 17 | + del_cause_list_list(bio->cll); 18 | + 19 | __bio_free(bio); 20 | 21 | if (bs) { 22 | -------------------------------------------------------------------------------- /patches/4.3/bio.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.0/block/bio.c 2 | =================================================================== 3 | --- linux-4.0.orig/block/bio.c 2016-04-26 14:57:36.429882192 +0200 4 | +++ linux-4.0/block/bio.c 2016-04-26 14:58:00.383214911 +0200 5 | @@ -28,6 +28,7 @@ 6 | #include 7 | #include 8 | #include 9 | +#include 10 | 11 | #include 12 | 13 | @@ -247,6 +248,8 @@ 14 | struct bio_set *bs = bio->bi_pool; 15 | void *p; 16 | 17 | + del_cause_list_list(bio->cll); 18 | + 19 | __bio_free(bio); 20 | 21 | if (bs) { 22 | -------------------------------------------------------------------------------- /patches/4.4/bio.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.0/block/bio.c 2 | =================================================================== 3 | --- linux-4.0.orig/block/bio.c 2016-04-26 14:57:36.429882192 +0200 4 | +++ linux-4.0/block/bio.c 2016-04-26 14:58:00.383214911 +0200 5 | @@ -28,6 +28,7 @@ 6 | #include 7 | #include 8 | #include 9 | +#include 10 | 11 | #include 12 | 13 | @@ -247,6 +248,8 @@ 14 | struct bio_set *bs = bio->bi_pool; 15 | void *p; 16 | 17 | + del_cause_list_list(bio->cll); 18 | + 19 | __bio_free(bio); 20 | 21 | if (bs) { 22 | -------------------------------------------------------------------------------- /patches/4.5/bio.c.patch: -------------------------------------------------------------------------------- 1 | Index: linux-4.0/block/bio.c 2 | =================================================================== 3 | --- linux-4.0.orig/block/bio.c 2016-04-26 14:57:36.429882192 +0200 4 | +++ linux-4.0/block/bio.c 2016-04-26 14:58:00.383214911 +0200 5 | @@ -28,6 +28,7 @@ 6 | #include 7 | #include 8 | #include 9 | +#include 10 | 11 | #include 12 | 13 | @@ -247,6 +248,8 @@ 14 | struct bio_set *bs = bio->bi_pool; 15 | void *p; 16 | 17 | + del_cause_list_list(bio->cll); 18 | + 19 | __bio_free(bio); 20 | 21 | if (bs) { 22 | -------------------------------------------------------------------------------- /patches/3.2.51/fs.h.patch: -------------------------------------------------------------------------------- 1 | --- linux-3.2.51/include/linux/fs.h 2013-09-10 02:57:42.000000000 +0200 2 | +++ ../split-release/release/linux-3.2.51/include/linux/fs.h 2015-09-01 05:42:28.000000000 +0200 3 | @@ -839,6 +839,9 @@ 4 | atomic_t i_readcount; /* struct files open RO */ 5 | #endif 6 | void *i_private; /* fs or device private pointer */ 7 | + 8 | + // for scheduler to use as it pleases 9 | + long i_private1; // (maybe use as last write offset) 10 | }; 11 | 12 | static inline int inode_unhashed(struct inode *inode) 13 | diff -rubBN linux-3.2.51/include/linux/hashtable.h ../split-release/release/linux-3.2.51/include/linux/hashtable.h 14 | -------------------------------------------------------------------------------- /patches/3.10/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/block/Makefile 2 | =================================================================== 3 | --- linux-3.3.orig/block/Makefile 2016-04-25 11:43:02.606482017 +0200 4 | +++ linux-3.3/block/Makefile 2016-04-25 11:43:28.566481215 +0200 5 | @@ -6,7 +6,7 @@ 6 | blk-flush.o blk-settings.o blk-ioc.o blk-map.o \ 7 | blk-exec.o blk-merge.o blk-softirq.o blk-timeout.o \ 8 | blk-iopoll.o blk-lib.o ioctl.o genhd.o scsi_ioctl.o \ 9 | - partition-generic.o partitions/ 10 | + cause_tags.o partition-generic.o partitions/ 11 | 12 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 13 | obj-$(CONFIG_BLK_DEV_BSGLIB) += bsg-lib.o 14 | -------------------------------------------------------------------------------- /patches/3.11/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/block/Makefile 2 | =================================================================== 3 | --- linux-3.3.orig/block/Makefile 2016-04-25 11:43:02.606482017 +0200 4 | +++ linux-3.3/block/Makefile 2016-04-25 11:43:28.566481215 +0200 5 | @@ -6,7 +6,7 @@ 6 | blk-flush.o blk-settings.o blk-ioc.o blk-map.o \ 7 | blk-exec.o blk-merge.o blk-softirq.o blk-timeout.o \ 8 | blk-iopoll.o blk-lib.o ioctl.o genhd.o scsi_ioctl.o \ 9 | - partition-generic.o partitions/ 10 | + cause_tags.o partition-generic.o partitions/ 11 | 12 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 13 | obj-$(CONFIG_BLK_DEV_BSGLIB) += bsg-lib.o 14 | -------------------------------------------------------------------------------- /patches/3.12/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/block/Makefile 2 | =================================================================== 3 | --- linux-3.3.orig/block/Makefile 2016-04-25 11:43:02.606482017 +0200 4 | +++ linux-3.3/block/Makefile 2016-04-25 11:43:28.566481215 +0200 5 | @@ -6,7 +6,7 @@ 6 | blk-flush.o blk-settings.o blk-ioc.o blk-map.o \ 7 | blk-exec.o blk-merge.o blk-softirq.o blk-timeout.o \ 8 | blk-iopoll.o blk-lib.o ioctl.o genhd.o scsi_ioctl.o \ 9 | - partition-generic.o partitions/ 10 | + cause_tags.o partition-generic.o partitions/ 11 | 12 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 13 | obj-$(CONFIG_BLK_DEV_BSGLIB) += bsg-lib.o 14 | -------------------------------------------------------------------------------- /patches/3.3/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/block/Makefile 2 | =================================================================== 3 | --- linux-3.3.orig/block/Makefile 2016-04-25 11:43:02.606482017 +0200 4 | +++ linux-3.3/block/Makefile 2016-04-25 11:43:28.566481215 +0200 5 | @@ -6,7 +6,7 @@ 6 | blk-flush.o blk-settings.o blk-ioc.o blk-map.o \ 7 | blk-exec.o blk-merge.o blk-softirq.o blk-timeout.o \ 8 | blk-iopoll.o blk-lib.o ioctl.o genhd.o scsi_ioctl.o \ 9 | - partition-generic.o partitions/ 10 | + cause_tags.o partition-generic.o partitions/ 11 | 12 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 13 | obj-$(CONFIG_BLK_DEV_BSGLIB) += bsg-lib.o 14 | -------------------------------------------------------------------------------- /patches/3.4/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/block/Makefile 2 | =================================================================== 3 | --- linux-3.3.orig/block/Makefile 2016-04-25 11:43:02.606482017 +0200 4 | +++ linux-3.3/block/Makefile 2016-04-25 11:43:28.566481215 +0200 5 | @@ -6,7 +6,7 @@ 6 | blk-flush.o blk-settings.o blk-ioc.o blk-map.o \ 7 | blk-exec.o blk-merge.o blk-softirq.o blk-timeout.o \ 8 | blk-iopoll.o blk-lib.o ioctl.o genhd.o scsi_ioctl.o \ 9 | - partition-generic.o partitions/ 10 | + cause_tags.o partition-generic.o partitions/ 11 | 12 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 13 | obj-$(CONFIG_BLK_DEV_BSGLIB) += bsg-lib.o 14 | -------------------------------------------------------------------------------- /patches/3.5/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/block/Makefile 2 | =================================================================== 3 | --- linux-3.3.orig/block/Makefile 2016-04-25 11:43:02.606482017 +0200 4 | +++ linux-3.3/block/Makefile 2016-04-25 11:43:28.566481215 +0200 5 | @@ -6,7 +6,7 @@ 6 | blk-flush.o blk-settings.o blk-ioc.o blk-map.o \ 7 | blk-exec.o blk-merge.o blk-softirq.o blk-timeout.o \ 8 | blk-iopoll.o blk-lib.o ioctl.o genhd.o scsi_ioctl.o \ 9 | - partition-generic.o partitions/ 10 | + cause_tags.o partition-generic.o partitions/ 11 | 12 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 13 | obj-$(CONFIG_BLK_DEV_BSGLIB) += bsg-lib.o 14 | -------------------------------------------------------------------------------- /patches/3.6/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/block/Makefile 2 | =================================================================== 3 | --- linux-3.3.orig/block/Makefile 2016-04-25 11:43:02.606482017 +0200 4 | +++ linux-3.3/block/Makefile 2016-04-25 11:43:28.566481215 +0200 5 | @@ -6,7 +6,7 @@ 6 | blk-flush.o blk-settings.o blk-ioc.o blk-map.o \ 7 | blk-exec.o blk-merge.o blk-softirq.o blk-timeout.o \ 8 | blk-iopoll.o blk-lib.o ioctl.o genhd.o scsi_ioctl.o \ 9 | - partition-generic.o partitions/ 10 | + cause_tags.o partition-generic.o partitions/ 11 | 12 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 13 | obj-$(CONFIG_BLK_DEV_BSGLIB) += bsg-lib.o 14 | -------------------------------------------------------------------------------- /patches/3.7/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/block/Makefile 2 | =================================================================== 3 | --- linux-3.3.orig/block/Makefile 2016-04-25 11:43:02.606482017 +0200 4 | +++ linux-3.3/block/Makefile 2016-04-25 11:43:28.566481215 +0200 5 | @@ -6,7 +6,7 @@ 6 | blk-flush.o blk-settings.o blk-ioc.o blk-map.o \ 7 | blk-exec.o blk-merge.o blk-softirq.o blk-timeout.o \ 8 | blk-iopoll.o blk-lib.o ioctl.o genhd.o scsi_ioctl.o \ 9 | - partition-generic.o partitions/ 10 | + cause_tags.o partition-generic.o partitions/ 11 | 12 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 13 | obj-$(CONFIG_BLK_DEV_BSGLIB) += bsg-lib.o 14 | -------------------------------------------------------------------------------- /patches/3.8/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/block/Makefile 2 | =================================================================== 3 | --- linux-3.3.orig/block/Makefile 2016-04-25 11:43:02.606482017 +0200 4 | +++ linux-3.3/block/Makefile 2016-04-25 11:43:28.566481215 +0200 5 | @@ -6,7 +6,7 @@ 6 | blk-flush.o blk-settings.o blk-ioc.o blk-map.o \ 7 | blk-exec.o blk-merge.o blk-softirq.o blk-timeout.o \ 8 | blk-iopoll.o blk-lib.o ioctl.o genhd.o scsi_ioctl.o \ 9 | - partition-generic.o partitions/ 10 | + cause_tags.o partition-generic.o partitions/ 11 | 12 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 13 | obj-$(CONFIG_BLK_DEV_BSGLIB) += bsg-lib.o 14 | -------------------------------------------------------------------------------- /patches/3.9/Makefile.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/block/Makefile 2 | =================================================================== 3 | --- linux-3.3.orig/block/Makefile 2016-04-25 11:43:02.606482017 +0200 4 | +++ linux-3.3/block/Makefile 2016-04-25 11:43:28.566481215 +0200 5 | @@ -6,7 +6,7 @@ 6 | blk-flush.o blk-settings.o blk-ioc.o blk-map.o \ 7 | blk-exec.o blk-merge.o blk-softirq.o blk-timeout.o \ 8 | blk-iopoll.o blk-lib.o ioctl.o genhd.o scsi_ioctl.o \ 9 | - partition-generic.o partitions/ 10 | + cause_tags.o partition-generic.o partitions/ 11 | 12 | obj-$(CONFIG_BLK_DEV_BSG) += bsg.o 13 | obj-$(CONFIG_BLK_DEV_BSGLIB) += bsg-lib.o 14 | -------------------------------------------------------------------------------- /patches/3.3/mm_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/include/linux/mm_types.h 2 | =================================================================== 3 | --- linux-3.3.orig/include/linux/mm_types.h 2016-04-25 11:48:27.109805330 +0200 4 | +++ linux-3.3/include/linux/mm_types.h 2016-04-25 11:48:27.106471996 +0200 5 | @@ -149,7 +149,13 @@ 6 | */ 7 | void *shadow; 8 | #endif 9 | + 10 | + // cause list for btrfs 11 | +#ifndef DISABLE_CAUSES 12 | + void* locked_causes; 13 | +#endif 14 | } 15 | + 16 | /* 17 | * The struct page can be forced to be double word aligned so that atomic ops 18 | * on double words work. The SLUB allocator can make use of such a feature. 19 | -------------------------------------------------------------------------------- /patches/3.4/mm_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.3/include/linux/mm_types.h 2 | =================================================================== 3 | --- linux-3.3.orig/include/linux/mm_types.h 2016-04-25 11:48:27.109805330 +0200 4 | +++ linux-3.3/include/linux/mm_types.h 2016-04-25 11:48:27.106471996 +0200 5 | @@ -149,7 +149,13 @@ 6 | */ 7 | void *shadow; 8 | #endif 9 | + 10 | + // cause list for btrfs 11 | +#ifndef DISABLE_CAUSES 12 | + void* locked_causes; 13 | +#endif 14 | } 15 | + 16 | /* 17 | * The struct page can be forced to be double word aligned so that atomic ops 18 | * on double words work. The SLUB allocator can make use of such a feature. 19 | -------------------------------------------------------------------------------- /patches/3.5/mm_types.h.patch: -------------------------------------------------------------------------------- 1 | Index: linux-3.5/include/linux/mm_types.h 2 | =================================================================== 3 | --- linux-3.5.orig/include/linux/mm_types.h 2016-04-25 17:37:46.137808314 +0200 4 | +++ linux-3.5/include/linux/mm_types.h 2016-04-25 17:37:46.131141648 +0200 5 | @@ -160,7 +160,13 @@ 6 | */ 7 | void *shadow; 8 | #endif 9 | + 10 | + // cause list for btrfs 11 | +#ifndef DISABLE_CAUSES 12 | + void* locked_causes; 13 | +#endif 14 | } 15 | + 16 | /* 17 | * The struct page can be forced to be double word aligned so that atomic ops 18 | * on double words work. The SLUB allocator can make use of such a feature. 19 | --------------------------------------------------------------------------------