Maxim Cournoyer
e1994a0214
syscalls: Add mmap support.
* guix/build/syscalls.scm (PROT_NONE, PROT_READ, PROT_WRITE, PROT_EXEC)
(PROT_SEM, MAP_SHARED, MAP_PRIVATE, MAP_FAILED)
(MS_ASYNC, MS_INVALIDATE, MS_SYNC)
(%mmap-guardian, %unmapped-bytevectors): New variables.
(unmapped-bytevector?, pump-mmap-guardian, %mmap, mmap, %munmap, munmap)
(%msync, msync): New procedures.
* guix/build/io.scm: New file.
* Makefile.am: Register it.
* tests/syscalls.scm (strace-output): New variable.
("mmap and munmap", "file->bytevector, reading", "file->bytevector, writing")
("manual munmap does not lead to double free"): New tests.
Change-Id: I19ec687899eda635559e91200dd8d98669b0e35f
2025-10-30 16:13:03 +09:00
..
2025-10-24 16:42:53 +02:00
2022-05-18 23:20:21 +02:00
2025-04-21 23:55:50 +02:00
2025-09-18 13:44:12 +09:00
2024-12-18 18:32:40 +01:00
2017-03-16 22:50:14 +01:00
2020-08-29 16:24:17 +02:00
2014-03-30 12:02:10 +02:00
2022-08-28 23:37:28 +02:00
2017-01-26 13:49:56 +01:00
2022-07-13 10:49:40 -04:00
2025-09-18 13:44:12 +09:00
2025-10-12 22:22:01 +02:00
2024-08-21 00:52:39 +02:00
2021-01-16 11:51:03 +00:00
2024-12-30 11:01:54 +01:00
2016-05-04 23:35:55 +02:00
2025-10-29 11:34:28 +09:00
2024-04-15 22:36:42 +02:00
2025-08-31 12:39:24 +02:00
2025-08-31 12:39:24 +02:00
2018-11-12 23:37:13 +01:00
2025-10-12 22:22:01 +02:00
2017-07-03 23:51:23 +02:00
2025-09-18 13:44:12 +09:00
2025-10-23 12:59:08 +02:00
2023-09-26 17:36:59 +02:00
2024-07-18 17:31:19 +02:00
2020-12-09 22:25:17 +01:00
2025-09-18 13:44:12 +09:00
2025-10-05 20:30:45 +02:00
2023-08-21 16:16:47 +02:00
2024-11-12 23:40:39 +01:00
2023-04-21 16:16:38 +02:00
2021-12-22 10:53:19 +01:00
2023-04-21 16:16:38 +02:00
2025-09-18 13:44:12 +09:00
2025-10-19 21:29:38 +02:00
2022-09-04 23:10:10 +02:00
2024-05-13 16:31:35 +02:00
2025-10-17 12:23:54 +02:00
2023-04-21 16:16:38 +02:00
2023-04-21 16:16:38 +02:00
2025-06-22 23:45:36 +02:00
2023-09-26 17:36:57 +02:00
2023-04-21 16:16:38 +02:00
2025-10-17 12:23:54 +02:00
2021-02-22 12:07:45 +01:00
2023-11-15 18:29:37 +01:00
2025-10-17 12:23:54 +02:00
2025-10-17 12:23:54 +02:00
2023-10-28 01:30:37 +02:00
2023-04-21 17:09:46 +02:00
2023-04-21 16:16:38 +02:00
2024-12-14 00:34:28 +01:00
2025-05-19 10:07:24 +09:00
2020-09-16 16:04:01 +02:00
2024-12-14 01:28:49 +01:00
2023-12-06 23:50:04 +01:00
2025-02-09 18:20:41 +01:00
2025-10-11 21:57:59 +09:00
2025-09-18 13:44:12 +09:00
2025-01-16 22:32:11 +01:00
2022-06-04 12:04:24 +02:00
2022-03-06 22:49:46 +01:00
2022-07-08 13:51:34 +01:00
2021-04-12 18:42:22 +02:00
2025-10-29 11:51:24 +09:00
2025-07-28 10:34:36 +03:00
2024-08-31 10:42:16 +02:00
2025-03-05 00:28:49 +01:00
2021-11-16 14:34:28 +01:00
2025-09-18 13:44:12 +09:00
2025-09-18 13:44:12 +09:00
2021-12-22 10:53:19 +01:00
2025-09-30 16:52:07 +09:00
2025-09-23 14:53:36 +02:00
2022-12-12 15:03:05 +01:00
2025-03-26 17:57:44 +01:00
2024-08-31 10:42:49 +02:00
2025-09-21 18:47:23 +02:00
2025-02-24 23:33:51 +01:00
2023-06-04 10:59:28 +02:00
2025-09-18 13:44:12 +09:00
2019-03-24 00:13:53 +01:00
2019-06-14 22:09:38 +02:00
2025-03-05 00:28:49 +01:00
2016-04-03 14:19:09 +02:00
2018-11-12 23:37:13 +01:00
2022-06-26 23:19:14 +02:00
2024-04-15 22:36:42 +02:00
2024-12-30 00:51:57 +01:00
2025-10-06 10:42:08 +02:00
2023-08-18 16:10:08 +02:00
2025-10-16 15:14:37 +02:00
2025-10-24 16:42:54 +02:00
2023-12-04 22:26:36 +01:00
2024-03-09 18:55:49 +01:00
2025-10-30 16:13:03 +09:00
2022-10-22 01:46:55 +02:00
2012-04-19 23:09:55 +02:00
2025-01-20 21:37:36 +01:00
2025-05-05 12:15:47 +02:00
2022-12-13 17:46:39 +01:00
2019-06-14 21:57:39 +02:00
2025-01-08 23:03:04 +01:00
2024-04-15 22:36:42 +02:00
2019-05-07 12:18:44 +02:00
2017-11-17 10:47:49 +01:00