Мой вопрос несколько отличается от других, которые спрашивают о адресах ошибок. Я пытаюсь реализовать ужасный хак, чтобы определить, с помощью обработчика сигнала, прервал ли сигнал системный вызов или обычный пользовательский код, проверив код в сохраненном указателе инструкции и сравнив его с возможными инструкциями ввода syscall для архитектуры хоста работает на. Это часть реализации правильной отмены потока POSIX, которая не страдает от состояния гонки и утечки ресурсов, описанной в моем старом вопросе:
Как должны срабатывать точки отмены POSIX?
Если этот подход ненадежен или не соответствует действительности, я также хотел бы услышать причины.