> -----Original Message----- > From: Wood Scott-B07421 > Sent: Friday, March 14, 2014 2:01 AM > To: Benjamin Herrenschmidt > Cc: linuxppc-dev@xxxxxxxxxxxxxxxx; Kumar Gala; Tiejun Chen; Wood Scott- > B07421; Caraman Mihai Claudiu-B02008; Anton Blanchard; Paul Mackerras; > kvm-ppc@xxxxxxxxxxxxxxx > Subject: [PATCH 05/10] powerpc/booke64: Use SPRG7 for VDSO > > Previously SPRG3 was marked for use by both VDSO and critical > interrupts (though critical interrupts were not fully implemented). > > In commit 8b64a9dfb091f1eca8b7e58da82f1e7d1d5fe0ad ("powerpc/booke64: > Use SPRG0/3 scratch for bolted TLB miss & crit int"), Mihai Caraman > made an attempt to resolve this conflict by restoring the VDSO value > early in the critical interrupt, but this has some issues: > > - It forces critical exceptions to be a special case handled > differently from even machine check and debug level exceptions. Yes, this was ugly. > Since we cannot use SPRG4-7 for scratch without corrupting the state of > a KVM guest, move VDSO to SPRG7 on book3e. At that time I thought that information exposed through SPRN_USPRG3 is part of the ABI which can't be changed, and this lead to complicated gymnastic. But since VSDO's __kernel_getcpu() function hides SPRN_USPRGx access, I think your unified approach is the right way. -Mike -- To unsubscribe from this list: send the line "unsubscribe kvm-ppc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html