/
githubmirror
/
strace
Обзор
Документация
Войти
/
githubmirror
/
strace
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
src/linux/s390/check_scno.c
32 строки
696 B
Dmitry V. Levin
Update copyright headers
16 фев 2021, 11:00
16 фев 2021, 11:00
8fa8a88
Код
Авторство
О чём код?
/* * Copyright (c) 2020-2021 The strace developers. * All rights reserved. * * SPDX-License-Identifier: LGPL-2.1-or-later */ /* Return codes: 1 - ok, 0 - ignore, other - error. */ static int arch_check_scno(struct tcb *tcp) { if (ptrace_sci.entry.nr) return 1; /* * Apparently, arch/s390/include/asm/syscall.h:syscall_get_nr() * returns 0 for out-of-range syscall numbers. * This kernel bug is exposed via PTRACE_GET_SYSCALL_INFO interface. * Workaround it by falling back to get_regs(). */ if (get_regs(tcp) < 0) return -1; arch_get_scno(tcp); if (tcp->scno) { ptrace_sci.entry.nr = tcp->scno; debug_func_msg("fixed scno: 0 -> %#lx", tcp->scno); } return 1; }