gvisor/pkg/sentry/arch
Etienne Perot 6f60a2b0a2 Implement `fcntl` options `F_GETSIG` and `F_SETSIG`.
These options allow overriding the signal that gets sent to the process when
I/O operations are available on the file descriptor, rather than the default
`SIGIO` signal. Doing so also populates `siginfo` to contain extra information
about which file descriptor caused the event (`si_fd`) and what events happened
on it (`si_band`). The logic around which FD is populated within `si_fd`
matches Linux's, which means it has some weird edge cases where that value may
not actually refer to a file descriptor that is still valid.

This CL also ports extra S/R logic regarding async handler in VFS2.
Without this, async I/O handlers aren't properly re-registered after S/R.

PiperOrigin-RevId: 345436598
2020-12-03 06:20:29 -08:00
..
BUILD Replace remaining uses of reflection-based marshalling. 2020-09-29 18:08:07 -07:00
aligned.go
arch.go Enable automated marshalling for the syscall package. 2020-09-15 23:38:57 -07:00
arch_aarch64.go arm64: some minor changes 2020-09-25 03:32:57 -04:00
arch_amd64.go Enable automated marshalling for the syscall package. 2020-09-15 23:38:57 -07:00
arch_amd64.s
arch_arm64.go Enable automated marshalling for the syscall package. 2020-09-15 23:38:57 -07:00
arch_state_x86.go
arch_x86.go
arch_x86_impl.go
auxv.go
registers.proto arm64: some minor changes 2020-09-25 03:32:57 -04:00
signal.go Implement `fcntl` options `F_GETSIG` and `F_SETSIG`. 2020-12-03 06:20:29 -08:00
signal_act.go Move the 'marshal' and 'primitive' packages to the 'pkg' directory. 2020-09-11 17:42:49 -07:00
signal_amd64.go Replace remaining uses of reflection-based marshalling. 2020-09-29 18:08:07 -07:00
signal_arm64.go Replace remaining uses of reflection-based marshalling. 2020-09-29 18:08:07 -07:00
signal_info.go
signal_stack.go Move the 'marshal' and 'primitive' packages to the 'pkg' directory. 2020-09-11 17:42:49 -07:00
stack.go Replace remaining uses of reflection-based marshalling. 2020-09-29 18:08:07 -07:00
stack_unsafe.go Replace remaining uses of reflection-based marshalling. 2020-09-29 18:08:07 -07:00
syscalls_amd64.go
syscalls_arm64.go