// SPDX-License-Identifier: GPL-2.0-only /* * Copyright 2015, Michael Neuling, IBM Corp. * * Original: Michael Neuling 3/4/2014 * Modified: Rashmica Gupta 8/12/2015 * * Check if any of the Transaction Memory SPRs get corrupted. * - TFIAR - stores address of location of transaction failure * - TFHAR - stores address of software failure handler (if transaction * fails) * - TEXASR - lots of info about the transacion(s) * * (1) create more threads than cpus * (2) in each thread: * (a) set TFIAR and TFHAR a unique value * (b) loop for awhile, continually checking to see if * either register has been corrupted. * * (3) Loop: * (a) begin transaction * (b) abort transaction * (c) check TEXASR to see if FS has been corrupted
*/
/* Test TFIAR and TFHAR */ for (i = 0; i < thread_num; i += 2) { if (pthread_create(&thread[i], NULL, (void *)tfiar_tfhar,
(void *)i)) return EXIT_FAILURE;
} /* Test TEXASR */ for (i = 1; i < thread_num; i += 2) { if (pthread_create(&thread[i], NULL, (void *)texasr, (void *)i)) return EXIT_FAILURE;
}
for (i = 0; i < thread_num; i++) { if (pthread_join(thread[i], NULL) != 0) return EXIT_FAILURE;
}
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.