summaryrefslogtreecommitdiffstats
path: root/arch/s390/kernel/setup.c
diff options
context:
space:
mode:
authorMartin Schwidefsky <schwidefsky@de.ibm.com>2012-07-31 11:03:04 +0200
committerMartin Schwidefsky <schwidefsky@de.ibm.com>2012-09-26 15:45:02 +0200
commitd35339a42dd1f53b0bb86cf75418a9b7cf5f0f30 (patch)
tree7f6447709e0bdb601687c40c42e09c3ca6deff8c /arch/s390/kernel/setup.c
parente4b8b3f33fcaa0ed6e6b5482a606091d8cd20beb (diff)
downloadop-kernel-dev-d35339a42dd1f53b0bb86cf75418a9b7cf5f0f30.zip
op-kernel-dev-d35339a42dd1f53b0bb86cf75418a9b7cf5f0f30.tar.gz
s390: add support for transactional memory
Allow user-space processes to use transactional execution (TX). If the TX facility is available user space programs can use transactions for fine-grained serialization based on the data objects that are referenced during a transaction. This is useful for lockless data structures and speculative compiler optimizations. Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
Diffstat (limited to 'arch/s390/kernel/setup.c')
-rw-r--r--arch/s390/kernel/setup.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/s390/kernel/setup.c b/arch/s390/kernel/setup.c
index 40b5769..7b59fff 100644
--- a/arch/s390/kernel/setup.c
+++ b/arch/s390/kernel/setup.c
@@ -980,6 +980,12 @@ static void __init setup_hwcaps(void)
* HWCAP_S390_HIGH_GPRS is bit 9.
*/
elf_hwcap |= HWCAP_S390_HIGH_GPRS;
+
+ /*
+ * Transactional execution support HWCAP_S390_TE is bit 10.
+ */
+ if (test_facility(50) && test_facility(73))
+ elf_hwcap |= HWCAP_S390_TE;
#endif
get_cpu_id(&cpu_id);
OpenPOWER on IntegriCloud