<feed xmlns='http://www.w3.org/2005/Atom'>
<title>grovel/arch/riscv64/bits, branch main</title>
<subtitle>Unnamed repository; edit this file 'description' to name the repository.
</subtitle>
<id>http://euandre.org/git/grovel/atom?h=main</id>
<link rel='self' href='http://euandre.org/git/grovel/atom?h=main'/>
<link rel='alternate' type='text/html' href='http://euandre.org/git/grovel/'/>
<updated>2023-02-09T17:33:35Z</updated>
<entry>
<title>fix wrong sigaction syscall ABI on mips*, or1k, microblaze, riscv64</title>
<updated>2023-02-09T17:33:35Z</updated>
<author>
<name>Rich Felker</name>
<email>dalias@aerifal.cx</email>
</author>
<published>2023-02-09T16:52:44Z</published>
<link rel='alternate' type='text/html' href='http://euandre.org/git/grovel/commit/?id=269d193820342dc109f39909d78fb30f4c978f76'/>
<id>urn:sha1:269d193820342dc109f39909d78fb30f4c978f76</id>
<content type='text'>
we wrongly defined a dummy SA_RESTORER flag on these archs, despite
the kernel interface not actually having such a feature. on archs
which lack SA_RESTORER, the kernel sigaction structure also lacks the
restorer function pointer member, which means the signal mask appears
at a different offset. the kernel was thereby interpreting the bits of
the code address as part of the signal set to be masked while handling
the signal.

this patch removes the erroneous SA_RESTORER definitions from archs
which do not have it, makes access to the member conditional on
whether SA_RESTORER is defined for the arch, and removes the
now-unused asm for the affected archs.

because there are reportedly versions of qemu-user which also use the
wrong ABI here, the old ksigaction struct size is preserved with an
unused member at the end. this is harmless and mitigates the risk of
such a bug turning into a buffer overflow onto the sigaction
function's stack.
</content>
</entry>
<entry>
<title>bits/syscall.h: add landlock syscalls from linux v5.13</title>
<updated>2022-03-08T22:21:14Z</updated>
<author>
<name>Szabolcs Nagy</name>
<email>nsz@port70.net</email>
</author>
<published>2021-07-04T16:34:15Z</published>
<link rel='alternate' type='text/html' href='http://euandre.org/git/grovel/commit/?id=ee05b11b67d59a6c5bb4b9d661bcc20bbd0bbe7a'/>
<id>urn:sha1:ee05b11b67d59a6c5bb4b9d661bcc20bbd0bbe7a</id>
<content type='text'>
see

  linux commit a49f4f81cb48925e8d7cbd9e59068f516e984144
  arch: Wire up Landlock syscalls

  linuxcommit 17ae69aba89dbfa2139b7f8024b757ab3cc42f59
  Merge tag 'landlock_v34' of ... jmorris/linux-security

Landlock provides for unprivileged application sandboxing. The goal of
Landlock is to enable to restrict ambient rights (e.g. global filesystem
access) for a set of processes. Landlock is inspired by seccomp-bpf but
instead of filtering syscalls and their raw arguments, a Landlock rule
can restrict the use of kernel objects like file hierarchies, according
to the kernel semantic.
</content>
</entry>
<entry>
<title>bits/syscall.h: add mount_setattr from linux v5.12</title>
<updated>2022-03-08T22:19:51Z</updated>
<author>
<name>Szabolcs Nagy</name>
<email>nsz@port70.net</email>
</author>
<published>2021-05-25T20:53:18Z</published>
<link rel='alternate' type='text/html' href='http://euandre.org/git/grovel/commit/?id=f7d3db5bfc4c3b2315dd8c3137f0f332e1c6896a'/>
<id>urn:sha1:f7d3db5bfc4c3b2315dd8c3137f0f332e1c6896a</id>
<content type='text'>
new syscall to change the properties of a mount or a mount tree using
file descriptors which the new mount api is based on, see

  linux commit 2a1867219c7b27f928e2545782b86daaf9ad50bd
  fs: add mount_setattr()
</content>
</entry>
<entry>
<title>bits/syscall.h: add epoll_pwait2 from linux v5.11</title>
<updated>2022-03-08T22:19:36Z</updated>
<author>
<name>Szabolcs Nagy</name>
<email>nsz@port70.net</email>
</author>
<published>2021-03-07T19:21:34Z</published>
<link rel='alternate' type='text/html' href='http://euandre.org/git/grovel/commit/?id=b21f3ded780cc8fd8e510c99aeaf4a453d8c8a22'/>
<id>urn:sha1:b21f3ded780cc8fd8e510c99aeaf4a453d8c8a22</id>
<content type='text'>
see

  linux commit b0a0c2615f6f199a656ed8549d7dce625d77aa77
  epoll: wire up syscall epoll_pwait2

  linux commit 58169a52ebc9a733aeb5bea857bc5daa71a301bb
  epoll: add syscall epoll_pwait2

