diff options
Diffstat (limited to 'unmaintained')
-rw-r--r-- | unmaintained/flashcache-grsec/APKBUILD | 79 | ||||
-rw-r--r-- | unmaintained/flashcache-grsec/depmod.patch | 20 | ||||
-rw-r--r-- | unmaintained/flashcache-grsec/kernel-3.18.patch | 288 | ||||
-rw-r--r-- | unmaintained/flashcache-grsec/kernel-4.2.patch | 36 |
4 files changed, 423 insertions, 0 deletions
diff --git a/unmaintained/flashcache-grsec/APKBUILD b/unmaintained/flashcache-grsec/APKBUILD new file mode 100644 index 0000000000..1c5206a336 --- /dev/null +++ b/unmaintained/flashcache-grsec/APKBUILD @@ -0,0 +1,79 @@ +# Maintainer: Natanael Copa <ncopa@alpinelinux.org> +_flavor=${FLAVOR:-grsec} +_kpkg=linux-$_flavor +_realname=flashcache +_name=$_realname-$_flavor + +_kver=4.4.14 +_kpkgrel=1 + +_realver=3.1.2 +_mypkgrel=0 + +# source the kernel version +if [ -f ../linux-$_flavor/APKBUILD ]; then + . ../linux-$_flavor/APKBUILD + [ "$_kver" != "$pkgver" ] && die "$_name: Please update _kver to $pkgver" + [ "$_kpkgrel" != "$pkgrel" ] && die "$_name: Please update _kpkgrel to $pkgrel" +fi + +_kernelver=$_kver-r$_kpkgrel +_abi_release=${_kver}-${_kpkgrel}-${_flavor} + +pkgname=$_name +pkgver=$_kver +pkgrel=$(($_kpkgrel + $_mypkgrel)) +pkgdesc="a general purpose writeback block cache for Linux" +url="https://github.com/facebook/flashcache/" +arch="" +license="GPL" +depends="linux-${_flavor}=${_kernelver}" +makedepends="linux-${_flavor}-dev=${_kernelver}" +install= +install_if="linux-$_flavor=$_kernelver $_realname" +subpackages= +source="$_realname-$_realver.tar.gz::https://github.com/facebook/flashcache/archive/$_realver.tar.gz + depmod.patch + kernel-3.18.patch + kernel-4.2.patch + " + + +# override kernel's prepare() +prepare() { + cd "$srcdir/$_realname-$_realver" + for i in $source; do + case $i in + *.patch) msg $i; patch -p1 -i "$srcdir"/$i || return 1;; + esac + done +} + +build() { + cd "$srcdir/$_realname-$_realver"/src + make CC="${CC:-gcc}" KCFLAGS="-fno-pie" \ + KERNEL_SOURCE_VERSION=$_abi_release modules \ + || return 1 +} + +package() { + cd "$srcdir/$_realname-$_realver"/src + + make DESTDIR="$pkgdir" CC="${CC:-gcc}" \ + KCFLAGS="-fno-pie" \ + KERNEL_SOURCE_VERSION=$_abi_release \ + DEPMOD=: modules_install || return 1 +} + +md5sums="b569604f7efce881e87752c9efc01965 flashcache-3.1.2.tar.gz +ef9bd511f2b964bf22863814679bfba3 depmod.patch +24462dd41268d045bd91ba88274115fb kernel-3.18.patch +29d3529370a569327a9a258f88dd30cc kernel-4.2.patch" +sha256sums="f1d97395c744850a909e5f57b69a0ce87c773f2761e0147dd78de5fec3ea61e2 flashcache-3.1.2.tar.gz +05c0fefaaaea624c12b9ff3e66e0029b8dcc0c0d3246e10683bf217e10b3c450 depmod.patch +34a008e4c2382c757e030280fc6ce66c739251ca7883ef7d45feba44e2a05134 kernel-3.18.patch +cf21af11f507fe81094933e3c79379067661a32d834f2ac2378a4dd67f50d080 kernel-4.2.patch" +sha512sums="03d88b2622b7a41b66cd5cf4637be52c3bd6f25ac1099d7ea247e8e9bdad8a040bf0d10bcee2f49de8621f0da755dfd8a03810d709faaa330b78b6c564872e72 flashcache-3.1.2.tar.gz +55543347d76171352199294a29bcf19ba6b511f57e63c2a4254c4ebad8829912c65cdbef95bc7485d079dd66c56c1624b9570e7faf038cc5cb80e81079fcadc6 depmod.patch +f09255bdc66711e35736a018f870b7a398bf05e3f1e8e4574a84967672152c510a4d6f8687ced49f52cfa63c57b407a393805e4df900de8ee6817e9c8c455306 kernel-3.18.patch +82b1c885e2884a1ece0e003b726067ed0818f40f92689145b15aff1e15e14e5c34ed9b38f35010519d584dd5c6d5dda3393ed09d716bd1bf9aa4e85524fdd2a2 kernel-4.2.patch" diff --git a/unmaintained/flashcache-grsec/depmod.patch b/unmaintained/flashcache-grsec/depmod.patch new file mode 100644 index 0000000000..15c0615057 --- /dev/null +++ b/unmaintained/flashcache-grsec/depmod.patch @@ -0,0 +1,20 @@ +--- ./src/Makefile.orig 2013-08-15 11:20:54.575932175 +0000 ++++ ./src/Makefile 2013-08-15 11:21:37.813472296 +0000 +@@ -24,6 +24,8 @@ + KERNEL_TREE := $(RHEL5_TREE) + endif + ++DEPMOD ?= depmod ++ + obj-m += flashcache.o + flashcache-objs := flashcache_conf.o flashcache_main.o flashcache_subr.o flashcache_ioctl.o flashcache_procfs.o + +@@ -42,7 +44,7 @@ + modules_install: modules + install -o root -g root -m 0755 -d $(DESTDIR)/lib/modules/$(KERNEL_SOURCE_VERSION)/extra/flashcache/ + install -o root -g root -m 0755 flashcache.ko $(DESTDIR)/lib/modules/$(KERNEL_SOURCE_VERSION)/extra/flashcache/ +- depmod -a $(KERNEL_SOURCE_VERSION) ++ $(DEPMOD) -a $(KERNEL_SOURCE_VERSION) + + .PHONY: utils_install + utils_install: utils diff --git a/unmaintained/flashcache-grsec/kernel-3.18.patch b/unmaintained/flashcache-grsec/kernel-3.18.patch new file mode 100644 index 0000000000..ba0dc631a3 --- /dev/null +++ b/unmaintained/flashcache-grsec/kernel-3.18.patch @@ -0,0 +1,288 @@ +From 387fce7bf2143b55147ce4822cd68f694c0bc49a Mon Sep 17 00:00:00 2001 +From: Mohan Srinivasan <mohan@fb.com> +Date: Mon, 3 Nov 2014 11:57:38 -0800 +Subject: [PATCH] 3.17. 3.18 compilation fixes. + +Summary: +3.17. 3.18 compilation fixes. + +Test Plan: + +Reviewers: + +CC: + +Task ID: # + +Blame Rev: +--- + src/flashcache_conf.c | 32 ++++++++++++++++++++++++++++- + src/flashcache_procfs.c | 54 +++++++++++++++++++++++++++++++++++++++++++++++++ + 2 files changed, 85 insertions(+), 1 deletion(-) + +diff --git a/src/flashcache_conf.c b/src/flashcache_conf.c +index 36d1e25..ad20539 100644 +--- a/src/flashcache_conf.c ++++ b/src/flashcache_conf.c +@@ -91,12 +91,14 @@ static void flashcache_sync_for_remove(struct cache_c *dmc); + + extern char *flashcache_sw_version; + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,17,0) + static int + flashcache_wait_schedule(void *unused) + { + schedule(); + return 0; + } ++#endif + + static int + flashcache_jobs_init(void) +@@ -1222,13 +1224,21 @@ flashcache_ctr(struct dm_target *ti, unsigned int argc, char **argv) + seq_io_move_to_lruhead(dmc, &dmc->seq_recent_ios[i]); + } + dmc->seq_io_tail = &dmc->seq_recent_ios[0]; +- ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,17,0) + (void)wait_on_bit_lock(&flashcache_control->synch_flags, FLASHCACHE_UPDATE_LIST, + flashcache_wait_schedule, TASK_UNINTERRUPTIBLE); ++#else ++ (void)wait_on_bit_lock(&flashcache_control->synch_flags, FLASHCACHE_UPDATE_LIST, ++ TASK_UNINTERRUPTIBLE); ++#endif + dmc->next_cache = cache_list_head; + cache_list_head = dmc; + clear_bit(FLASHCACHE_UPDATE_LIST, &flashcache_control->synch_flags); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,17,0) + smp_mb__after_clear_bit(); ++#else ++ smp_mb__after_atomic(); ++#endif + wake_up_bit(&flashcache_control->synch_flags, FLASHCACHE_UPDATE_LIST); + + for (i = 0 ; i < dmc->size ; i++) { +@@ -1438,10 +1448,16 @@ flashcache_dtr(struct dm_target *ti) + VERIFY(dmc->num_blacklist_pids == 0); + dm_put_device(ti, dmc->disk_dev); + dm_put_device(ti, dmc->cache_dev); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,17,0) + (void)wait_on_bit_lock(&flashcache_control->synch_flags, + FLASHCACHE_UPDATE_LIST, + flashcache_wait_schedule, + TASK_UNINTERRUPTIBLE); ++#else ++ (void)wait_on_bit_lock(&flashcache_control->synch_flags, ++ FLASHCACHE_UPDATE_LIST, ++ TASK_UNINTERRUPTIBLE); ++#endif + nodepp = &cache_list_head; + while (*nodepp != NULL) { + if (*nodepp == dmc) { +@@ -1451,7 +1467,11 @@ flashcache_dtr(struct dm_target *ti) + nodepp = &((*nodepp)->next_cache); + } + clear_bit(FLASHCACHE_UPDATE_LIST, &flashcache_control->synch_flags); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,17,0) + smp_mb__after_clear_bit(); ++#else ++ smp_mb__after_atomic(); ++#endif + wake_up_bit(&flashcache_control->synch_flags, FLASHCACHE_UPDATE_LIST); + kfree(dmc); + } +@@ -1735,10 +1755,16 @@ flashcache_notify_reboot(struct notifier_block *this, + { + struct cache_c *dmc; + ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,17,0) + (void)wait_on_bit_lock(&flashcache_control->synch_flags, + FLASHCACHE_UPDATE_LIST, + flashcache_wait_schedule, + TASK_UNINTERRUPTIBLE); ++#else ++ (void)wait_on_bit_lock(&flashcache_control->synch_flags, ++ FLASHCACHE_UPDATE_LIST, ++ TASK_UNINTERRUPTIBLE); ++#endif + for (dmc = cache_list_head ; + dmc != NULL ; + dmc = dmc->next_cache) { +@@ -1750,7 +1776,11 @@ flashcache_notify_reboot(struct notifier_block *this, + } + } + clear_bit(FLASHCACHE_UPDATE_LIST, &flashcache_control->synch_flags); ++#if LINUX_VERSION_CODE < KERNEL_VERSION(3,17,0) + smp_mb__after_clear_bit(); ++#else ++ smp_mb__after_atomic(); ++#endif + wake_up_bit(&flashcache_control->synch_flags, FLASHCACHE_UPDATE_LIST); + return NOTIFY_DONE; + } +diff --git a/src/flashcache_procfs.c b/src/flashcache_procfs.c +index 2ff33c0..23c5a81 100644 +--- a/src/flashcache_procfs.c ++++ b/src/flashcache_procfs.c +@@ -70,12 +70,18 @@ static char *flashcache_cons_sysctl_devname(struct cache_c *dmc); + #define FLASHCACHE_PROC_ROOTDIR_NAME "flashcache" + + static int ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,17,0) ++flashcache_io_latency_init(struct ctl_table *table, int write, ++ void __user *buffer, ++ size_t *length, loff_t *ppos) ++#else + flashcache_io_latency_init(ctl_table *table, int write, + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,32) + struct file *file, + #endif + void __user *buffer, + size_t *length, loff_t *ppos) ++#endif + { + struct cache_c *dmc = (struct cache_c *)table->extra1; + +@@ -97,12 +103,18 @@ flashcache_io_latency_init(ctl_table *table, int write, + } + + static int ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,17,0) ++flashcache_sync_sysctl(struct ctl_table *table, int write, ++ void __user *buffer, ++ size_t *length, loff_t *ppos) ++#else + flashcache_sync_sysctl(ctl_table *table, int write, + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,32) + struct file *file, + #endif + void __user *buffer, + size_t *length, loff_t *ppos) ++#endif + { + struct cache_c *dmc = (struct cache_c *)table->extra1; + +@@ -123,12 +135,18 @@ flashcache_sync_sysctl(ctl_table *table, int write, + } + + static int ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,17,0) ++flashcache_zerostats_sysctl(struct ctl_table *table, int write, ++ void __user *buffer, ++ size_t *length, loff_t *ppos) ++#else + flashcache_zerostats_sysctl(ctl_table *table, int write, + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,32) + struct file *file, + #endif + void __user *buffer, + size_t *length, loff_t *ppos) ++#endif + { + struct cache_c *dmc = (struct cache_c *)table->extra1; + +@@ -151,12 +169,18 @@ flashcache_zerostats_sysctl(ctl_table *table, int write, + } + + static int ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,17,0) ++flashcache_fallow_clean_speed_sysctl(struct ctl_table *table, int write, ++ void __user *buffer, ++ size_t *length, loff_t *ppos) ++#else + flashcache_fallow_clean_speed_sysctl(ctl_table *table, int write, + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,32) + struct file *file, + #endif + void __user *buffer, + size_t *length, loff_t *ppos) ++#endif + { + struct cache_c *dmc = (struct cache_c *)table->extra1; + +@@ -176,12 +200,18 @@ flashcache_fallow_clean_speed_sysctl(ctl_table *table, int write, + } + + static int ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,17,0) ++flashcache_dirty_thresh_sysctl(struct ctl_table *table, int write, ++ void __user *buffer, ++ size_t *length, loff_t *ppos) ++#else + flashcache_dirty_thresh_sysctl(ctl_table *table, int write, + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,32) + struct file *file, + #endif + void __user *buffer, + size_t *length, loff_t *ppos) ++#endif + { + struct cache_c *dmc = (struct cache_c *)table->extra1; + +@@ -204,12 +234,18 @@ flashcache_dirty_thresh_sysctl(ctl_table *table, int write, + } + + static int ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,17,0) ++flashcache_lru_hot_pct_sysctl(struct ctl_table *table, int write, ++ void __user *buffer, ++ size_t *length, loff_t *ppos) ++#else + flashcache_lru_hot_pct_sysctl(ctl_table *table, int write, + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,32) + struct file *file, + #endif + void __user *buffer, + size_t *length, loff_t *ppos) ++#endif + { + struct cache_c *dmc = (struct cache_c *)table->extra1; + +@@ -236,10 +272,17 @@ flashcache_lru_hot_pct_sysctl(ctl_table *table, int write, + + static struct flashcache_writeback_sysctl_table { + struct ctl_table_header *sysctl_header; ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,17,0) ++ struct ctl_table vars[FLASHCACHE_NUM_WRITEBACK_SYSCTLS]; ++ struct ctl_table dev[2]; ++ struct ctl_table dir[2]; ++ struct ctl_table root[2]; ++#else + ctl_table vars[FLASHCACHE_NUM_WRITEBACK_SYSCTLS]; + ctl_table dev[2]; + ctl_table dir[2]; + ctl_table root[2]; ++#endif + } flashcache_writeback_sysctl = { + .vars = { + { +@@ -510,10 +553,17 @@ static struct flashcache_writeback_sysctl_table { + + static struct flashcache_writethrough_sysctl_table { + struct ctl_table_header *sysctl_header; ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,17,0) ++ struct ctl_table vars[FLASHCACHE_NUM_WRITETHROUGH_SYSCTLS]; ++ struct ctl_table dev[2]; ++ struct ctl_table dir[2]; ++ struct ctl_table root[2]; ++#else + ctl_table vars[FLASHCACHE_NUM_WRITETHROUGH_SYSCTLS]; + ctl_table dev[2]; + ctl_table dir[2]; + ctl_table root[2]; ++#endif + } flashcache_writethrough_sysctl = { + .vars = { + { +@@ -668,7 +718,11 @@ static struct flashcache_writethrough_sysctl_table { + }; + + int * ++#if LINUX_VERSION_CODE >= KERNEL_VERSION(3,17,0) ++flashcache_find_sysctl_data(struct cache_c *dmc, struct ctl_table *vars) ++#else + flashcache_find_sysctl_data(struct cache_c *dmc, ctl_table *vars) ++#endif + { + if (strcmp(vars->procname, "io_latency_hist") == 0) + return &dmc->sysctl_io_latency_hist; diff --git a/unmaintained/flashcache-grsec/kernel-4.2.patch b/unmaintained/flashcache-grsec/kernel-4.2.patch new file mode 100644 index 0000000000..7f2b5c6e01 --- /dev/null +++ b/unmaintained/flashcache-grsec/kernel-4.2.patch @@ -0,0 +1,36 @@ +From 0feecf4de9d94cd903a7db373b8cd5cb0eef1987 Mon Sep 17 00:00:00 2001 +From: Vinson Lee <vlee@twitter.com> +Date: Wed, 1 Jul 2015 14:12:47 -0700 +Subject: [PATCH] Fix Linux 4.2 compilation errors. + +Signed-off-by: Vinson Lee <vlee@twitter.com> +--- + src/flashcache_conf.c | 1 + + src/flashcache_kcopy.c | 1 + + src/flashcache_subr.c | 1 + + 3 files changed, 3 insertions(+) + +diff --git a/src/flashcache_conf.c b/src/flashcache_conf.c +index 43f4387..0ca05f7 100644 +--- a/src/flashcache_conf.c ++++ b/src/flashcache_conf.c +@@ -41,6 +41,7 @@ + #include <linux/delay.h> + #include <linux/proc_fs.h> + #include <linux/seq_file.h> ++#include <linux/vmalloc.h> + + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26) + #include "dm.h" +diff --git a/src/flashcache_subr.c b/src/flashcache_subr.c +index 8d0bae5..ef931d4 100644 +--- a/src/flashcache_subr.c ++++ b/src/flashcache_subr.c +@@ -41,6 +41,7 @@ + #include <linux/time.h> + #include <asm/kmap_types.h> + #include <linux/jhash.h> ++#include <linux/vmalloc.h> + + #if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,26) + #include "dm.h" |