Welcome to mirror list, hosted at ThFree Co, Russian Federation.

cygwin.com/git/newlib-cygwin.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorkib <kib@FreeBSD.org>2016-02-28 20:52:33 +0300
committerSebastian Huber <sebastian.huber@embedded-brains.de>2018-08-24 16:00:02 +0300
commitc3df6d5155f0ffc3337991fbc1796952edf2cd82 (patch)
tree4b961219897f5ffeb477a81ca12b02171cdc2935 /newlib/libc/sys/rtems
parent7cfc736e8911c2ad1fbd9d212264c44bcda45fbd (diff)
Implement process-shared locks support
for libthr.so.3, without breaking the ABI. Special value is stored in the lock pointer to indicate shared lock, and offline page in the shared memory is allocated to store the actual lock. Reviewed by: vangyzen (previous version) Discussed with: deischen, emaste, jhb, rwatson, Martin Simmons <martin@lispworks.com> Tested by: pho Sponsored by: The FreeBSD Foundation
Diffstat (limited to 'newlib/libc/sys/rtems')
-rw-r--r--newlib/libc/sys/rtems/include/sys/mman.h7
1 files changed, 7 insertions, 0 deletions
diff --git a/newlib/libc/sys/rtems/include/sys/mman.h b/newlib/libc/sys/rtems/include/sys/mman.h
index 19d992e83..1fce96074 100644
--- a/newlib/libc/sys/rtems/include/sys/mman.h
+++ b/newlib/libc/sys/rtems/include/sys/mman.h
@@ -233,6 +233,13 @@ struct shmfd {
int shm_map(struct file *fp, size_t size, off_t offset, void **memp);
int shm_unmap(struct file *fp, void *mem, size_t size);
+int shm_access(struct shmfd *shmfd, struct ucred *ucred, int flags);
+struct shmfd *shm_alloc(struct ucred *ucred, mode_t mode);
+struct shmfd *shm_hold(struct shmfd *shmfd);
+void shm_drop(struct shmfd *shmfd);
+int shm_dotruncate(struct shmfd *shmfd, off_t length);
+
+extern struct fileops shm_ops;
#else /* !_KERNEL */
__BEGIN_DECLS