1cd377eb3SJohn Baldwin /*- 24d846d26SWarner Losh * SPDX-License-Identifier: BSD-2-Clause 3cd377eb3SJohn Baldwin * 4cd377eb3SJohn Baldwin * Copyright (c) 2017 John H. Baldwin <jhb@FreeBSD.org> 5cd377eb3SJohn Baldwin * 6cd377eb3SJohn Baldwin * Redistribution and use in source and binary forms, with or without 7cd377eb3SJohn Baldwin * modification, are permitted provided that the following conditions 8cd377eb3SJohn Baldwin * are met: 9cd377eb3SJohn Baldwin * 1. Redistributions of source code must retain the above copyright 10cd377eb3SJohn Baldwin * notice, this list of conditions and the following disclaimer. 11cd377eb3SJohn Baldwin * 2. Redistributions in binary form must reproduce the above copyright 12cd377eb3SJohn Baldwin * notice, this list of conditions and the following disclaimer in the 13cd377eb3SJohn Baldwin * documentation and/or other materials provided with the distribution. 14cd377eb3SJohn Baldwin * 15cd377eb3SJohn Baldwin * THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND 16cd377eb3SJohn Baldwin * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 17cd377eb3SJohn Baldwin * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 18cd377eb3SJohn Baldwin * ARE DISCLAIMED. IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE 19cd377eb3SJohn Baldwin * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 20cd377eb3SJohn Baldwin * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 21cd377eb3SJohn Baldwin * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 22cd377eb3SJohn Baldwin * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 23cd377eb3SJohn Baldwin * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 24cd377eb3SJohn Baldwin * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 25cd377eb3SJohn Baldwin * SUCH DAMAGE. 26cd377eb3SJohn Baldwin */ 27cd377eb3SJohn Baldwin 28cd377eb3SJohn Baldwin #ifndef __GDB_H__ 29cd377eb3SJohn Baldwin #define __GDB_H__ 30cd377eb3SJohn Baldwin 317d9ef309SJohn Baldwin void gdb_cpu_add(struct vcpu *vcpu); 327d9ef309SJohn Baldwin void gdb_cpu_breakpoint(struct vcpu *vcpu, struct vm_exit *vmexit); 337d9ef309SJohn Baldwin void gdb_cpu_mtrap(struct vcpu *vcpu); 347d9ef309SJohn Baldwin void gdb_cpu_suspend(struct vcpu *vcpu); 35*ca96a942SBojan Novković void gdb_cpu_debug(struct vcpu *vcpu, struct vm_exit *vmexit); 362cdff991SMariusz Zaborski void init_gdb(struct vmctx *ctx); 37cd377eb3SJohn Baldwin 38cd377eb3SJohn Baldwin #endif /* !__GDB_H__ */ 39