[packages/kernel] - partially updated vserver patch for 3.15
baggins
baggins at pld-linux.org
Tue Jun 24 01:12:38 CEST 2014
commit 265de2f71f071ef11d26ae3dd6c79c193315b603
Author: Jan Rękorajski <baggins at pld-linux.org>
Date: Tue Jun 24 00:10:47 2014 +0200
- partially updated vserver patch for 3.15
kernel-vserver-2.3.patch | 78 +++++++++++++++++++++++-------------------------
1 file changed, 37 insertions(+), 41 deletions(-)
---
diff --git a/kernel-vserver-2.3.patch b/kernel-vserver-2.3.patch
index 950b7b5..d740681 100644
--- a/kernel-vserver-2.3.patch
+++ b/kernel-vserver-2.3.patch
@@ -569,14 +569,14 @@ diff -NurpP --minimal linux-3.13.10/arch/s390/kernel/syscalls.S linux-3.13.10-vs
--- linux-3.13.10/arch/s390/kernel/syscalls.S 2013-07-14 17:00:34.000000000 +0000
+++ linux-3.13.10-vs2.3.6.11/arch/s390/kernel/syscalls.S 2014-01-31 20:38:03.000000000 +0000
@@ -271,7 +271,7 @@ SYSCALL(sys_clock_settime,sys_clock_sett
- SYSCALL(sys_clock_gettime,sys_clock_gettime,sys32_clock_gettime_wrapper) /* 260 */
- SYSCALL(sys_clock_getres,sys_clock_getres,sys32_clock_getres_wrapper)
- SYSCALL(sys_clock_nanosleep,sys_clock_nanosleep,sys32_clock_nanosleep_wrapper)
+ SYSCALL(sys_clock_gettime,sys_clock_gettime,compat_sys_clock_gettime) /* 260 */
+ SYSCALL(sys_clock_getres,sys_clock_getres,compat_sys_clock_getres)
+ SYSCALL(sys_clock_nanosleep,sys_clock_nanosleep,compat_sys_clock_nanosleep)
-NI_SYSCALL /* reserved for vserver */
+SYSCALL(sys_vserver,sys_vserver,sys32_vserver)
- SYSCALL(sys_s390_fadvise64_64,sys_ni_syscall,sys32_fadvise64_64_wrapper)
- SYSCALL(sys_statfs64,sys_statfs64,compat_sys_statfs64_wrapper)
- SYSCALL(sys_fstatfs64,sys_fstatfs64,compat_sys_fstatfs64_wrapper)
+ SYSCALL(sys_s390_fadvise64_64,sys_ni_syscall,compat_sys_s390_fadvise64_64)
+ SYSCALL(sys_statfs64,sys_statfs64,compat_sys_statfs64)
+ SYSCALL(sys_fstatfs64,sys_fstatfs64,compat_sys_fstatfs64)
diff -NurpP --minimal linux-3.13.10/arch/sh/Kconfig linux-3.13.10-vs2.3.6.11/arch/sh/Kconfig
--- linux-3.13.10/arch/sh/Kconfig 2014-01-22 20:38:24.000000000 +0000
+++ linux-3.13.10-vs2.3.6.11/arch/sh/Kconfig 2014-01-31 20:38:03.000000000 +0000
@@ -3309,9 +3309,9 @@ diff -NurpP --minimal linux-3.13.10/fs/file_table.c linux-3.13.10-vs2.3.6.11/fs/
over:
@@ -254,6 +258,8 @@ static void __fput(struct file *file)
- i_readcount_dec(inode);
- if (file->f_mode & FMODE_WRITE)
- drop_file_write_access(file);
+ put_write_access(inode);
+ __mnt_drop_write(mnt);
+ }
+ vx_files_dec(file);
+ file->f_xid = 0;
file->f_path.dentry = NULL;
@@ -4507,7 +4507,7 @@ diff -NurpP --minimal linux-3.13.10/fs/namei.c linux-3.13.10-vs2.3.6.11/fs/namei
return -EPERM;
if (!dir->i_op->link)
return -EPERM;
-@@ -4305,6 +4449,287 @@ int generic_readlink(struct dentry *dent
+@@ -4305,6 +4449,288 @@ int generic_readlink(struct dentry *dent
return res;
}
@@ -4791,15 +4791,11 @@ diff -NurpP --minimal linux-3.13.10/fs/namei.c linux-3.13.10-vs2.3.6.11/fs/namei
+ kfree(pstr);
+ return length;
+}
++EXPORT_SYMBOL(vx_info_mnt_namespace);
+
/* get the link contents into pagecache */
static char *page_getlink(struct dentry * dentry, struct page **ppage)
{
-@@ -4427,3 +4852,4 @@ EXPORT_SYMBOL(vfs_symlink);
- EXPORT_SYMBOL(vfs_unlink);
- EXPORT_SYMBOL(dentry_unhash);
- EXPORT_SYMBOL(generic_readlink);
-+EXPORT_SYMBOL(vx_info_mnt_namespace);
diff -NurpP --minimal linux-3.13.10/fs/namespace.c linux-3.13.10-vs2.3.6.11/fs/namespace.c
--- linux-3.13.10/fs/namespace.c 2014-04-17 01:12:32.000000000 +0000
+++ linux-3.13.10-vs2.3.6.11/fs/namespace.c 2014-04-17 01:18:37.000000000 +0000
@@ -5735,9 +5731,9 @@ diff -NurpP --minimal linux-3.13.10/fs/ocfs2/namei.c linux-3.13.10-vs2.3.6.11/fs
#include <cluster/masklog.h>
@@ -475,6 +476,7 @@ static int __ocfs2_mknod_locked(struct i
- struct ocfs2_dinode *fe = NULL;
struct ocfs2_extent_list *fel;
u16 feat;
+ struct ocfs2_inode_info *oi = OCFS2_I(inode);
+ ktag_t ktag;
*new_fe_bh = NULL;
@@ -6448,7 +6444,7 @@ diff -NurpP --minimal linux-3.13.10/fs/proc/stat.c linux-3.13.10-vs2.3.6.11/fs/p
#include <linux/time.h>
#include <linux/irqnr.h>
+#include <linux/vserver/cvirt.h>
- #include <asm/cputime.h>
+ #include <linux/cputime.h>
#include <linux/tick.h>
+#include <linux/cpuset.h>
@@ -6499,7 +6495,7 @@ diff -NurpP --minimal linux-3.13.10/fs/proc/uptime.c linux-3.13.10-vs2.3.6.11/fs
#include <linux/time.h>
#include <linux/kernel_stat.h>
+#include <linux/vserver/cvirt.h>
- #include <asm/cputime.h>
+ #include <linux/cputime.h>
static int uptime_proc_show(struct seq_file *m, void *v)
@@ -24,6 +25,10 @@ static int uptime_proc_show(struct seq_f
@@ -12937,9 +12933,9 @@ diff -NurpP --minimal linux-3.13.10/init/Kconfig linux-3.13.10-vs2.3.6.11/init/K
--- linux-3.13.10/init/Kconfig 2014-04-17 01:12:39.000000000 +0000
+++ linux-3.13.10-vs2.3.6.11/init/Kconfig 2014-04-17 01:17:11.000000000 +0000
@@ -855,6 +855,7 @@ config NUMA_BALANCING
-
menuconfig CGROUPS
boolean "Control Group support"
+ select KERNFS
+ default y
help
This option adds support for grouping sets of processes together, for
@@ -13405,9 +13401,9 @@ diff -NurpP --minimal linux-3.13.10/kernel/fork.c linux-3.13.10-vs2.3.6.11/kerne
--- linux-3.13.10/kernel/fork.c 2014-01-22 20:39:13.000000000 +0000
+++ linux-3.13.10-vs2.3.6.11/kernel/fork.c 2014-01-31 20:38:03.000000000 +0000
@@ -71,6 +71,9 @@
- #include <linux/signalfd.h>
#include <linux/uprobes.h>
#include <linux/aio.h>
+ #include <linux/compiler.h>
+#include <linux/vs_context.h>
+#include <linux/vs_network.h>
+#include <linux/vs_limit.h>
@@ -13946,9 +13942,9 @@ diff -NurpP --minimal linux-3.13.10/kernel/sched/core.c linux-3.13.10-vs2.3.6.11
--- linux-3.13.10/kernel/sched/core.c 2014-04-17 01:12:39.000000000 +0000
+++ linux-3.13.10-vs2.3.6.11/kernel/sched/core.c 2014-02-25 11:26:10.000000000 +0000
@@ -73,6 +73,8 @@
- #include <linux/init_task.h>
#include <linux/binfmts.h>
#include <linux/context_tracking.h>
+ #include <linux/compiler.h>
+#include <linux/vs_sched.h>
+#include <linux/vs_cvirt.h>
@@ -13974,7 +13970,20 @@ diff -NurpP --minimal linux-3.13.10/kernel/sched/cputime.c linux-3.13.10-vs2.3.6
#include "sched.h"
-@@ -135,14 +136,17 @@ static inline void task_group_account_fi
+@@ -189,9 +193,12 @@ static inline
+ void __account_system_time(struct task_struct *p, cputime_t cputime,
+ cputime_t cputime_scaled, int index)
+ {
++ struct vx_info *vxi = p->vx_info; /* p is _always_ current */
++
+ /* Add system time to process. */
+ p->stime += cputime;
+ p->stimescaled += cputime_scaled;
++ vx_account_system(vxi, cputime, 0 /* do we have idle time? */);
+ account_group_system_time(p, cputime);
+
+ /* Add system time to cpustat. */
+@@ -215,14 +216,17 @@ static inline void task_group_account_fi
void account_user_time(struct task_struct *p, cputime_t cputime,
cputime_t cputime_scaled)
{
@@ -13993,19 +14002,6 @@ diff -NurpP --minimal linux-3.13.10/kernel/sched/cputime.c linux-3.13.10-vs2.3.6
/* Add user time to cpustat. */
task_group_account_field(p, index, (__force u64) cputime);
-@@ -189,9 +193,12 @@ static inline
- void __account_system_time(struct task_struct *p, cputime_t cputime,
- cputime_t cputime_scaled, int index)
- {
-+ struct vx_info *vxi = p->vx_info; /* p is _always_ current */
-+
- /* Add system time to process. */
- p->stime += cputime;
- p->stimescaled += cputime_scaled;
-+ vx_account_system(vxi, cputime, 0 /* do we have idle time? */);
- account_group_system_time(p, cputime);
-
- /* Add system time to cpustat. */
diff -NurpP --minimal linux-3.13.10/kernel/sched/fair.c linux-3.13.10-vs2.3.6.11/kernel/sched/fair.c
--- linux-3.13.10/kernel/sched/fair.c 2014-04-17 01:12:40.000000000 +0000
+++ linux-3.13.10-vs2.3.6.11/kernel/sched/fair.c 2014-04-17 01:17:11.000000000 +0000
@@ -14063,14 +14059,14 @@ diff -NurpP --minimal linux-3.13.10/kernel/signal.c linux-3.13.10-vs2.3.6.11/ker
--- linux-3.13.10/kernel/signal.c 2014-01-22 20:39:13.000000000 +0000
+++ linux-3.13.10-vs2.3.6.11/kernel/signal.c 2014-01-31 20:38:03.000000000 +0000
@@ -33,6 +33,8 @@
- #include <linux/uprobes.h>
#include <linux/compat.h>
#include <linux/cn_proc.h>
+ #include <linux/compiler.h>
+#include <linux/vs_context.h>
+#include <linux/vs_pid.h>
+
#define CREATE_TRACE_POINTS
#include <trace/events/signal.h>
-
@@ -790,9 +792,18 @@ static int check_kill_permission(int sig
struct pid *sid;
int error;
@@ -14158,9 +14154,9 @@ diff -NurpP --minimal linux-3.13.10/kernel/softirq.c linux-3.13.10-vs2.3.6.11/ke
--- linux-3.13.10/kernel/softirq.c 2014-01-22 20:39:13.000000000 +0000
+++ linux-3.13.10-vs2.3.6.11/kernel/softirq.c 2014-01-31 20:38:03.000000000 +0000
@@ -23,6 +23,7 @@
- #include <linux/smp.h>
#include <linux/smpboot.h>
#include <linux/tick.h>
+ #include <linux/irq.h>
+#include <linux/vs_context.h>
#define CREATE_TRACE_POINTS
@@ -14285,9 +14281,9 @@ diff -NurpP --minimal linux-3.13.10/kernel/time/timekeeping.c linux-3.13.10-vs2.
--- linux-3.13.10/kernel/time/timekeeping.c 2014-04-17 01:12:40.000000000 +0000
+++ linux-3.13.10-vs2.3.6.11/kernel/time/timekeeping.c 2014-02-25 11:26:10.000000000 +0000
@@ -22,6 +22,7 @@
- #include <linux/tick.h>
#include <linux/stop_machine.h>
#include <linux/pvclock_gtod.h>
+ #include <linux/compiler.h>
+#include <linux/vs_time.h>
#include "tick-internal.h"
@@ -22987,7 +22983,7 @@ diff -NurpP --minimal linux-3.13.10/mm/memcontrol.c linux-3.13.10-vs2.3.6.11/mm/
--- linux-3.13.10/mm/memcontrol.c 2014-04-17 01:12:40.000000000 +0000
+++ linux-3.13.10-vs2.3.6.11/mm/memcontrol.c 2014-04-17 01:17:11.000000000 +0000
@@ -1056,6 +1056,31 @@ struct mem_cgroup *mem_cgroup_from_task(
- return mem_cgroup_from_css(task_css(p, mem_cgroup_subsys_id));
+ return mem_cgroup_from_css(task_css(p, memory_cgrp_id));
}
+u64 mem_cgroup_res_read_u64(struct mem_cgroup *mem, int member)
@@ -23015,7 +23011,7 @@ diff -NurpP --minimal linux-3.13.10/mm/memcontrol.c linux-3.13.10-vs2.3.6.11/mm/
+ return mem_cgroup_read_stat(mem, MEM_CGROUP_STAT_FILE_MAPPED);
+}
+
- struct mem_cgroup *try_get_mem_cgroup_from_mm(struct mm_struct *mm)
+ static struct mem_cgroup *get_mem_cgroup_from_mm(struct mm_struct *mm)
{
struct mem_cgroup *memcg = NULL;
diff -NurpP --minimal linux-3.13.10/mm/oom_kill.c linux-3.13.10-vs2.3.6.11/mm/oom_kill.c
================================================================
---- gitweb:
http://git.pld-linux.org/gitweb.cgi/packages/kernel.git/commitdiff/52c5f3093582a20a75c9b2d0f4d103e697992917
More information about the pld-cvs-commit
mailing list