Title: [6911] trunk/arch/blackfin/kernel/ptrace.c: ptrace: implement support for common FDPIC ptrace functions
- Revision
- 6911
- Author
- vapier
- Date
- 2009-07-02 19:17:45 -0500 (Thu, 02 Jul 2009)
Log Message
ptrace: implement support for common FDPIC ptrace functions
Modified Paths
Diff
Modified: trunk/arch/blackfin/kernel/ptrace.c (6910 => 6911)
--- trunk/arch/blackfin/kernel/ptrace.c 2009-07-02 11:00:38 UTC (rev 6910)
+++ trunk/arch/blackfin/kernel/ptrace.c 2009-07-03 00:17:45 UTC (rev 6911)
@@ -286,9 +286,9 @@
tmp = child->mm->start_data;
#ifdef CONFIG_BINFMT_ELF_FDPIC
} else if (addr == (sizeof(struct pt_regs) + 12)) {
- tmp = child->mm->context.exec_fdpic_loadmap;
+ goto case_PTRACE_GETFDPIC_EXEC;
} else if (addr == (sizeof(struct pt_regs) + 16)) {
- tmp = child->mm->context.interp_fdpic_loadmap;
+ goto case_PTRACE_GETFDPIC_INTERP;
#endif
} else {
tmp = get_reg(child, addr);
@@ -297,6 +297,28 @@
break;
}
+#ifdef CONFIG_BINFMT_ELF_FDPIC
+ case PTRACE_GETFDPIC: {
+ unsigned long tmp = 0;
+
+ switch (addr) {
+ case_PTRACE_GETFDPIC_EXEC:
+ case PTRACE_GETFDPIC_EXEC:
+ tmp = child->mm->context.exec_fdpic_loadmap;
+ break;
+ case_PTRACE_GETFDPIC_INTERP:
+ case PTRACE_GETFDPIC_INTERP:
+ tmp = child->mm->context.interp_fdpic_loadmap;
+ break;
+ default:
+ break;
+ }
+
+ ret = put_user(tmp, datap);
+ break;
+ }
+#endif
+
/* when I and D space are separate, this will have to be fixed. */
case PTRACE_POKEDATA:
pr_debug("ptrace: PTRACE_PEEKDATA\n");
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits