Alexey Min
2fb18b5d30
samsung-klte: backport memfd_create() syscall ( !479 )
...
This brings in several patches needed to add support for a
memfd_create() syscall into kernel version 3.4 from kernel
version 3.17. This is required for running lxc >= 3.1.0-r1
with security patch that fixes CVE-2019-5736.
In short, security issue was: in a privileged container root
process could overwrite lxc-start executable by opening its
file descriptor and rewriting executable contents. This is
where memfd comes to help: you can create an in-memory file,
copy your executable there, and place a set of SEALS to protect
it from modifying at a deep level. Then you fexecve() that fd
and you're safe.
For example, pulseaudio also can benefit from having
memfd_create() implemented.
This backports the following commits from upstream linux:
- dd37978c50bc8b354e5c4633f69387f16572fdac: cache the value
of file_inode() in struct file
commit from linux-3.10 to have an f_inode member inside
struct file and a helper function file_inode() that is
used in some of the following commits
- 40e041a2c858b3caefc757e26cb85bfceae5062b shm: add sealing API
from 3.17: security measure called SEALS, that you can put
on memfd file to restrict operations on it
- 9183df25fe7b194563db3fec6dc3202a5855839c shm: add memfd_create()
syscall
also from 3.17
- 503e6636b6f96056210062be703356f4253b6db9 asm-generic: add
memfd_create system call to unistd.h
- e57e41931134e09fc6c03c8d4eb19d516cc6e59b ARM: wire up
memfd_create syscall
The last two are needed to make the syscall visible/usable from
userspace, one in generic context, other for ARM arch.
The test program (https://github.com/minlexx/test_memfd/ ) was
written to verify that this works.
[ci:skip-build]: already built successfully in CI
2019-07-09 21:17:33 +02:00
..
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2019-06-30 18:54:08 +02:00
2019-03-05 09:34:26 +01:00
2019-01-03 10:19:45 +01:00
2018-12-26 21:49:10 +01:00
2019-02-12 22:29:43 +01:00
2019-04-26 22:17:27 +02:00
2019-01-10 22:33:48 +01:00
2018-12-26 21:49:10 +01:00
2019-06-06 22:40:35 +02:00
2019-05-06 22:35:34 +02:00
2019-03-11 09:50:32 +01:00
2019-06-02 03:13:43 +02:00
2019-06-26 23:56:33 +02:00
2018-12-26 21:49:10 +01:00
2019-02-05 09:35:07 +01:00
2019-05-02 23:26:29 +02:00
2018-12-26 21:49:10 +01:00
2019-01-28 21:09:57 +01:00
2018-12-26 21:49:10 +01:00
2019-06-09 21:10:20 +02:00
2019-04-08 20:40:24 +02:00
2019-02-05 09:35:07 +01:00
2019-02-12 21:45:39 +00:00
2019-03-09 19:53:28 +01:00
2019-02-05 09:35:07 +01:00
2018-12-26 21:49:10 +01:00
2019-01-09 08:19:40 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2019-01-23 09:54:12 +01:00
2018-12-26 21:49:10 +01:00
2019-03-11 09:09:10 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2019-05-02 22:13:44 +00:00
2018-12-26 21:49:10 +01:00
2019-06-30 18:54:08 +02:00
2019-06-30 01:40:02 +02:00
2018-12-26 21:49:10 +01:00
2019-05-10 00:20:02 +02:00
2018-12-26 21:49:10 +01:00
2019-02-21 20:25:18 +00:00
2019-02-05 09:35:07 +01:00
2019-02-05 09:35:07 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2019-02-05 09:35:07 +01:00
2018-12-26 21:49:10 +01:00
2019-03-29 08:04:13 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2019-02-05 09:35:07 +01:00
2018-12-26 21:49:10 +01:00
2019-05-31 03:25:21 +02:00
2018-12-26 21:49:10 +01:00
2019-02-26 15:43:27 +00:00
2019-04-12 00:38:38 +02:00
2019-06-02 03:13:43 +02:00
2018-12-26 21:49:10 +01:00
2019-03-07 10:40:09 +01:00
2019-02-05 09:35:07 +01:00
2018-12-26 21:49:10 +01:00
2019-06-02 03:00:58 +02:00
2019-06-02 03:13:43 +02:00
2019-06-02 03:13:43 +02:00
2019-06-20 00:19:29 +02:00
2019-01-21 07:39:41 +01:00
2019-06-02 03:13:43 +02:00
2019-07-06 03:30:37 +02:00
2019-07-06 03:30:37 +02:00
2019-07-06 03:30:37 +02:00
2019-01-03 09:48:39 +01:00
2019-01-06 13:27:53 +01:00
2019-03-29 14:53:47 +01:00
2019-03-28 20:51:18 +00:00
2019-07-03 21:10:28 +02:00
2018-12-26 21:49:10 +01:00
2019-05-09 21:33:42 +00:00
2018-12-26 21:49:10 +01:00
2019-02-13 21:09:48 +00:00
2019-07-06 09:13:19 +02:00
2018-12-26 21:49:10 +01:00
2019-02-28 15:22:56 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2019-04-12 00:38:38 +02:00
2019-02-05 09:35:07 +01:00
2019-04-12 00:38:38 +02:00
2018-12-26 21:49:10 +01:00
2019-04-12 00:38:38 +02:00
2019-01-25 08:32:54 +01:00
2019-06-13 22:08:39 +02:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2019-03-20 08:14:38 +01:00
2019-06-30 19:13:31 +02:00
2019-06-24 20:44:08 +00:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2019-06-02 03:13:43 +02:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2019-06-02 03:13:43 +02:00
2019-06-30 01:40:02 +02:00
2019-06-30 18:54:08 +02:00
2018-12-26 21:49:10 +01:00
2019-03-12 06:49:09 +00:00
2019-06-30 01:40:02 +02:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2019-06-30 18:54:08 +02:00
2019-02-05 09:35:07 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2019-04-04 19:58:24 +02:00
2019-04-12 00:38:38 +02:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2018-12-26 21:49:10 +01:00
2019-02-05 09:35:07 +01:00
2019-04-12 00:38:38 +02:00
2018-12-26 21:49:10 +01:00
2019-02-05 09:35:07 +01:00
2019-06-26 23:26:14 +02:00
2018-12-26 21:49:10 +01:00
2019-05-09 22:56:12 +02:00
2019-02-05 09:25:30 +01:00
2018-12-26 21:49:10 +01:00
2019-04-26 22:58:24 +02:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2019-03-05 09:34:26 +01:00
2019-06-30 17:10:31 +02:00
2018-12-01 12:10:10 +01:00
2019-02-12 22:29:43 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2019-06-06 22:40:35 +02:00
2019-05-06 22:35:34 +02:00
2019-03-28 15:06:54 +00:00
2019-01-30 09:39:49 +01:00
2019-06-30 01:40:02 +02:00
2019-06-26 23:56:33 +02:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2019-05-02 23:26:29 +02:00
2018-12-01 12:10:10 +01:00
2019-01-28 21:09:57 +01:00
2018-12-01 12:10:10 +01:00
2019-06-09 21:10:20 +02:00
2019-04-08 20:40:24 +02:00
2018-12-01 12:10:10 +01:00
2019-02-12 21:45:39 +00:00
2019-02-28 09:49:11 +01:00
2018-12-01 12:10:10 +01:00
2019-01-21 07:12:00 +01:00
2019-01-09 08:19:40 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2019-03-11 09:09:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2019-05-02 22:13:44 +00:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-03 22:37:05 +01:00
2019-05-10 00:20:02 +02:00
2018-12-01 12:10:10 +01:00
2019-02-21 20:25:18 +00:00
2018-12-01 12:10:10 +01:00
2019-02-05 09:53:35 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2019-03-29 08:04:13 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2019-05-31 03:25:21 +02:00
2018-12-01 12:10:10 +01:00
2019-05-26 18:07:11 +00:00
2018-12-01 12:10:10 +01:00
2019-03-29 10:19:38 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2019-06-13 23:47:10 +00:00
2019-03-10 02:19:51 +01:00
2019-03-18 07:36:16 +01:00
2019-01-21 07:39:41 +01:00
2019-02-25 20:29:00 +00:00
2019-05-23 20:51:08 +00:00
2019-07-03 21:10:28 +02:00
2018-12-01 12:10:10 +01:00
2019-05-09 21:33:42 +00:00
2019-05-09 21:39:16 +00:00
2019-02-13 21:09:48 +00:00
2019-04-15 20:28:26 +02:00
2018-12-01 12:10:10 +01:00
2019-02-28 15:22:56 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2019-04-08 20:45:42 +02:00
2018-12-01 12:10:10 +01:00
2018-12-03 22:37:05 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2019-01-25 08:34:30 +01:00
2019-07-09 21:17:33 +02:00
2018-12-01 12:10:10 +01:00
2018-12-24 00:08:50 +01:00
2019-05-08 22:19:41 +02:00
2018-12-01 12:10:10 +01:00
2019-03-20 08:14:38 +01:00
2019-06-30 19:13:31 +02:00
2019-06-24 20:44:08 +00:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2019-06-30 01:40:02 +02:00
2019-03-05 09:20:40 +01:00
2018-12-05 08:13:35 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2019-01-25 08:41:17 +01:00
2018-12-03 22:37:05 +01:00
2018-12-01 12:10:10 +01:00
2019-01-28 21:14:52 +01:00
2019-03-09 19:43:36 +00:00
2019-01-28 09:19:49 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-03 22:37:05 +01:00
2018-12-22 23:30:02 +01:00
2018-12-18 08:00:09 +01:00
2018-12-01 12:10:10 +01:00
2019-06-30 18:46:37 +02:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2019-01-25 09:53:12 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2018-12-01 12:10:10 +01:00
2019-06-26 23:26:14 +02:00
2018-12-01 12:10:10 +01:00
2019-05-25 00:47:56 +02:00
2019-02-05 09:25:30 +01:00
2018-12-01 12:10:10 +01:00
2019-04-26 22:58:24 +02:00
2019-03-01 16:53:33 -08:00