epoll_wait with struct timespec timeout instead of int. no time32 variant.
</content>
</entry>
<entry>
<title>riscv: rename __NR_fstatat __NR_newfstatat</title>
<updated>2021-06-05T15:47:16Z</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2021-05-19T07:34:03Z</published>
<link rel='alternate' type='text/html' href='http://euandre.org/git/grovel/commit/?id=1f0c7cb1cc2170bf230623dc0b57d9a9f001af08'/>
<id>urn:sha1:1f0c7cb1cc2170bf230623dc0b57d9a9f001af08</id>
<content type='text'>
on riscv64 this syscall is called __NR_newfstatat
this helps the name match kernel UAPI for external
programs
</content>
</entry>
<entry>
<title>bits/syscall.h: add process_madvise from linux v5.10</title>
<updated>2021-02-15T14:15:54Z</updated>
<author>
<name>Szabolcs Nagy</name>
<email>nsz@port70.net</email>
</author>
<published>2020-12-19T20:12:31Z</published>
<link rel='alternate' type='text/html' href='http://euandre.org/git/grovel/commit/?id=fd285f9dec226ca9e5377888ee24e3f8f5ada49f'/>
<id>urn:sha1:fd285f9dec226ca9e5377888ee24e3f8f5ada49f</id>
<content type='text'>
mainly added to linux to allow a central process management service in
android to give MADV_COLD|PAGEOUT hints for other processes, see

  linux commit ecb8ac8b1f146915aa6b96449b66dd48984caacc
  mm/madvise: introduce process_madvise() syscall: an external memory
  hinting API
</content>
</entry>
<entry>
<title>riscv64: define ELF_NFPREG</title>
<updated>2021-02-13T03:16:38Z</updated>
<author>
<name>Khem Raj</name>
<email>raj.khem@gmail.com</email>
</author>
<published>2021-01-11T17:40:33Z</published>
<link rel='alternate' type='text/html' href='http://euandre.org/git/grovel/commit/?id=e5d2823631bbfebacf48e1a34ed28f28d7cb2570'/>
<id>urn:sha1:e5d2823631bbfebacf48e1a34ed28f28d7cb2570</id>
<content type='text'>
ELF_NFPREG is used by some userspace applications like gdb
</content>
</entry>
<entry>
<title>riscv64: fix inconsistent ucontext_t struct tag</title>
<updated>2020-12-06T17:07:16Z</updated>
<author>
<name>Drew DeVault</name>
<email>sir@cmpwn.com</email>
</author>
<published>2020-12-05T18:10:06Z</published>
<link rel='alternate' type='text/html' href='http://euandre.org/git/grovel/commit/?id=56f0631d9553dc06530ff661527cf1fcd595a0d1'/>
<id>urn:sha1:56f0631d9553dc06530ff661527cf1fcd595a0d1</id>
<content type='text'>
ucontext.h depends on the internal struct tag name for namespacing
reasons, and the intent was always for it to be consistent across
archs anyway.
</content>
</entry>
<entry>
<title>bits/syscall.h: add __NR_close_range from linux v5.9</title>
<updated>2020-11-29T05:54:14Z</updated>
<author>
<name>Szabolcs Nagy</name>
<email>nsz@port70.net</email>
</author>
<published>2020-10-24T10:15:43Z</published>
<link rel='alternate' type='text/html' href='http://euandre.org/git/grovel/commit/?id=3ba370fe8d9f450d351d710066fa20afad8ce3df'/>
<id>urn:sha1:3ba370fe8d9f450d351d710066fa20afad8ce3df</id>
<content type='text'>
see

  linux commit 9b4feb630e8e9801603f3cab3a36369e3c1cf88d
  arch: wire-up close_range()

  linux commit 278a5fbaed89dacd04e9d052f4594ffd0e0585de
  open: add close_range()
</content>
</entry>
<entry>
<title>bits/syscall.h: add __NR_faccessat2 from linux v5.8</title>
<updated>2020-09-09T21:21:03Z</updated>
<author>
<name>Szabolcs Nagy</name>
<email>nsz@port70.net</email>
</author>
<published>2020-07-28T21:17:13Z</published>
<link rel='alternate' type='text/html' href='http://euandre.org/git/grovel/commit/?id=9b7ed9702ce8925a5a947ad3bdbba126fe955aaf'/>
<id>urn:sha1:9b7ed9702ce8925a5a947ad3bdbba126fe955aaf</id>
<content type='text'>
the linux faccessat syscall lacks a flag argument that is necessary
to implement the posix api, see

  linux commit c8ffd8bcdd28296a198f237cc595148a8d4adfbe
  vfs: add faccessat2 syscall
</content>
</entry>
</feed>
