[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH] kernel/syscall: neue Funktion für das Registrieren von Kernel-Syscalls
Am 19.02.2021 um 18:41 hat Nico Mayer geschrieben:
> * Aktuell gibt es lediglich einen Kernel-Syscall(KERN_SYSCALL_PM_SLEEP).
> Dieser Syscall wurde bisher manuell in die globale Syscall-Liste
> eingetragen. Um das Registrieren von Kernel-Syscalls zu vereinfachen,
> implementiert dieser Commit die Funktion syscall_register_full().
S-o-b fehlt auch hier.
Die Beschreibung sollte gleichmäßig eingerückt sein, also:
* Aktuell...
Dieser...
eingetragen...
Wenn du 'git format-patch' nimmst, kannst du -v benutzen, um die Version
des Patchs anzugeben. Dann haben nicht alle Mails denselben Betreff,
sondern man sieht mit [PATCH v3] klar, in welcher Reihenfolge die
Patchversionen gekommen sind (und worauf sich die Antworten beziehen,
wenn man keine Threads im Mailclient hat).
> src/kernel/include/syscall.h | 3 +++
> src/kernel/src/syscall.c | 24 ++++++++++++++++++------
> 2 files changed, 21 insertions(+), 6 deletions(-)
>
> diff --git a/src/kernel/include/syscall.h b/src/kernel/include/syscall.h
> index ad941e85..cd74ac4f 100644
> --- a/src/kernel/include/syscall.h
> +++ b/src/kernel/include/syscall.h
> @@ -70,6 +70,9 @@ void syscall_arch(machine_state_t* isf);
> /// Einen neuen Syscall verfuegbar machen
> void syscall_register(syscall_arg_t number, void* handler, size_t arg_count);
>
> +/// Einen neuen Syscall verfuegbar machen
> +void syscall_register_full(syscall_arg_t number, void* handler, size_t arg_count, bool privileged);
Die Zeile ist länger als 80 Zeichen. Mach es so:
void syscall_register_full(syscall_arg_t number, void* handler,
size_t arg_count, bool privileged);
Oder alternativ die zweite Zeile nur um vier Zeichen aingerückt statt
bis zum Inhalt der Klammer, aber das bringt hier nichts.
> /// Syscalls initialisieren
> void syscall_init(void);
>
> diff --git a/src/kernel/src/syscall.c b/src/kernel/src/syscall.c
> index f74dbebe..68fb4ff2 100644
> --- a/src/kernel/src/syscall.c
> +++ b/src/kernel/src/syscall.c
> @@ -151,11 +151,7 @@ void syscall_init()
> syscall_register(SYSCALL_LIO_SRV_OP_DONE, &syscall_lio_srv_op_done, 3);
> syscall_register(SYSCALL_LIO_SRV_WAIT, &syscall_lio_srv_wait, 0);
>
> - syscalls[KERN_SYSCALL_PM_SLEEP] = (syscall_t) {
> - .handler = &kern_syscall_pm_sleep,
> - .arg_count = 2,
> - .privileged = true,
> - };
> + syscall_register_full(KERN_SYSCALL_PM_SLEEP, &kern_syscall_pm_sleep, 2, true);
Diese Zeile ist auch zu lang.
Kevin