Skip to contentSkip to conversation

2.4.21-pre5 ia64 unwind.c - allow unw_access_gr(r0)

PATCH In review Keith Owens 2 participants 2 messages Mar 14, 2003

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 2.4.21-pre5 ia64 unwind.c - allow unw_access_gr(r0)

Patch is against 2.4.21-pre5 + ia64-021210 + unwind patches from bk tree (it would be nice to have a released 2.4.21-pre5-ia64 version). The patch allows unw_access_gr() to read from r0, to support unwind directives such as .save ar.pfs,r0 and .save rp,r0.

arch/ia64/kernel/unwind.c +5 -0
diff -urN 2.4.21-pre5-ia64/arch/ia64/kernel/unwind.c 2.4.21-pre5-ia64/arch/ia64/kernel/unwind.c
@@ -253,6 +253,11 @@
 	struct pt_regs *pt;
 
 	if ((unsigned) regnum - 1 >= 127) {
+		if (regnum = 0 && !write) {
+			*val = 0;	/* read r0 always returns 0 */
+			*nat = 0;
+			return 0;
+		}
 		UNW_DPRINT(0, "unwind.%s: trying to access non-existent r%u\n",
 			   __FUNCTION__, regnum);
 		return -1;
#1 lore raw
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line · Keith Owens

Keith> Patch is against 2.4.21-pre5 + ia64-021210 + unwind patches Keith> from bk tree (it would be nice to have a released Keith> 2.4.21-pre5-ia64 version). The patch allows unw_access_gr() Keith> to read from r0, to support unwind directives such as .save Keith> ar.pfs,r0 and .save rp,r0.

I applied this patch in the 2.5 tree.

Thanks,

	--david