blob: e94f6db5e367b3ff7de34d97db260589c177eb5d [file] [log] [blame]
Greg Kroah-Hartmanb2441312017-11-01 15:07:57 +01001/* SPDX-License-Identifier: GPL-2.0 */
Michael Neuling98ae22e2013-02-13 16:21:35 +00002/*
3 * Transactional memory support routines to reclaim and recheckpoint
4 * transactional process state.
5 *
6 * Copyright 2012 Matt Evans & Michael Neuling, IBM Corporation.
7 */
8
Michael Neulingb75c1002013-05-26 18:30:56 +00009#include <uapi/asm/tm.h>
10
Michael Neulinge4e38122014-03-25 10:47:02 +110011#ifndef __ASSEMBLY__
12
Michael Neuling98ae22e2013-02-13 16:21:35 +000013extern void tm_reclaim(struct thread_struct *thread,
Cyril Bureb5c3f12017-11-02 14:09:05 +110014 uint8_t cause);
Paul Mackerrasd31626f2014-01-13 15:56:29 +110015extern void tm_reclaim_current(uint8_t cause);
Cyril Bureb5c3f12017-11-02 14:09:05 +110016extern void tm_recheckpoint(struct thread_struct *thread);
Michael Neuling98ae22e2013-02-13 16:21:35 +000017extern void tm_save_sprs(struct thread_struct *thread);
18extern void tm_restore_sprs(struct thread_struct *thread);
Michael Neulinge4e38122014-03-25 10:47:02 +110019
Michael Ellerman54820532017-10-12 21:17:18 +110020extern bool tm_suspend_disabled;
21
Michael Neulinge4e38122014-03-25 10:47:02 +110022#endif /* __ASSEMBLY__ */