Lines Matching +full:no +full:- +full:dump +full:- +full:oops
1 // SPDX-License-Identifier: GPL-2.0
5 * Hyper-V. This file is specifically for code that must be
6 * built-in to the kernel image when CONFIG_HYPERV is set
26 #include <linux/dma-map-ops.h>
28 #include <asm/hyperv-tlfs.h>
33 * Hyper-V specific globals so they are shared across all architectures and are
66 * Hyper-V specific initialization and shutdown code that is
92 * the guest page size may not be the same as the Hyper-V page
93 * size. We depend upon kmalloc() aligning power-of-two size
95 * allocated memory appears to Hyper-V as a page of the size
131 * Boolean to control whether to report panic messages over Hyper-V.
139 * reported to Hyper-V on panic.
179 /* Don't notify Hyper-V unless we have a die oops event or panic. */ in hv_die_panic_notify_crash()
188 regs = ((struct die_args *)args)->regs; in hv_die_panic_notify_crash()
192 * Hyper-V should be notified only once about a panic/die. If we will in hv_die_panic_notify_crash()
204 * buffer and call into Hyper-V to transfer the data.
217 * Write dump contents to the page. No need to synchronize; panic should in hv_kmsg_dump()
218 * be single-threaded. in hv_kmsg_dump()
228 * registers are no-op when the NOTIFY_MSG flag is set. in hv_kmsg_dump()
237 * Let Hyper-V know there is crash data available along with in hv_kmsg_dump()
246 .dump = hv_kmsg_dump,
266 pr_err("Hyper-V: panic message page memory allocation failed\n"); in hv_kmsg_dump_register()
272 pr_err("Hyper-V: kmsg dump register error 0x%x\n", ret); in hv_kmsg_dump_register()
286 * Hyper-V expects to get crash register data or kmsg when in hv_common_init()
296 pr_info("Hyper-V: enabling crash_kexec_post_notifiers\n"); in hv_common_init()
300 * is enabled by default in non-isolated guests and in hv_common_init()
307 pr_err("Hyper-V: sysctl table register error"); in hv_common_init()
323 * Allocate the per-CPU state for the hypercall input arg. in hv_common_init()
325 * (per-CPU) hypercall input page and thus this failure is in hv_common_init()
326 * fatal on Hyper-V. in hv_common_init()
331 /* Allocate the per-CPU state for output arg for root */ in hv_common_init()
341 return -ENOMEM; in hv_common_init()
351 * Hyper-V specific initialization and die code for
377 return -ENOMEM; in hv_common_cpu_init()
397 * hyperv_pcpu_input_arg is not NULL, set_memory_decrypted() -> in hv_common_cpu_init()
398 * ... -> cpa_flush()-> ... -> __send_ipi_mask_ex() tries to in hv_common_cpu_init()
427 * may be used by the Hyper-V vPCI driver in reassigning interrupts in hv_common_cpu_die()
449 * Hypercall input/output addresses should also be 8-byte aligned. in hv_query_ext_cap()
476 pr_err("Hyper-V: Extended query capabilities hypercall failed 0x%llx\n", in hv_query_ext_cap()
488 * Hyper-V does not offer a vIOMMU in the guest in hv_setup_dma_ops()
502 * Default function to read the Hyper-V reference counter, independent
503 * of whether Hyper-V enlightened clocks/timers are being used. But on
504 * architectures where it is used, Hyper-V enlightenment code in
515 /* These __weak functions provide default "no-op" behavior and
517 * for which the default "no-op" behavior is sufficient can leave
519 * functions in arch-specific code.