mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-23 10:24:11 +07:00
98ae22e15b
Here we add the helper functions to be used when context switching. These allow us to fully reclaim and recheckpoint a transaction. We introduce a new paca field called tm_scratch to help us store away register values when doing the low level tm reclaim register save. Signed-off-by: Matt Evans <matt@ozlabs.org> Signed-off-by: Michael Neuling <mikey@neuling.org> Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
21 lines
732 B
C
21 lines
732 B
C
/*
|
|
* 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);
|