Date: Sun, 02 Apr 2023 21:17:05 +0000 From: bugzilla-noreply@freebsd.org To: ports-bugs@FreeBSD.org Subject: [Bug 270609] sysutils/grub2-bhyve: build failure to do libvmmapi ABI changes Message-ID: <bug-270609-7788-Xii5MiNNt6@https.bugs.freebsd.org/bugzilla/> In-Reply-To: <bug-270609-7788@https.bugs.freebsd.org/bugzilla/> References: <bug-270609-7788@https.bugs.freebsd.org/bugzilla/>
next in thread | previous in thread | raw e-mail | index | archive | help
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D270609 --- Comment #2 from R. Christian McDonald <rcm@rcm.sh> --- kern/emu/bhyve_hostif.c: In function 'grub_emu_bhyve_init': kern/emu/bhyve_hostif.c:103:28: warning: passing argument 1 of 'vm_get_capability' from incompatible pointer type [-Wincompatible-pointer-types] 103 | err =3D vm_get_capability (bhyve_ctx, 0, VM_CAP_UNRESTRICTED_GUES= T, &val); | ^~~~~~~~~ | | | struct vmctx * In file included from kern/emu/bhyve_hostif.c:18: /usr/include/vmmapi.h:181:40: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 181 | int vm_get_capability(struct vcpu *vcpu, enum vm_cap_type cap, | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:103:42: warning: passing argument 3 of 'vm_get_capability' makes pointer from integer without a cast [-Wint-conversion] 103 | err =3D vm_get_capability (bhyve_ctx, 0, VM_CAP_UNRESTRICTED_GUES= T, &val); | ^~~~~~~~~~~~~~~~~~~~~~~~~ | | | int /usr/include/vmmapi.h:182:32: note: expected 'int *' but argument is of type 'int' 182 | int *retval); | ~~~~~^~~~~~ kern/emu/bhyve_hostif.c:103:9: error: too many arguments to function 'vm_get_capability' 103 | err =3D vm_get_capability (bhyve_ctx, 0, VM_CAP_UNRESTRICTED_GUES= T, &val); | ^~~~~~~~~~~~~~~~~ /usr/include/vmmapi.h:181:9: note: declared here 181 | int vm_get_capability(struct vcpu *vcpu, enum vm_cap_type cap, | ^~~~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:110:28: warning: passing argument 1 of 'vm_set_capability' from incompatible pointer type [-Wincompatible-pointer-types] 110 | err =3D vm_set_capability (bhyve_ctx, 0, VM_CAP_UNRESTRICTED_GUES= T, 1); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:183:40: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 183 | int vm_set_capability(struct vcpu *vcpu, enum vm_cap_type cap, | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:110:9: error: too many arguments to function 'vm_set_capability' 110 | err =3D vm_set_capability (bhyve_ctx, 0, VM_CAP_UNRESTRICTED_GUES= T, 1); | ^~~~~~~~~~~~~~~~~ /usr/include/vmmapi.h:183:9: note: declared here 183 | int vm_set_capability(struct vcpu *vcpu, enum vm_cap_type cap, | ^~~~~~~~~~~~~~~~~ In file included from kern/emu/bhyve_hostif.c:10: kern/emu/bhyve_hostif.c: In function 'grub_emu_bhyve_boot32': kern/emu/bhyve_hostif.c:195:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 195 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_CR0, cr0) =3D= =3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:195:10: error: too many arguments to function 'vm_set_register' 195 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_CR0, cr0) =3D= =3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:198:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 198 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_CR4, cr4) =3D= =3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:198:10: error: too many arguments to function 'vm_set_register' 198 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_CR4, cr4) =3D= =3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:204:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 204 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RFLAGS, rflags)= =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:204:10: error: too many arguments to function 'vm_set_register' 204 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RFLAGS, rflags)= =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:214:22: warning: passing argument 1 of 'vm_set_desc' from incompatible pointer type [-Wincompatible-pointer-types] 214 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_CS, | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:147:34: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:214:10: error: too many arguments to function 'vm_set_desc' 214 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_CS, | ^~~~~~~~~~~ /usr/include/vmmapi.h:147:9: note: declared here 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ^~~~~~~~~~~ kern/emu/bhyve_hostif.c:218:22: warning: passing argument 1 of 'vm_set_desc' from incompatible pointer type [-Wincompatible-pointer-types] 218 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_DS, | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:147:34: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:218:10: error: too many arguments to function 'vm_set_desc' 218 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_DS, | ^~~~~~~~~~~ /usr/include/vmmapi.h:147:9: note: declared here 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ^~~~~~~~~~~ kern/emu/bhyve_hostif.c:224:22: warning: passing argument 1 of 'vm_set_desc' from incompatible pointer type [-Wincompatible-pointer-types] 224 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_ES, | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:147:34: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:224:10: error: too many arguments to function 'vm_set_desc' 224 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_ES, | ^~~~~~~~~~~ /usr/include/vmmapi.h:147:9: note: declared here 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ^~~~~~~~~~~ kern/emu/bhyve_hostif.c:226:22: warning: passing argument 1 of 'vm_set_desc' from incompatible pointer type [-Wincompatible-pointer-types] 226 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_FS, | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:147:34: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:226:10: error: too many arguments to function 'vm_set_desc' 226 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_FS, | ^~~~~~~~~~~ /usr/include/vmmapi.h:147:9: note: declared here 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ^~~~~~~~~~~ kern/emu/bhyve_hostif.c:228:22: warning: passing argument 1 of 'vm_set_desc' from incompatible pointer type [-Wincompatible-pointer-types] 228 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_GS, | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:147:34: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:228:10: error: too many arguments to function 'vm_set_desc' 228 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_GS, | ^~~~~~~~~~~ /usr/include/vmmapi.h:147:9: note: declared here 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ^~~~~~~~~~~ kern/emu/bhyve_hostif.c:230:22: warning: passing argument 1 of 'vm_set_desc' from incompatible pointer type [-Wincompatible-pointer-types] 230 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_SS, | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:147:34: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:230:10: error: too many arguments to function 'vm_set_desc' 230 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_SS, | ^~~~~~~~~~~ /usr/include/vmmapi.h:147:9: note: declared here 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ^~~~~~~~~~~ kern/emu/bhyve_hostif.c:239:22: warning: passing argument 1 of 'vm_set_desc' from incompatible pointer type [-Wincompatible-pointer-types] 239 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_TR, 0x1000, 0x67, | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:147:34: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:239:10: error: too many arguments to function 'vm_set_desc' 239 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_TR, 0x1000, 0x67, | ^~~~~~~~~~~ /usr/include/vmmapi.h:147:9: note: declared here 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ^~~~~~~~~~~ kern/emu/bhyve_hostif.c:242:22: warning: passing argument 1 of 'vm_set_desc' from incompatible pointer type [-Wincompatible-pointer-types] 242 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_LDTR, 0, 0xffff, | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:147:34: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:242:10: error: too many arguments to function 'vm_set_desc' 242 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_LDTR, 0, 0xffff, | ^~~~~~~~~~~ /usr/include/vmmapi.h:147:9: note: declared here 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ^~~~~~~~~~~ kern/emu/bhyve_hostif.c:246:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 246 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_CS, gsel) =3D= =3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:246:10: error: too many arguments to function 'vm_set_register' 246 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_CS, gsel) =3D= =3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:249:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 249 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_DS, gsel) =3D= =3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:249:10: error: too many arguments to function 'vm_set_register' 249 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_DS, gsel) =3D= =3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:250:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 250 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_ES, gsel) =3D= =3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:250:10: error: too many arguments to function 'vm_set_register' 250 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_ES, gsel) =3D= =3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:251:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 251 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_FS, gsel) =3D= =3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:251:10: error: too many arguments to function 'vm_set_register' 251 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_FS, gsel) =3D= =3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:252:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 252 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_GS, gsel) =3D= =3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:252:10: error: too many arguments to function 'vm_set_register' 252 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_GS, gsel) =3D= =3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:253:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 253 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_SS, gsel) =3D= =3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:253:10: error: too many arguments to function 'vm_set_register' 253 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_SS, gsel) =3D= =3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:257:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 257 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_TR, gsel) =3D= =3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:257:10: error: too many arguments to function 'vm_set_register' 257 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_TR, gsel) =3D= =3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:260:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 260 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_LDTR, 0) =3D=3D= 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:260:10: error: too many arguments to function 'vm_set_register' 260 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_LDTR, 0) =3D=3D= 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:267:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 267 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RIP, rs.eip) = =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:267:10: error: too many arguments to function 'vm_set_register' 267 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RIP, rs.eip) = =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:276:22: warning: passing argument 1 of 'vm_set_desc' from incompatible pointer type [-Wincompatible-pointer-types] 276 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_GDTR, desc_base, | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:147:34: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:276:10: error: too many arguments to function 'vm_set_desc' 276 | assert(vm_set_desc(bhyve_ctx, 0, VM_REG_GUEST_GDTR, desc_base, | ^~~~~~~~~~~ /usr/include/vmmapi.h:147:9: note: declared here 147 | int vm_set_desc(struct vcpu *vcpu, int reg, | ^~~~~~~~~~~ kern/emu/bhyve_hostif.c:282:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 282 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RSP, rs.esp) = =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:282:10: error: too many arguments to function 'vm_set_register' 282 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RSP, rs.esp) = =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:287:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 287 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RSI, rs.esi) = =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:287:10: error: too many arguments to function 'vm_set_register' 287 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RSI, rs.esi) = =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:294:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 294 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RBP, rs.ebp) = =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:294:10: error: too many arguments to function 'vm_set_register' 294 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RBP, rs.ebp) = =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:295:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 295 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RDI, rs.edi) = =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:295:10: error: too many arguments to function 'vm_set_register' 295 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RDI, rs.edi) = =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:296:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 296 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RBX, rs.ebx) = =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:296:10: error: too many arguments to function 'vm_set_register' 296 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RBX, rs.ebx) = =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:298:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 298 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RAX, rs.eax) = =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:298:10: error: too many arguments to function 'vm_set_register' 298 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RAX, rs.eax) = =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:299:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 299 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RCX, rs.ecx) = =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:299:10: error: too many arguments to function 'vm_set_register' 299 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RCX, rs.ecx) = =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:300:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 300 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RDX, rs.edx) = =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:300:10: error: too many arguments to function 'vm_set_register' 300 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RDX, rs.edx) = =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c: In function 'grub_emu_bhyve_boot64': kern/emu/bhyve_hostif.c:341:38: warning: passing argument 1 of 'vm_setup_freebsd_registers' from incompatible pointer type [-Wincompatible-pointer-types] 341 | error =3D vm_setup_freebsd_registers(bhyve_ctx, 0, rs.rip, rs.cr3, | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:257:49: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 257 | int vm_setup_freebsd_registers(struct vcpu *vcpu, | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:341:11: error: too many arguments to function 'vm_setup_freebsd_registers' 341 | error =3D vm_setup_freebsd_registers(bhyve_ctx, 0, rs.rip, rs.cr3, | ^~~~~~~~~~~~~~~~~~~~~~~~~~ /usr/include/vmmapi.h:257:9: note: declared here 257 | int vm_setup_freebsd_registers(struct vcpu *vcpu, | ^~~~~~~~~~~~~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:346:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 346 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RAX, rs.rax) = =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:346:10: error: too many arguments to function 'vm_set_register' 346 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RAX, rs.rax) = =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:347:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 347 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RBX, rs.rbx) = =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:347:10: error: too many arguments to function 'vm_set_register' 347 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RBX, rs.rbx) = =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:348:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 348 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RCX, rs.rcx) = =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:348:10: error: too many arguments to function 'vm_set_register' 348 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RCX, rs.rcx) = =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:349:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 349 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RDX, rs.rdx) = =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:349:10: error: too many arguments to function 'vm_set_register' 349 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RDX, rs.rdx) = =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ kern/emu/bhyve_hostif.c:350:26: warning: passing argument 1 of 'vm_set_register' from incompatible pointer type [-Wincompatible-pointer-ty= pes] 350 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RSI, rs.rsi) = =3D=3D 0); | ^~~~~~~~~ | | | struct vmctx * /usr/include/vmmapi.h:152:38: note: expected 'struct vcpu *' but argument i= s of type 'struct vmctx *' 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ~~~~~~~~~~~~~^~~~ kern/emu/bhyve_hostif.c:350:10: error: too many arguments to function 'vm_set_register' 350 | assert(vm_set_register(bhyve_ctx, 0, VM_REG_GUEST_RSI, rs.rsi) = =3D=3D 0); | ^~~~~~~~~~~~~~~ /usr/include/vmmapi.h:152:9: note: declared here 152 | int vm_set_register(struct vcpu *vcpu, int reg, uint64_t val); | ^~~~~~~~~~~~~~~ gmake[4]: *** [Makefile:65091: kern/emu/kernel_exec-bhyve_hostif.o] Error 1 gmake[4]: Leaving directory '/wrkdirs/usr/ports/sysutils/grub2-bhyve/work/grub2-bhyve-0.40/grub-core' gmake[3]: *** [Makefile:58499: all] Error 2 gmake[3]: Leaving directory '/wrkdirs/usr/ports/sysutils/grub2-bhyve/work/grub2-bhyve-0.40/grub-core' gmake[2]: *** [Makefile:20160: all-recursive] Error 1 gmake[2]: Leaving directory '/wrkdirs/usr/ports/sysutils/grub2-bhyve/work/grub2-bhyve-0.40' gmake[1]: *** [Makefile:15992: all] Error 2 gmake[1]: Leaving directory '/wrkdirs/usr/ports/sysutils/grub2-bhyve/work/grub2-bhyve-0.40' *** Error code 1 --=20 You are receiving this mail because: You are the assignee for the bug.=
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-270609-7788-Xii5MiNNt6>