From: Simone Piccardi Date: Thu, 15 Oct 2020 08:48:23 +0000 (+0200) Subject: Merge branch 'master' of ssh://roach.truelite.it/srv/git/gapil X-Git-Url: https://gapil.gnulinux.it/gitweb/?p=gapil.git;a=commitdiff_plain;h=29f18e0581de602762b8ba590132f85d7888bdc2;hp=6cc1526b5d5d527a6c7ce8064ede543859fd86b8 Merge branch 'master' of ssh://roach.truelite.it/srv/git/gapil --- diff --git a/fileadv.tex b/fileadv.tex index c3300a6..9f4d6de 100644 --- a/fileadv.tex +++ b/fileadv.tex @@ -2788,6 +2788,9 @@ definita la macro \macro{\_GNU\_SOURCE} prima di includere \headfile{fcntl.h}. \itindbeg{file~lease} +% TODO: questa funzionalità potrebbe essere estesa vedi: +% https://lwn.net/Articles/796000/ + La prima di queste funzionalità è quella del cosiddetto \textit{file lease}; questo è un meccanismo che consente ad un processo, detto \textit{lease holder}, di essere notificato quando un altro processo, chiamato a sua volta @@ -4721,7 +4724,11 @@ caching dei dati. % TODO aggiunta MADV_WIPEONFORK dal kernel 4.14 that causes the affected memory % region to appear to be full of zeros in the child process after a fork. It % differs from the existing MADV_DONTFORK in that the address range will -% remain valid in the child (dalla notizia in https://lwn.net/Articles/733256/). +% remain valid in the child (dalla notizia in +% https://lwn.net/Articles/733256/). +% TODO aggiunte MADV_COLD e MADV_PAGEOUT dal kernel 5.4, vedi +% https://git.kernel.org/linus/9c276cc65a58 e +% https://git.kernel.org/linus/1a4e58cce84e \footnotetext{a partire dal kernel 2.6.32 è stato introdotto un meccanismo che identifica pagine di memoria identiche e le accorpa in una unica pagina diff --git a/fileio.tex b/fileio.tex index 3bd9db3..f630562 100644 --- a/fileio.tex +++ b/fileio.tex @@ -1847,6 +1847,9 @@ riferimento ad una directory, tranne il caso in cui si sia specificato un \textit{pathname} assoluto, nel qual caso, come detto, il valore di \param{dirfd} sarà completamente ignorato. +% TODO: trattare openat2, introdotta con il kernel 5.6, vedi +% https://lwn.net/Articles/796868/ e https://git.kernel.org/linus/b55eef872a96 + \begin{table}[htb] \centering \footnotesize @@ -1971,6 +1974,9 @@ perché non avrebbe molto senso cambiare i permessi di un link simbolico) e pertanto l'uso della funzione è analogo a quello delle altre funzioni che non hanno l'argomento \param{flags} (e non la tratteremo esplicitamente). +% TODO: documentare l'introduzione di fchmodat4() se e quando ci sarà, vedi +% https://lwn.net/Articles/792628/ + L'altro flag comune è \const{AT\_EMPTY\_PATH}, utilizzabile a partire dal kernel 2.6.39, che consente di usare per \param{dirfd} un file descriptor associato ad un file qualunque e non necessariamente ad una directory; in diff --git a/procadv.tex b/procadv.tex index fe057f8..ebef643 100644 --- a/procadv.tex +++ b/procadv.tex @@ -1498,7 +1498,8 @@ alcune opzioni di controllo attivabili via \func{sysctl} o il filesystem % TODO documentare la syscall getrandom, introdotta con il kernel 3.17, vedi % http://lwn.net/Articles/606141/, ed introdotta con le glibc solo con la -% versione 2.25, vedi https://lwn.net/Articles/711013/ +% versione 2.25 con getentropy, vedi https://lwn.net/Articles/711013/ ed i +% problemi successivi vedi https://lwn.net/Articles/800509/ %\subsection{La gestione delle chiavi crittografiche} %\label{sec:keyctl_management} @@ -1891,6 +1892,9 @@ Introdotta a partire dal kernel 2.4.21, solo su PowerPC. % TODO documentare PR_SPEC_DISABLE_NOEXEC in 5.1, vedi % https://lwn.net/Articles/782511/ +% TODO documentare PR_SET_IO_FLUSHER in 5.6, vedi +% https://lwn.net/Articles/811230/ + \label{sec:prctl_operation} \end{basedescript} @@ -2223,7 +2227,9 @@ degli altri gruppi, che costituisce poi quello che viene chiamato un % TODO: trattare userfaultfd, introdotta con il 4.23, vedi -% http://man7.org/linux/man-pages/man2/userfaultfd.2.html +% http://man7.org/linux/man-pages/man2/userfaultfd.2.html, +% https://lwn.net/Articles/787308/, https://git.kernel.org/linus/57e5d4f278b9 + % TODO: trattare process_vm_readv/process_vm_writev introdotte con il kernel % 3.2, vedi http://man7.org/linux/man-pages/man2/process_vm_readv.2.html e i diff --git a/signal.tex b/signal.tex index 8159d3f..2ec1761 100644 --- a/signal.tex +++ b/signal.tex @@ -3846,10 +3846,10 @@ tipo \type{sigjmp\_buf}, è assolutamente identica a \func{longjmp}. \label{sec:sig_pid_fd} -% TODO: trattare (qui?) pidfd_send_signal() introdotta con il kernel 5.1 vedi +% TODO: trattare (qui? oppure sopra in "Ulteriori funzioni di gestione?) +% pidfd_send_signal() introdotta con il kernel 5.1 vedi % https://lwn.net/Articles/784831/, https://lwn.net/Articles/773459/ e -% https://lwn.net/Articles/801319/ -% oppure sopra in "Ulteriori funzioni di gestione" +% https://lwn.net/Articles/801319/ % TODO: Nuova subsection sui pidfd, e le funzioni correlate, in particolare: % trattare pidfd_send_signal, aggiunta con il kernel 5.1 (vedi @@ -3859,7 +3859,7 @@ tipo \type{sigjmp\_buf}, è assolutamente identica a \func{longjmp}. % trattare pure pidfd_open() (vedi https://lwn.net/Articles/789023/) per % ottere un pid fd pollabile aggiunta con il kernel 5.3 % man pidfd_send_signal su le versioni più recenti della man pages - +% trattare pidfd_getfd aggiunta con il kernel 5.6