Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 356425
b: refs/heads/master
c: 98ae22e
h: refs/heads/master
i:
  356423: a658b06
v: v3
  • Loading branch information
Michael Neuling authored and Benjamin Herrenschmidt committed Feb 15, 2013
1 parent 7c8d133 commit 1f05e06
Show file tree
Hide file tree
Showing 5 changed files with 412 additions and 2 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: afc07701ced6463786d09a3b9baf894c1397e991
refs/heads/master: 98ae22e15b430bfed5def01ac1a88ec9396284c8
2 changes: 1 addition & 1 deletion trunk/arch/powerpc/include/asm/reg.h
Original file line number Diff line number Diff line change
Expand Up @@ -797,7 +797,7 @@
* HV mode in which case it is HSPRG0
*
* 64-bit server:
* - SPRG0 unused (reserved for HV on Power4)
* - SPRG0 scratch for TM recheckpoint/reclaim (reserved for HV on Power4)
* - SPRG2 scratch for exception vectors
* - SPRG3 CPU and NUMA node for VDSO getcpu (user visible)
* - HSPRG0 stores PACA in HV mode
Expand Down
20 changes: 20 additions & 0 deletions trunk/arch/powerpc/include/asm/tm.h
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
/*
* Transactional memory support routines to reclaim and recheckpoint
* transactional process state.
*
* Copyright 2012 Matt Evans & Michael Neuling, IBM Corporation.
*/

#ifdef CONFIG_PPC_TRANSACTIONAL_MEM
extern void do_load_up_transact_fpu(struct thread_struct *thread);
extern void do_load_up_transact_altivec(struct thread_struct *thread);
#endif

extern void tm_enable(void);
extern void tm_reclaim(struct thread_struct *thread,
unsigned long orig_msr, uint8_t cause);
extern void tm_recheckpoint(struct thread_struct *thread,
unsigned long orig_msr);
extern void tm_abort(uint8_t cause);
extern void tm_save_sprs(struct thread_struct *thread);
extern void tm_restore_sprs(struct thread_struct *thread);
2 changes: 2 additions & 0 deletions trunk/arch/powerpc/kernel/Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -121,6 +121,8 @@ ifneq ($(CONFIG_PPC_INDIRECT_IO),y)
obj-y += iomap.o
endif

obj64-$(CONFIG_PPC_TRANSACTIONAL_MEM) += tm.o

obj-$(CONFIG_PPC64) += $(obj64-y)
obj-$(CONFIG_PPC32) += $(obj32-y)

Expand Down
Loading

0 comments on commit 1f05e06

Please sign in to comment.