rpms/kernel/devel .cvsignore, 1.569, 1.570 kernel-2.6.spec, 1.2933, 1.2934 linux-2.6-execshield.patch, 1.49, 1.50 linux-2.6-silence-noise.patch, 1.4, 1.5 linux-2.6-utrace.patch, 1.51, 1.52 sources, 1.532, 1.533 upstream, 1.460, 1.461
fedora-cvs-commits at redhat.com
fedora-cvs-commits at redhat.com
Sun Feb 18 02:53:00 UTC 2007
Author: davej
Update of /cvs/dist/rpms/kernel/devel
In directory cvs.devel.redhat.com:/tmp/cvs-serv28079
Modified Files:
.cvsignore kernel-2.6.spec linux-2.6-execshield.patch
linux-2.6-silence-noise.patch linux-2.6-utrace.patch sources
upstream
Log Message:
* Sat Feb 17 2007 Dave Jones <davej at redhat.com>
- 2.6.20-git14 (Now tickless).
Index: .cvsignore
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/.cvsignore,v
retrieving revision 1.569
retrieving revision 1.570
diff -u -r1.569 -r1.570
--- .cvsignore 14 Feb 2007 18:50:18 -0000 1.569
+++ .cvsignore 18 Feb 2007 02:52:57 -0000 1.570
@@ -5,3 +5,4 @@
xen-11633.tar.bz2
linux-2.6.20.tar.bz2
patch-2.6.20-git10.bz2
+patch-2.6.20-git14.bz2
Index: kernel-2.6.spec
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/kernel-2.6.spec,v
retrieving revision 1.2933
retrieving revision 1.2934
diff -u -r1.2933 -r1.2934
--- kernel-2.6.spec 16 Feb 2007 20:23:03 -0000 1.2933
+++ kernel-2.6.spec 18 Feb 2007 02:52:57 -0000 1.2934
@@ -297,7 +297,7 @@
#
# Patches 0 through 100 are meant for core subsystem upgrades
#
-Patch1: patch-2.6.20-git10.bz2
+Patch1: patch-2.6.20-git14.bz2
Patch3: git-geode.patch
# Patches 10 through 99 are for things that are going upstream really soon.
@@ -2019,6 +2019,9 @@
# - tux.
%changelog
+* Sat Feb 17 2007 Dave Jones <davej at redhat.com>
+- 2.6.20-git14 (Now tickless).
+
* Wed Feb 14 2007 Adam Jackson <ajax at redhat.com>
- nouveau drm
linux-2.6-execshield.patch:
linux-2.6.19.noarch/drivers/char/random.c | 8 +
linux-2.6.19.noarch/include/asm-i386/desc.h | 14 ++
linux-2.6.19.noarch/include/asm-i386/elf.h | 6 +
linux-2.6.20.noarch/arch/i386/kernel/smp.c | 3
linux-2.6/arch/i386/kernel/cpu/common.c | 7 +
linux-2.6/arch/i386/kernel/process.c | 59 ++++++++++++
linux-2.6/arch/i386/kernel/sysenter.c | 6 -
linux-2.6/arch/i386/kernel/traps.c | 93 +++++++++++++++++++
linux-2.6/arch/i386/mm/init.c | 6 +
linux-2.6/arch/i386/mm/mmap.c | 6 -
linux-2.6/arch/i386/mm/pageattr.c | 8 +
linux-2.6/arch/ia64/ia32/binfmt_elf32.c | 2
linux-2.6/arch/powerpc/kernel/vdso.c | 3
linux-2.6/arch/x86_64/ia32/ia32_binfmt.c | 6 -
linux-2.6/arch/x86_64/ia32/syscall32.c | 4
linux-2.6/arch/x86_64/kernel/process.c | 6 -
linux-2.6/arch/x86_64/kernel/setup64.c | 40 --------
linux-2.6/arch/x86_64/mm/fault.c | 2
linux-2.6/arch/x86_64/mm/mmap.c | 98 ++++++++++++++++----
linux-2.6/fs/binfmt_elf.c | 131 ++++++++++++++++++++++------
linux-2.6/fs/proc/array.c | 8 +
linux-2.6/fs/proc/base.c | 8 -
linux-2.6/fs/proc/task_mmu.c | 29 +++++-
linux-2.6/include/asm-i386/a.out.h | 2
linux-2.6/include/asm-i386/mmu.h | 4
linux-2.6/include/asm-i386/pgalloc.h | 1
linux-2.6/include/asm-i386/processor.h | 8 +
linux-2.6/include/asm-ia64/pgalloc.h | 4
linux-2.6/include/asm-powerpc/elf.h | 3
linux-2.6/include/asm-powerpc/pgalloc.h | 5 +
linux-2.6/include/asm-ppc/pgalloc.h | 5 +
linux-2.6/include/asm-s390/pgalloc.h | 4
linux-2.6/include/asm-sparc/pgalloc.h | 4
linux-2.6/include/asm-sparc64/pgalloc.h | 4
linux-2.6/include/asm-x86_64/pgalloc.h | 7 +
linux-2.6/include/linux/mm.h | 11 +-
linux-2.6/include/linux/resource.h | 5 -
linux-2.6/include/linux/sched.h | 9 +
linux-2.6/include/linux/sysctl.h | 2
linux-2.6/kernel/signal.c | 33 +++++++
linux-2.6/kernel/sysctl.c | 36 +++++++
linux-2.6/mm/mmap.c | 105 ++++++++++++++++++++--
linux-2.6/mm/mprotect.c | 6 +
linux-2.6/mm/mremap.c | 4
44 files changed, 677 insertions(+), 138 deletions(-)
Index: linux-2.6-execshield.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/linux-2.6-execshield.patch,v
retrieving revision 1.49
retrieving revision 1.50
diff -u -r1.49 -r1.50
--- linux-2.6-execshield.patch 30 Jan 2007 14:50:14 -0000 1.49
+++ linux-2.6-execshield.patch 18 Feb 2007 02:52:58 -0000 1.50
@@ -90,14 +90,12 @@
+ current->mm->brk = new_brk;
+}
+
-Index: linux-2.6/arch/i386/kernel/smp.c
-===================================================================
---- linux-2.6.orig/arch/i386/kernel/smp.c
-+++ linux-2.6/arch/i386/kernel/smp.c
-@@ -23,6 +23,7 @@
-
+--- linux-2.6.20.noarch/arch/i386/kernel/smp.c~ 2007-02-17 21:43:47.000000000 -0500
++++ linux-2.6.20.noarch/arch/i386/kernel/smp.c 2007-02-17 21:43:53.000000000 -0500
+@@ -24,6 +24,7 @@
#include <asm/mtrr.h>
#include <asm/tlbflush.h>
+ #include <asm/idle.h>
+#include <asm/desc.h>
#include <mach_apic.h>
linux-2.6-silence-noise.patch:
linux-2.6.18.noarch/arch/x86_64/mm/init.c | 4 ----
linux-2.6.18.noarch/drivers/pci/setup-res.c | 4 ++--
linux-2.6.19.noarch/arch/i386/pci/i386.c | 4 ++--
3 files changed, 4 insertions(+), 8 deletions(-)
Index: linux-2.6-silence-noise.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/linux-2.6-silence-noise.patch,v
retrieving revision 1.4
retrieving revision 1.5
diff -u -r1.4 -r1.5
--- linux-2.6-silence-noise.patch 14 Feb 2007 18:26:48 -0000 1.4
+++ linux-2.6-silence-noise.patch 18 Feb 2007 02:52:58 -0000 1.5
@@ -1,17 +1,3 @@
---- linux-2.6.20.noarch/arch/x86_64/pci/mmconfig.c~ 2007-02-14 12:05:33.000000000 -0500
-+++ linux-2.6.20.noarch/arch/x86_64/pci/mmconfig.c 2007-02-14 12:05:47.000000000 -0500
-@@ -181,9 +181,9 @@ void __init pci_mmcfg_init(int type)
- if (type == 1 && !e820_all_mapped(pci_mmcfg_config[0].address,
- pci_mmcfg_config[0].address + MMCONFIG_APER_MIN,
- E820_RESERVED)) {
-- printk(KERN_ERR "PCI: BIOS Bug: MCFG area at %lx is not E820-reserved\n",
-+ printk(KERN_INFO "PCI: BIOS Bug: MCFG area at %lx is not E820-reserved\n",
- (unsigned long)pci_mmcfg_config[0].address);
-- printk(KERN_ERR "PCI: Not using MMCONFIG.\n");
-+ printk(KERN_INFO "PCI: Not using MMCONFIG.\n");
- return;
- }
-
--- linux-2.6.18.noarch/arch/x86_64/mm/init.c~ 2006-10-16 17:09:56.000000000 -0400
+++ linux-2.6.18.noarch/arch/x86_64/mm/init.c 2006-10-16 17:10:09.000000000 -0400
@@ -337,10 +337,6 @@ static void __init find_early_table_spac
linux-2.6-utrace.patch:
Documentation/utrace.txt | 579 +++++++++++
arch/alpha/kernel/asm-offsets.c | 2
arch/alpha/kernel/entry.S | 4
arch/arm/kernel/ptrace.c | 36
arch/arm26/kernel/ptrace.c | 32
arch/frv/kernel/ptrace.c | 15
arch/i386/kernel/entry.S | 7
arch/i386/kernel/i387.c | 143 +-
arch/i386/kernel/process.c | 3
arch/i386/kernel/ptrace.c | 864 +++++++++-------
arch/i386/kernel/signal.c | 37
arch/i386/kernel/vm86.c | 7
arch/i386/math-emu/fpu_entry.c | 6
arch/ia64/ia32/ia32_entry.S | 2
arch/ia64/ia32/sys_ia32.c | 537 +++++++++-
arch/ia64/kernel/asm-offsets.c | 2
arch/ia64/kernel/fsys.S | 16
arch/ia64/kernel/mca.c | 2
arch/ia64/kernel/ptrace.c | 1701 ++++++++++++++++----------------
arch/ia64/kernel/signal.c | 4
arch/mips/kernel/ptrace.c | 21
arch/mips/kernel/sysirix.c | 2
arch/powerpc/kernel/Makefile | 4
arch/powerpc/kernel/asm-offsets.c | 2
arch/powerpc/kernel/process.c | 5
arch/powerpc/kernel/ptrace-common.h | 161 ---
arch/powerpc/kernel/ptrace.c | 959 +++++++++++-------
arch/powerpc/kernel/ptrace32.c | 436 --------
arch/powerpc/kernel/signal_32.c | 55 +
arch/powerpc/kernel/signal_64.c | 3
arch/powerpc/kernel/sys_ppc32.c | 5
arch/powerpc/lib/sstep.c | 3
arch/ppc/kernel/asm-offsets.c | 2
arch/s390/kernel/Makefile | 2
arch/s390/kernel/compat_linux.c | 3
arch/s390/kernel/compat_signal.c | 5
arch/s390/kernel/compat_wrapper.S | 2
arch/s390/kernel/process.c | 3
arch/s390/kernel/ptrace.c | 1120 ++++++++++-----------
arch/s390/kernel/signal.c | 3
arch/s390/kernel/traps.c | 6
arch/sparc64/kernel/Makefile | 2
arch/sparc64/kernel/binfmt_aout32.c | 2
arch/sparc64/kernel/entry.S | 6
arch/sparc64/kernel/process.c | 3
arch/sparc64/kernel/ptrace.c | 1224 ++++++++++++-----------
arch/sparc64/kernel/signal.c | 2
arch/sparc64/kernel/signal32.c | 2
arch/sparc64/kernel/sys_sparc32.c | 3
arch/sparc64/kernel/systbls.S | 4
arch/x86_64/ia32/fpu32.c | 92 +
arch/x86_64/ia32/ia32_aout.c | 6
arch/x86_64/ia32/ia32_signal.c | 7
arch/x86_64/ia32/ia32entry.S | 2
arch/x86_64/ia32/ptrace32.c | 725 +++++++++----
arch/x86_64/ia32/sys_ia32.c | 5
arch/x86_64/kernel/process.c | 5
arch/x86_64/kernel/ptrace.c | 665 +++++++-----
arch/x86_64/kernel/signal.c | 28
arch/x86_64/kernel/traps.c | 8
arch/x86_64/mm/fault.c | 4
drivers/connector/cn_proc.c | 4
fs/binfmt_aout.c | 6
fs/binfmt_elf.c | 6
fs/binfmt_elf_fdpic.c | 7
fs/binfmt_flat.c | 3
fs/binfmt_som.c | 2
fs/exec.c | 11
fs/proc/array.c | 12
fs/proc/base.c | 57 -
include/asm-i386/i387.h | 13
include/asm-i386/signal.h | 4
include/asm-i386/thread_info.h | 7
include/asm-i386/tracehook.h | 57 +
include/asm-ia64/elf.h | 24
include/asm-ia64/tracehook.h | 89 +
include/asm-powerpc/tracehook.h | 88 +
include/asm-s390/tracehook.h | 61 +
include/asm-sparc64/tracehook.h | 52 +
include/asm-x86_64/fpu32.h | 3
include/asm-x86_64/thread_info.h | 3
include/asm-x86_64/tracehook.h | 61 +
include/linux/init_task.h | 3
include/linux/ptrace.h | 235 +++-
include/linux/sched.h | 25
include/linux/tracehook.h | 715 +++++++++++++
include/linux/utrace.h | 510 +++++++++
init/Kconfig | 29
kernel/Makefile | 4
kernel/exit.c | 238 +---
kernel/fork.c | 61 -
kernel/ptrace.c | 1747 +++++++++++++++++++++++++++------
kernel/signal.c | 211 ----
kernel/sys.c | 2
kernel/sys_ni.c | 4
kernel/timer.c | 6
kernel/tsacct.c | 2
kernel/utrace.c | 1871 ++++++++++++++++++++++++++++++++++++
security/selinux/hooks.c | 54 -
security/selinux/include/objsec.h | 1
100 files changed, 10793 insertions(+), 5091 deletions(-)
Index: linux-2.6-utrace.patch
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/linux-2.6-utrace.patch,v
retrieving revision 1.51
retrieving revision 1.52
diff -u -r1.51 -r1.52
--- linux-2.6-utrace.patch 14 Feb 2007 18:26:48 -0000 1.51
+++ linux-2.6-utrace.patch 18 Feb 2007 02:52:58 -0000 1.52
@@ -2750,7 +2750,7 @@
task->security = tsec;
return 0;
-@@ -1367,19 +1367,13 @@ static inline u32 file_to_av(struct file
+@@ -1370,19 +1370,13 @@ static inline u32 file_to_av(struct file
static int selinux_ptrace(struct task_struct *parent, struct task_struct *child)
{
@@ -2771,7 +2771,7 @@
}
static int selinux_capget(struct task_struct *target, kernel_cap_t *effective,
-@@ -1808,12 +1802,24 @@ static void selinux_bprm_apply_creds(str
+@@ -1852,12 +1846,24 @@ static void selinux_bprm_apply_creds(str
/* Check for ptracing, and update the task SID if ok.
Otherwise, leave SID unchanged and kill. */
if (unsafe & (LSM_UNSAFE_PTRACE | LSM_UNSAFE_PTRACE_CAP)) {
@@ -2802,7 +2802,7 @@
}
}
tsec->sid = sid;
-@@ -2707,11 +2713,6 @@ static int selinux_task_alloc_security(s
+@@ -2751,11 +2757,6 @@ static int selinux_task_alloc_security(s
tsec2->keycreate_sid = tsec1->keycreate_sid;
tsec2->sockcreate_sid = tsec1->sockcreate_sid;
@@ -2814,7 +2814,7 @@
return 0;
}
-@@ -4463,6 +4464,7 @@ static int selinux_setprocattr(struct ta
+@@ -4507,6 +4508,7 @@ static int selinux_setprocattr(struct ta
char *name, void *value, size_t size)
{
struct task_security_struct *tsec;
@@ -2822,7 +2822,7 @@
u32 sid = 0;
int error;
char *str = value;
-@@ -4551,18 +4553,24 @@ static int selinux_setprocattr(struct ta
+@@ -4595,18 +4597,24 @@ static int selinux_setprocattr(struct ta
/* Check for ptracing, and update the task SID if ok.
Otherwise, leave SID unchanged and fail. */
task_lock(p);
@@ -3050,7 +3050,7 @@
set_tsk_thread_flag(t, TIF_SIGPENDING);
else
clear_tsk_thread_flag(t, TIF_SIGPENDING);
-@@ -598,8 +597,6 @@ static int check_kill_permission(int sig
+@@ -622,8 +621,6 @@ static int check_kill_permission(int sig
return error;
}
@@ -3059,7 +3059,7 @@
/*
* Handle magic process-wide effects of stop/continue signals.
-@@ -905,7 +902,7 @@ __group_complete_signal(int sig, struct
+@@ -929,7 +926,7 @@ __group_complete_signal(int sig, struct
*/
if (sig_fatal(p, sig) && !(p->signal->flags & SIGNAL_GROUP_EXIT) &&
!sigismember(&t->real_blocked, sig) &&
@@ -3068,7 +3068,7 @@
/*
* This signal will be fatal to the whole group.
*/
-@@ -1460,8 +1457,7 @@ void do_notify_parent(struct task_struct
+@@ -1484,8 +1481,7 @@ void do_notify_parent(struct task_struct
/* do_notify_parent_cldstop should have been called instead. */
BUG_ON(tsk->state & (TASK_STOPPED|TASK_TRACED));
@@ -3078,7 +3078,7 @@
info.si_signo = sig;
info.si_errno = 0;
-@@ -1486,7 +1482,7 @@ void do_notify_parent(struct task_struct
+@@ -1510,7 +1506,7 @@ void do_notify_parent(struct task_struct
psig = tsk->parent->sighand;
spin_lock_irqsave(&psig->siglock, flags);
@@ -3087,7 +3087,7 @@
(psig->action[SIGCHLD-1].sa.sa_handler == SIG_IGN ||
(psig->action[SIGCHLD-1].sa.sa_flags & SA_NOCLDWAIT))) {
/*
-@@ -1514,20 +1510,13 @@ void do_notify_parent(struct task_struct
+@@ -1538,20 +1534,13 @@ void do_notify_parent(struct task_struct
spin_unlock_irqrestore(&psig->siglock, flags);
}
@@ -3109,7 +3109,7 @@
info.si_signo = SIGCHLD;
info.si_errno = 0;
info.si_pid = tsk->pid;
-@@ -1552,6 +1541,15 @@ static void do_notify_parent_cldstop(str
+@@ -1576,6 +1565,15 @@ static void do_notify_parent_cldstop(str
BUG();
}
@@ -3125,7 +3125,7 @@
sighand = parent->sighand;
spin_lock_irqsave(&sighand->siglock, flags);
if (sighand->action[SIGCHLD-1].sa.sa_handler != SIG_IGN &&
-@@ -1564,110 +1562,6 @@ static void do_notify_parent_cldstop(str
+@@ -1588,110 +1586,6 @@ static void do_notify_parent_cldstop(str
spin_unlock_irqrestore(&sighand->siglock, flags);
}
@@ -3236,7 +3236,7 @@
static void
finish_stop(int stop_count)
{
-@@ -1676,7 +1570,7 @@ finish_stop(int stop_count)
+@@ -1700,7 +1594,7 @@ finish_stop(int stop_count)
* a group stop in progress and we are the last to stop,
* report to the parent. When ptraced, every thread reports itself.
*/
@@ -3245,7 +3245,7 @@
read_lock(&tasklist_lock);
do_notify_parent_cldstop(current, CLD_STOPPED);
read_unlock(&tasklist_lock);
-@@ -1803,44 +1697,24 @@ relock:
+@@ -1827,44 +1721,24 @@ relock:
handle_group_stop())
goto relock;
@@ -3306,7 +3306,7 @@
if (ka->sa.sa_handler == SIG_IGN) /* Do nothing. */
continue;
if (ka->sa.sa_handler != SIG_DFL) {
-@@ -1889,7 +1763,7 @@ relock:
+@@ -1913,7 +1787,7 @@ relock:
spin_lock_irq(¤t->sighand->siglock);
}
@@ -3315,7 +3315,7 @@
/* It released the siglock. */
goto relock;
}
-@@ -1916,13 +1790,13 @@ relock:
+@@ -1940,13 +1814,13 @@ relock:
* first and our do_group_exit call below will use
* that value and ignore the one we pass it.
*/
@@ -3331,7 +3331,7 @@
/* NOTREACHED */
}
spin_unlock_irq(¤t->sighand->siglock);
-@@ -1934,7 +1808,6 @@ EXPORT_SYMBOL_GPL(dequeue_signal);
+@@ -1958,7 +1832,6 @@ EXPORT_SYMBOL_GPL(dequeue_signal);
EXPORT_SYMBOL(flush_signals);
EXPORT_SYMBOL(force_sig);
EXPORT_SYMBOL(kill_proc);
@@ -3341,7 +3341,7 @@
EXPORT_SYMBOL(sigprocmask);
--- linux-2.6/kernel/tsacct.c
+++ linux-2.6/kernel/tsacct.c
-@@ -60,7 +60,7 @@ void bacct_add_tsk(struct taskstats *sta
+@@ -58,7 +58,7 @@ void bacct_add_tsk(struct taskstats *sta
stats->ac_pid = tsk->pid;
rcu_read_lock();
stats->ac_ppid = pid_alive(tsk) ?
@@ -5725,7 +5725,7 @@
goto out;
--- linux-2.6/kernel/timer.c
+++ linux-2.6/kernel/timer.c
-@@ -1246,9 +1246,9 @@ asmlinkage long sys_getpid(void)
+@@ -1326,9 +1326,9 @@ asmlinkage long sys_getpid(void)
}
/*
@@ -5737,7 +5737,7 @@
* release_task()->call_rcu(delayed_put_task_struct).
*/
asmlinkage long sys_getppid(void)
-@@ -1256,7 +1256,7 @@ asmlinkage long sys_getppid(void)
+@@ -1336,7 +1336,7 @@ asmlinkage long sys_getppid(void)
int pid;
rcu_read_lock();
@@ -7650,7 +7650,7 @@
signal.o sys.o kmod.o workqueue.o pid.o \
rcupdate.o extable.o params.o posix-timers.o \
kthread.o wait.o kfifo.o sys_ni.o posix-cpu-timers.o mutex.o \
-@@ -50,6 +50,8 @@ obj-$(CONFIG_RELAY) += relay.o
+@@ -51,6 +51,8 @@ obj-$(CONFIG_SYSCTL) += utsname_sysctl.o
obj-$(CONFIG_UTS_NS) += utsname.o
obj-$(CONFIG_TASK_DELAY_ACCT) += delayacct.o
obj-$(CONFIG_TASKSTATS) += taskstats.o tsacct.o
@@ -7863,7 +7863,7 @@
--- linux-2.6/fs/binfmt_elf.c
+++ linux-2.6/fs/binfmt_elf.c
-@@ -1022,12 +1022,6 @@ static int load_elf_binary(struct linux_
+@@ -1023,12 +1023,6 @@ static int load_elf_binary(struct linux_
#endif
start_thread(regs, elf_entry, bprm->p);
@@ -7925,7 +7925,7 @@
--- linux-2.6/init/Kconfig
+++ linux-2.6/init/Kconfig
-@@ -573,6 +573,35 @@ config STOP_MACHINE
+@@ -579,6 +579,35 @@ config STOP_MACHINE
Need stop_machine() primitive.
endmenu
@@ -8233,9 +8233,9 @@
-#include <linux/ptrace.h>
+#include <linux/tracehook.h>
#include <linux/elf.h>
+ #include <linux/binfmts.h>
#include <asm/processor.h>
- #include <asm/ucontext.h>
-@@ -383,16 +383,6 @@ static int setup_frame(int sig, struct k
+@@ -387,16 +387,6 @@ static int setup_frame(int sig, struct k
regs->xss = __USER_DS;
regs->xcs = __USER_CS;
@@ -8252,7 +8252,7 @@
#if DEBUG_SIG
printk("SIG deliver (%s:%d): sp=%p pc=%p ra=%p\n",
current->comm, current->pid, frame, regs->eip, frame->pretcode);
-@@ -477,16 +467,6 @@ static int setup_rt_frame(int sig, struc
+@@ -481,16 +471,6 @@ static int setup_rt_frame(int sig, struc
regs->xss = __USER_DS;
regs->xcs = __USER_CS;
@@ -8269,7 +8269,7 @@
#if DEBUG_SIG
printk("SIG deliver (%s:%d): sp=%p pc=%p ra=%p\n",
current->comm, current->pid, frame, regs->eip, frame->pretcode);
-@@ -531,14 +511,12 @@ handle_signal(unsigned long sig, siginfo
+@@ -535,14 +515,12 @@ handle_signal(unsigned long sig, siginfo
}
/*
@@ -8286,7 +8286,7 @@
/* Set up the stack frame */
if (ka->sa.sa_flags & SA_SIGINFO)
-@@ -553,6 +531,15 @@ handle_signal(unsigned long sig, siginfo
+@@ -557,6 +535,15 @@ handle_signal(unsigned long sig, siginfo
sigaddset(¤t->blocked,sig);
recalc_sigpending();
spin_unlock_irq(¤t->sighand->siglock);
@@ -8304,7 +8304,7 @@
return ret;
--- linux-2.6/arch/i386/kernel/vm86.c
+++ linux-2.6/arch/i386/kernel/vm86.c
-@@ -556,13 +556,6 @@ int handle_vm86_trap(struct kernel_vm86_
+@@ -557,13 +557,6 @@ int handle_vm86_trap(struct kernel_vm86_
}
if (trapno !=1)
return 1; /* we let this handle by the calling routine */
@@ -8320,7 +8320,7 @@
current->thread.error_code = error_code;
--- linux-2.6/arch/i386/kernel/process.c
+++ linux-2.6/arch/i386/kernel/process.c
-@@ -750,9 +750,6 @@ asmlinkage int sys_execve(struct pt_regs
+@@ -820,9 +820,6 @@ asmlinkage int sys_execve(struct pt_regs
(char __user * __user *) regs.edx,
®s);
if (error == 0) {
@@ -8376,10 +8376,10 @@
+ clear_tsk_thread_flag(child, TIF_FORCED_TF);
break;
}
- if (regno > ES*4)
+ if (regno > FS*4)
@@ -127,6 +124,10 @@ static unsigned long getreg(struct task_
- case FS:
- retval = child->thread.fs;
+ case GS:
+ retval = child->thread.gs;
break;
+ case EFL:
+ if (test_tsk_thread_flag(child, TIF_FORCED_TF))
@@ -8387,13 +8387,13 @@
+ goto fetch;
case DS:
case ES:
- case GS:
+ case FS:
@@ -135,9 +136,11 @@ static unsigned long getreg(struct task_
retval = 0xffff;
/* fall through */
default:
+fetch:
- if (regno > ES*4)
+ if (regno > FS*4)
regno -= 1*4;
retval &= get_stack_long(child, regno);
+ break;
@@ -9341,7 +9341,7 @@
}
--- linux-2.6/arch/i386/kernel/entry.S
+++ linux-2.6/arch/i386/kernel/entry.S
-@@ -333,7 +333,7 @@ sysenter_past_esp:
+@@ -336,7 +336,7 @@ sysenter_past_esp:
GET_THREAD_INFO(%ebp)
/* Note, _TIF_SECCOMP is bit number 8, and so it needs testw and not testb */
@@ -9350,7 +9350,7 @@
jnz syscall_trace_entry
cmpl $(nr_syscalls), %eax
jae syscall_badsys
-@@ -373,7 +373,7 @@ ENTRY(system_call)
+@@ -377,7 +377,7 @@ ENTRY(system_call)
no_singlestep:
# system call tracing in operation / emulation
/* Note, _TIF_SECCOMP is bit number 8, and so it needs testw and not testb */
@@ -9359,7 +9359,7 @@
jnz syscall_trace_entry
cmpl $(nr_syscalls), %eax
jae syscall_badsys
-@@ -512,9 +512,6 @@ syscall_trace_entry:
+@@ -518,9 +518,6 @@ syscall_trace_entry:
movl %esp, %eax
xorl %edx,%edx
call do_syscall_trace
@@ -16869,7 +16869,7 @@
break;
case offsetof(struct user_regs_struct,cs):
if ((value & 3) != 3)
-@@ -301,307 +304,438 @@ static unsigned long getreg(struct task_
+@@ -301,311 +304,438 @@ static unsigned long getreg(struct task_
val = get_stack_long(child, regno);
if (test_tsk_thread_flag(child, TIF_IA32))
val &= 0xffffffff;
@@ -17216,7 +17216,23 @@
- ret = do_get_thread_area(&child->thread, p);
- put_user(old, &p->entry_number);
- break;
-- }
++
++static int
++fpregs_active(struct task_struct *target, const struct utrace_regset *regset)
++{
++ return tsk_used_math(target) ? regset->n : 0;
++}
++
++static int
++fpregs_get(struct task_struct *target,
++ const struct utrace_regset *regset,
++ unsigned int pos, unsigned int count,
++ void *kbuf, void __user *ubuf)
++{
++ if (tsk_used_math(target)) {
++ if (target == current)
++ unlazy_fpu(target);
+ }
-#endif
- /* normal 64bit interface to access TLS data.
- Works just like arch_prctl, except that the arguments
@@ -17224,6 +17240,8 @@
- case PTRACE_ARCH_PRCTL:
- ret = do_arch_prctl(child, data, addr);
- break;
++ else
++ init_fpu(target);
-/*
- * make the child exit. Best I can do is send it a sigkill.
@@ -17270,22 +17288,24 @@
- data += sizeof(long);
- }
- break;
-+static int
-+fpregs_active(struct task_struct *target, const struct utrace_regset *regset)
-+{
-+ return tsk_used_math(target) ? regset->n : 0;
++ return utrace_regset_copyout(&pos, &count, &kbuf, &ubuf,
++ &target->thread.i387.fxsave, 0, -1);
+}
+
+static int
-+fpregs_get(struct task_struct *target,
++fpregs_set(struct task_struct *target,
+ const struct utrace_regset *regset,
+ unsigned int pos, unsigned int count,
-+ void *kbuf, void __user *ubuf)
++ const void *kbuf, const void __user *ubuf)
+{
++ int ret;
++
+ if (tsk_used_math(target)) {
+ if (target == current)
+ unlazy_fpu(target);
}
++ else if (pos == 0 && count == sizeof(struct user_i387_struct))
++ set_stopped_child_used_math(target);
+ else
+ init_fpu(target);
@@ -17298,32 +17318,17 @@
- }
- ret = 0;
- for (ui = 0; ui < sizeof(struct user_regs_struct); ui += sizeof(long)) {
-- ret |= __get_user(tmp, (unsigned long __user *) data);
-- putreg(child, ui, tmp);
+- ret = __get_user(tmp, (unsigned long __user *) data);
+- if (ret)
+- break;
+- ret = putreg(child, ui, tmp);
+- if (ret)
+- break;
- data += sizeof(long);
- }
- break;
-+ return utrace_regset_copyout(&pos, &count, &kbuf, &ubuf,
-+ &target->thread.i387.fxsave, 0, -1);
-+}
-+
-+static int
-+fpregs_set(struct task_struct *target,
-+ const struct utrace_regset *regset,
-+ unsigned int pos, unsigned int count,
-+ const void *kbuf, const void __user *ubuf)
-+{
-+ int ret;
-+
-+ if (tsk_used_math(target)) {
-+ if (target == current)
-+ unlazy_fpu(target);
- }
-+ else if (pos == 0 && count == sizeof(struct user_i387_struct))
-+ set_stopped_child_used_math(target);
-+ else
-+ init_fpu(target);
-
+- }
+-
- case PTRACE_GETFPREGS: { /* Get the child extended FPU state. */
- if (!access_ok(VERIFY_WRITE, (unsigned __user *)data,
- sizeof(struct user_i387_struct))) {
@@ -17559,7 +17564,7 @@
if (unlikely(current->audit_context)) {
if (test_thread_flag(TIF_IA32)) {
-@@ -623,8 +757,11 @@ asmlinkage void syscall_trace_leave(stru
+@@ -627,8 +757,11 @@ asmlinkage void syscall_trace_leave(stru
if (unlikely(current->audit_context))
audit_syscall_exit(AUDITSC_RESULT(regs->rax), regs->rax);
@@ -18429,7 +18434,7 @@
+#endif /* CONFIG_PTRACE */
--- linux-2.6/arch/x86_64/ia32/ia32_signal.c
+++ linux-2.6/arch/x86_64/ia32/ia32_signal.c
-@@ -488,11 +488,7 @@ int ia32_setup_frame(int sig, struct k_s
+@@ -493,11 +493,7 @@ int ia32_setup_frame(int sig, struct k_s
regs->cs = __USER32_CS;
regs->ss = __USER32_DS;
@@ -18440,8 +18445,8 @@
- ptrace_notify(SIGTRAP);
#if DEBUG_SIG
- printk("SIG deliver (%s:%d): sp=%p pc=%p ra=%p\n",
-@@ -596,9 +592,6 @@ int ia32_setup_rt_frame(int sig, struct
+ printk("SIG deliver (%s:%d): sp=%p pc=%lx ra=%u\n",
+@@ -601,9 +597,6 @@ int ia32_setup_rt_frame(int sig, struct
regs->ss = __USER32_DS;
set_fs(USER_DS);
@@ -18450,7 +18455,7 @@
- ptrace_notify(SIGTRAP);
#if DEBUG_SIG
- printk("SIG deliver (%s:%d): sp=%p pc=%p ra=%p\n",
+ printk("SIG deliver (%s:%d): sp=%p pc=%lx ra=%u\n",
--- linux-2.6/arch/x86_64/ia32/sys_ia32.c
+++ linux-2.6/arch/x86_64/ia32/sys_ia32.c
@@ -800,11 +800,6 @@ asmlinkage long sys32_execve(char __user
Index: sources
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/sources,v
retrieving revision 1.532
retrieving revision 1.533
diff -u -r1.532 -r1.533
--- sources 14 Feb 2007 18:50:18 -0000 1.532
+++ sources 18 Feb 2007 02:52:58 -0000 1.533
@@ -1,3 +1,3 @@
93d8d8f6c51f3c01beadbae1aa1fd548 xen-11633.tar.bz2
34b0f354819217e6a345f48ebbd8f13e linux-2.6.20.tar.bz2
-83cba3a281f7b135058fae8c1e4395e7 patch-2.6.20-git10.bz2
+a5d4972aea3dfec3ec111cd0b2e32f41 patch-2.6.20-git14.bz2
Index: upstream
===================================================================
RCS file: /cvs/dist/rpms/kernel/devel/upstream,v
retrieving revision 1.460
retrieving revision 1.461
diff -u -r1.460 -r1.461
--- upstream 14 Feb 2007 18:26:48 -0000 1.460
+++ upstream 18 Feb 2007 02:52:58 -0000 1.461
@@ -1,3 +1,3 @@
linux-2.6.20.tar.bz2
-patch-2.6.20-git10.bz2
+patch-2.6.20-git14.bz2
More information about the fedora-cvs-commits
mailing list