1 /* 2 * Copyright (c) 2004-2005 The Trustees of Indiana University and Indiana 3 * University Research and Technology 4 * Corporation. All rights reserved. 5 * Copyright (c) 2004-2006 The University of Tennessee and The University 6 * of Tennessee Research Foundation. All rights 7 * reserved. 8 * Copyright (c) 2004-2005 High Performance Computing Center Stuttgart, 9 * University of Stuttgart. All rights reserved. 10 * Copyright (c) 2004-2005 The Regents of the University of California. 11 * All rights reserved. 12 * $COPYRIGHT$ 13 * 14 * Additional copyrights may follow 15 * 16 * $HEADER$ 17 */ 18 19 /** 20 * @file 21 * 22 * Locks to prevent loops inside ORTE 23 */ 24 #ifndef ORTE_LOCKS_H 25 #define ORTE_LOCKS_H 26 27 #include "orte_config.h" 28 29 #include "opal/sys/atomic.h" 30 31 BEGIN_C_DECLS 32 33 /* for everyone */ 34 ORTE_DECLSPEC extern opal_atomic_lock_t orte_finalize_lock; 35 36 /* for HNPs */ 37 ORTE_DECLSPEC extern opal_atomic_lock_t orte_abort_inprogress_lock; 38 ORTE_DECLSPEC extern opal_atomic_lock_t orte_jobs_complete_lock; 39 ORTE_DECLSPEC extern opal_atomic_lock_t orte_quit_lock; 40 41 /** 42 * Initialize the locks 43 */ 44 ORTE_DECLSPEC int orte_locks_init(void); 45 46 END_C_DECLS 47 48 #endif /* #ifndef ORTE_LOCKS_H */