Skip to content

Commit 269d852

Browse files
Eric Saint Etiennedavem330
authored andcommitted
sparc64: fix for user probes in high memory
When returning from the user probe code into userspace process, PC & NPC are truncated to 32 bits. Due to shared libraries getting loaded very high in the virtual address space of the process, placing a user probe inside a shared library makes the kernel return into the process at the wrong address, causing it to seg'fault most of the time. This patch prevents truncating PC and NPC. Signed-off-by: Eric Saint Etienne <eric.saint.etienne@oracle.com> Reviewed-by: David Aldridge <david.j.aldridge@oracle.com> Signed-off-by: David S. Miller <davem@davemloft.net>
1 parent fc5e8c2 commit 269d852

File tree

1 file changed

+2
-2
lines changed

1 file changed

+2
-2
lines changed

arch/sparc/include/asm/uprobes.h

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -42,8 +42,8 @@ struct arch_uprobe {
4242
};
4343

4444
struct arch_uprobe_task {
45-
u32 saved_tpc;
46-
u32 saved_tnpc;
45+
u64 saved_tpc;
46+
u64 saved_tnpc;
4747
};
4848

4949
struct task_struct;

0 commit comments

Comments
 (0)