mars/pre-patches/2.6.32-rhel6-openvz

183 lines
5.9 KiB
Plaintext

diff -urpN source.rhel6//block/Kconfig source/block/Kconfig
--- source.rhel6//block/Kconfig 2012-11-21 12:24:27.625510977 +0100
+++ source/block/Kconfig 2012-11-21 16:09:02.796206772 +0100
@@ -99,6 +99,8 @@ config BLK_DEV_THROTTLING
See Documentation/cgroups/blkio-controller.txt for more information.
+source block/mars/kernel/Kconfig
+
endif # BLOCK
config BLOCK_COMPAT
diff -urpN source.rhel6//block/Makefile source/block/Makefile
--- source.rhel6//block/Makefile 2012-11-21 12:24:27.625510977 +0100
+++ source/block/Makefile 2012-11-21 16:09:55.384556249 +0100
@@ -18,3 +18,6 @@ obj-$(CONFIG_IOSCHED_CFQ) += cfq-iosched
obj-$(CONFIG_BLOCK_COMPAT) += compat_ioctl.o
obj-$(CONFIG_BLK_DEV_INTEGRITY) += blk-integrity.o
+
+obj-$(CONFIG_MARS) += mars/kernel/
+
diff -urpN source.rhel6//fs/aio.c source/fs/aio.c
--- source.rhel6//fs/aio.c 2012-11-21 12:24:35.721563886 +0100
+++ source/fs/aio.c 2012-11-21 16:13:54.634146459 +0100
@@ -1304,6 +1304,8 @@ out:
return ret;
}
+EXPORT_SYMBOL(sys_io_setup);
+
/* sys_io_destroy:
* Destroy the aio_context specified. May cancel any outstanding
* AIOs and block on completion. Will fail with -ENOSYS if not
@@ -1321,6 +1323,8 @@ SYSCALL_DEFINE1(io_destroy, aio_context_
return -EINVAL;
}
+EXPORT_SYMBOL(sys_io_destroy);
+
static void aio_advance_iovec(struct kiocb *iocb, ssize_t ret)
{
struct iovec *iov = &iocb->ki_iovec[iocb->ki_cur_seg];
@@ -1927,6 +1931,8 @@ SYSCALL_DEFINE3(io_submit, aio_context_t
return do_io_submit(ctx_id, nr, iocbpp, 0);
}
+EXPORT_SYMBOL(sys_io_submit);
+
/* lookup_kiocb
* Finds a given iocb for cancellation.
*/
@@ -2006,6 +2012,8 @@ SYSCALL_DEFINE3(io_cancel, aio_context_t
return ret;
}
+EXPORT_SYMBOL(sys_io_cancel);
+
/* io_getevents:
* Attempts to read at least min_nr events and up to nr events from
* the completion queue for the aio_context specified by ctx_id. May
@@ -2036,3 +2044,5 @@ SYSCALL_DEFINE5(io_getevents, aio_contex
asmlinkage_protect(5, ret, ctx_id, min_nr, nr, events, timeout);
return ret;
}
+
+EXPORT_SYMBOL(sys_io_getevents);
diff -urpN source.rhel6//fs/open.c source/fs/open.c
--- source.rhel6//fs/open.c 2012-11-21 12:24:38.097579412 +0100
+++ source/fs/open.c 2012-11-21 16:16:34.083206503 +0100
@@ -611,6 +611,8 @@ out:
return error;
}
+EXPORT_SYMBOL(sys_lchown);
+
SYSCALL_DEFINE3(fchown, unsigned int, fd, uid_t, user, gid_t, group)
{
struct file * file;
diff -urpN source.rhel6//fs/utimes.c source/fs/utimes.c
--- source.rhel6//fs/utimes.c 2012-11-21 12:24:38.249580405 +0100
+++ source/fs/utimes.c 2012-11-21 16:20:22.144720576 +0100
@@ -1,3 +1,4 @@
+#include <linux/module.h>
#include <linux/compiler.h>
#include <linux/file.h>
#include <linux/fs.h>
@@ -184,6 +185,8 @@ out:
return error;
}
+EXPORT_SYMBOL(do_utimes);
+
SYSCALL_DEFINE4(utimensat, int, dfd, char __user *, filename,
struct timespec __user *, utimes, int, flags)
{
diff -urpN source.rhel6//include/linux/major.h source/include/linux/major.h
--- source.rhel6//include/linux/major.h 2012-11-21 12:24:38.717583463 +0100
+++ source/include/linux/major.h 2012-11-21 16:21:14.865066525 +0100
@@ -146,6 +146,7 @@
#define UNIX98_PTY_SLAVE_MAJOR (UNIX98_PTY_MASTER_MAJOR+UNIX98_PTY_MAJOR_COUNT)
#define DRBD_MAJOR 147
+#define MARS_MAJOR 148
#define RTF_MAJOR 150
#define RAW_MAJOR 162
diff -urpN source.rhel6//include/linux/sched.h source/include/linux/sched.h
--- source.rhel6//include/linux/sched.h 2012-11-21 12:24:38.953585006 +0100
+++ source/include/linux/sched.h 2012-11-21 16:22:31.845571806 +0100
@@ -1532,6 +1532,9 @@ struct task_struct {
/* mutex deadlock detection */
struct mutex_waiter *blocked_on;
#endif
+#ifdef CONFIG_DEBUG_SPINLOCK
+ atomic_t lock_count;
+#endif
#ifdef CONFIG_TRACE_IRQFLAGS
unsigned int irq_events;
int hardirqs_enabled;
diff -urpN source.rhel6//lib/debug_locks.c source/lib/debug_locks.c
--- source.rhel6//lib/debug_locks.c 2012-11-21 12:24:39.849590860 +0100
+++ source/lib/debug_locks.c 2012-11-21 16:24:06.234191565 +0100
@@ -44,3 +44,5 @@ int debug_locks_off(void)
}
return 0;
}
+
+EXPORT_SYMBOL(debug_locks_off);
diff -urpN source.rhel6//mm/init-mm.c source/mm/init-mm.c
--- source.rhel6//mm/init-mm.c 2012-11-21 12:24:39.929591383 +0100
+++ source/mm/init-mm.c 2012-11-21 16:25:35.382777139 +0100
@@ -5,6 +5,7 @@
#include <linux/list.h>
#include <linux/cpumask.h>
#include <linux/module.h>
+#include <linux/sched.h>
#include <asm/atomic.h>
#include <asm/pgtable.h>
@@ -18,5 +19,10 @@ struct mm_struct init_mm = {
.page_table_lock = __SPIN_LOCK_UNLOCKED(init_mm.page_table_lock),
.mmlist = LIST_HEAD_INIT(init_mm.mmlist),
.cpu_vm_mask = CPU_MASK_ALL,
+#ifdef CONFIG_AIO
+ .ioctx_lock = __SPIN_LOCK_UNLOCKED(init_mm.ioctx_lock),
+ .ioctx_list = HLIST_HEAD_INIT,
+ .get_unmapped_area = arch_get_unmapped_area,
+#endif
};
EXPORT_SYMBOL(init_mm);
diff -urpN source.rhel6//mm/mmu_context.c source/mm/mmu_context.c
--- source.rhel6//mm/mmu_context.c 2012-11-21 12:24:39.969591645 +0100
+++ source/mm/mmu_context.c 2012-11-21 16:26:42.839220361 +0100
@@ -7,6 +7,7 @@
#include <linux/mmu_context.h>
#include <linux/module.h>
#include <linux/sched.h>
+#include <linux/module.h>
#include <asm/mmu_context.h>
diff -urpN source.rhel6//mm/page_alloc.c source/mm/page_alloc.c
--- source.rhel6//mm/page_alloc.c 2012-11-21 12:24:39.985591749 +0100
+++ source/mm/page_alloc.c 2012-11-21 16:29:13.160208474 +0100
@@ -168,6 +168,7 @@ static char * const zone_names[MAX_NR_ZO
* tuned according to the amount of memory in the system.
*/
int min_free_kbytes = 1024;
+EXPORT_SYMBOL(min_free_kbytes);
/*
* Extra memory for the system to try freeing between the min and
@@ -5125,6 +5126,8 @@ void setup_per_zone_wmarks(void)
calculate_totalreserve_pages();
}
+EXPORT_SYMBOL(setup_per_zone_wmarks);
+
/*
* The inactive anon list should be small enough that the VM never has to
* do too much work, but large enough that each inactive page has a chance