Skip to content

Commit c02d0b7

Browse files
committed
oshmem: Align OSHMEM API with spec v1.3 (shmem_lock change signature)
Annex G: Version 1.3 Added volatile to remotely accessible pointer argument in SHMEM_LOCK See Sections 8.9.1
1 parent a52b079 commit c02d0b7

File tree

6 files changed

+20
-20
lines changed

6 files changed

+20
-20
lines changed

oshmem/include/pshmem.h

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2014 Mellanox Technologies, Inc.
2+
* Copyright (c) 2014-2016 Mellanox Technologies, Inc.
33
* All rights reserved.
44
* Copyright (c) 2014 Intel, Inc. All rights reserved
55
* Copyright (c) 2016 Research Organization for Information Science
@@ -246,9 +246,9 @@ OSHMEM_DECLSPEC void pshmem_longlong_inc(long long *target, int pe);
246246
/*
247247
* Lock functions
248248
*/
249-
OSHMEM_DECLSPEC void pshmem_set_lock(long *lock);
250-
OSHMEM_DECLSPEC void pshmem_clear_lock(long *lock);
251-
OSHMEM_DECLSPEC int pshmem_test_lock(long *lock);
249+
OSHMEM_DECLSPEC void pshmem_set_lock(volatile long *lock);
250+
OSHMEM_DECLSPEC void pshmem_clear_lock(volatile long *lock);
251+
OSHMEM_DECLSPEC int pshmem_test_lock(volatile long *lock);
252252

253253
/*
254254
* P2P sync routines

oshmem/include/shmem.h.in

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2014-2015 Mellanox Technologies, Inc.
2+
* Copyright (c) 2014-2016 Mellanox Technologies, Inc.
33
* All rights reserved.
44
* Copyright (c) 2014 Intel, Inc. All rights reserved
55
* $COPYRIGHT$
@@ -309,9 +309,9 @@ OSHMEM_DECLSPEC void shmem_longlong_inc(long long *target, int pe);
309309
/*
310310
* Lock functions
311311
*/
312-
OSHMEM_DECLSPEC void shmem_set_lock(long *lock);
313-
OSHMEM_DECLSPEC void shmem_clear_lock(long *lock);
314-
OSHMEM_DECLSPEC int shmem_test_lock(long *lock);
312+
OSHMEM_DECLSPEC void shmem_set_lock(volatile long *lock);
313+
OSHMEM_DECLSPEC void shmem_clear_lock(volatile long *lock);
314+
OSHMEM_DECLSPEC int shmem_test_lock(volatile long *lock);
315315

316316
/*
317317
* P2P sync routines

oshmem/shmem/c/shmem_clear_lock.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2013 Mellanox Technologies, Inc.
2+
* Copyright (c) 2013-2016 Mellanox Technologies, Inc.
33
* All rights reserved.
44
* $COPYRIGHT$
55
*
@@ -25,7 +25,7 @@
2525
#include "oshmem/shmem/c/profile/defines.h"
2626
#endif
2727

28-
void shmem_clear_lock(long *lock)
28+
void shmem_clear_lock(volatile long *lock)
2929
{
30-
_shmem_clear_lock(lock, sizeof(long));
30+
_shmem_clear_lock((void *)lock, sizeof(long));
3131
}

oshmem/shmem/c/shmem_set_lock.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2013 Mellanox Technologies, Inc.
2+
* Copyright (c) 2013-2016 Mellanox Technologies, Inc.
33
* All rights reserved.
44
* $COPYRIGHT$
55
*
@@ -25,7 +25,7 @@
2525
#include "oshmem/shmem/c/profile/defines.h"
2626
#endif
2727

28-
void shmem_set_lock(long *lock)
28+
void shmem_set_lock(volatile long *lock)
2929
{
30-
_shmem_set_lock(lock, sizeof(long));
30+
_shmem_set_lock((void *)lock, sizeof(long));
3131
}

oshmem/shmem/c/shmem_test_lock.c

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2013 Mellanox Technologies, Inc.
2+
* Copyright (c) 2013-2016 Mellanox Technologies, Inc.
33
* All rights reserved.
44
* $COPYRIGHT$
55
*
@@ -26,7 +26,7 @@
2626
#include "oshmem/shmem/c/profile/defines.h"
2727
#endif
2828

29-
int shmem_test_lock(long *lock)
29+
int shmem_test_lock(volatile long *lock)
3030
{
31-
return _shmem_test_lock(lock, sizeof(long));
31+
return _shmem_test_lock((void *)lock, sizeof(long));
3232
}

oshmem/shmem/man/man3/shmem_set_lock.3in

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,11 +24,11 @@ C or C++:
2424
.Vb
2525
#include <mpp/shmem.h>
2626

27-
void shmem_clear_lock(long *lock);
27+
void shmem_clear_lock(volatile long *lock);
2828

29-
void shmem_set_lock(long *lock);
29+
void shmem_set_lock(volatile long *lock);
3030

31-
int shmem_test_lock(long *lock);
31+
int shmem_test_lock(volatile long *lock);
3232
.Ve
3333
Fortran:
3434
.Vb

0 commit comments

Comments
 (0)