// SPDX-License-Identifier: GPL-2.0+ /* * Copyright (c) 2011 The Chromium OS Authors. * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file. */ #include #include #include #include #include #include #include DECLARE_GLOBAL_DATA_PTR; int interrupt_init(void) { return 0; } void enable_interrupts(void) { return; } int disable_interrupts(void) { return 0; } void os_signal_action(int sig, unsigned long pc) { efi_restore_gd(); switch (sig) { case SIGILL: printf("\nIllegal instruction\n"); break; case SIGBUS: printf("\nBus error\n"); break; case SIGSEGV: printf("\nSegmentation violation\n"); break; default: break; } printf("pc = 0x%lx, ", pc); printf("pc_reloc = 0x%lx\n\n", pc - gd->reloc_off); efi_print_image_infos((void *)pc); if (IS_ENABLED(CONFIG_SANDBOX_CRASH_RESET)) { printf("resetting ...\n\n"); sandbox_reset(); } else { sandbox_exit(); } }