mirror of
https://github.com/AuxXxilium/linux_dsm_epyc7002.git
synced 2024-12-12 13:36:45 +07:00
10ad34bc76
The multi-threading facility is introduced with the z13 processor family. This patch adds code to detect the multi-threading facility. With the facility enabled each core will surface multiple hardware threads to the system. Each hardware threads looks like a normal CPU to the operating system with all its registers and properties. The SCLP interface reports the SMT topology indirectly via the maximum thread id. Each reported CPU in the result of a read-scp-information is a core representing a number of hardware threads. To reflect the reduced CPU capacity if two hardware threads run on a single core the MT utilization counter set is used to normalize the raw cputime obtained by the CPU timer deltas. This scaled cputime is reported via the taskstats interface. The normal /proc/stat numbers are based on the raw cputime and are not affected by the normalization. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
21 lines
494 B
C
21 lines
494 B
C
/*
|
|
* Copyright IBM Corp. 2006
|
|
* Author(s): Heiko Carstens <heiko.carstens@de.ibm.com>
|
|
*/
|
|
|
|
#ifndef _ASM_S390_RESET_H
|
|
#define _ASM_S390_RESET_H
|
|
|
|
#include <linux/list.h>
|
|
|
|
struct reset_call {
|
|
struct list_head list;
|
|
void (*fn)(void);
|
|
};
|
|
|
|
extern void register_reset_call(struct reset_call *reset);
|
|
extern void unregister_reset_call(struct reset_call *reset);
|
|
extern void s390_reset_system(void (*fn_pre)(void),
|
|
void (*fn_post)(void *), void *data);
|
|
#endif /* _ASM_S390_RESET_H */
|