[gvt-linux:gvt-stable-4.12 7/15] drivers/gpu/drm/i915/gvt/xengt.h:34:2: error: unknown type name 'ioservid_t'
kbuild test robot
fengguang.wu at intel.com
Fri Jul 14 18:51:38 UTC 2017
tree: https://github.com/01org/gvt-linux.git gvt-stable-4.12
head: c9c832702e87065d24f09c8ae8eca5e1acc62848
commit: e9df54fa5960a74f97e11e6e2e553bef2d98b1d0 [7/15] arch/x86/xen: Import x4.9 interface for ioreq
config: x86_64-allmodconfig (attached as .config)
compiler: gcc-6 (Debian 6.2.0-3) 6.2.0 20160901
reproduce:
git checkout e9df54fa5960a74f97e11e6e2e553bef2d98b1d0
# save the attached .config to linux build tree
make ARCH=x86_64
Note: the gvt-linux/gvt-stable-4.12 HEAD c9c832702e87065d24f09c8ae8eca5e1acc62848 builds fine.
It only hurts bisectibility.
All error/warnings (new ones prefixed by >>):
In file included from drivers/gpu/drm/i915/gvt/xengt.c:52:0:
>> drivers/gpu/drm/i915/gvt/xengt.h:34:2: error: unknown type name 'ioservid_t'
ioservid_t iosrv_id; /* io-request server id */
^~~~~~~~~~
drivers/gpu/drm/i915/gvt/xengt.c: In function 'xen_hvm_create_iorequest_server':
>> drivers/gpu/drm/i915/gvt/xengt.c:475:37: error: storage size of 'arg' isn't known
struct xen_hvm_create_ioreq_server arg;
^~~
>> drivers/gpu/drm/i915/gvt/xengt.c:480:24: error: 'HVMOP_create_ioreq_server' undeclared (first use in this function)
r = HYPERVISOR_hvm_op(HVMOP_create_ioreq_server, &arg);
^~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/i915/gvt/xengt.c:480:24: note: each undeclared identifier is reported only once for each function it appears in
drivers/gpu/drm/i915/gvt/xengt.c:475:37: warning: unused variable 'arg' [-Wunused-variable]
struct xen_hvm_create_ioreq_server arg;
^~~
drivers/gpu/drm/i915/gvt/xengt.c: In function 'xen_hvm_toggle_iorequest_server':
drivers/gpu/drm/i915/gvt/xengt.c:492:40: error: storage size of 'arg' isn't known
struct xen_hvm_set_ioreq_server_state arg;
^~~
>> drivers/gpu/drm/i915/gvt/xengt.c:498:24: error: 'HVMOP_set_ioreq_server_state' undeclared (first use in this function)
r = HYPERVISOR_hvm_op(HVMOP_set_ioreq_server_state, &arg);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/i915/gvt/xengt.c:492:40: warning: unused variable 'arg' [-Wunused-variable]
struct xen_hvm_set_ioreq_server_state arg;
^~~
drivers/gpu/drm/i915/gvt/xengt.c: In function 'xen_hvm_get_ioreq_pfn':
drivers/gpu/drm/i915/gvt/xengt.c:510:39: error: storage size of 'arg' isn't known
struct xen_hvm_get_ioreq_server_info arg;
^~~
>> drivers/gpu/drm/i915/gvt/xengt.c:515:24: error: 'HVMOP_get_ioreq_server_info' undeclared (first use in this function)
r = HYPERVISOR_hvm_op(HVMOP_get_ioreq_server_info, &arg);
^~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/i915/gvt/xengt.c:510:39: warning: unused variable 'arg' [-Wunused-variable]
struct xen_hvm_get_ioreq_server_info arg;
^~~
drivers/gpu/drm/i915/gvt/xengt.c: In function 'xen_hvm_destroy_iorequest_server':
drivers/gpu/drm/i915/gvt/xengt.c:526:38: error: storage size of 'arg' isn't known
struct xen_hvm_destroy_ioreq_server arg;
^~~
>> drivers/gpu/drm/i915/gvt/xengt.c:531:24: error: 'HVMOP_destroy_ioreq_server' undeclared (first use in this function)
r = HYPERVISOR_hvm_op(HVMOP_destroy_ioreq_server, &arg);
^~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/i915/gvt/xengt.c:526:38: warning: unused variable 'arg' [-Wunused-variable]
struct xen_hvm_destroy_ioreq_server arg;
^~~
drivers/gpu/drm/i915/gvt/xengt.c: In function 'xen_hvm_map_io_range_to_ioreq_server':
>> drivers/gpu/drm/i915/gvt/xengt.c:562:2: error: unknown type name 'xen_hvm_io_range_t'
xen_hvm_io_range_t arg;
^~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/i915/gvt/xengt.c:565:5: error: request for member 'domid' in something not a structure or union
arg.domid = info->vm_id;
^
>> drivers/gpu/drm/i915/gvt/xengt.c:566:5: error: request for member 'id' in something not a structure or union
arg.id = info->iosrv_id;
^
>> drivers/gpu/drm/i915/gvt/xengt.c:567:5: error: request for member 'type' in something not a structure or union
arg.type = is_mmio ? HVMOP_IO_RANGE_MEMORY : HVMOP_IO_RANGE_PORT;
^
>> drivers/gpu/drm/i915/gvt/xengt.c:567:23: error: 'HVMOP_IO_RANGE_MEMORY' undeclared (first use in this function)
arg.type = is_mmio ? HVMOP_IO_RANGE_MEMORY : HVMOP_IO_RANGE_PORT;
^~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/i915/gvt/xengt.c:567:47: error: 'HVMOP_IO_RANGE_PORT' undeclared (first use in this function)
arg.type = is_mmio ? HVMOP_IO_RANGE_MEMORY : HVMOP_IO_RANGE_PORT;
^~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/i915/gvt/xengt.c:568:5: error: request for member 'start' in something not a structure or union
arg.start = start;
^
>> drivers/gpu/drm/i915/gvt/xengt.c:569:5: error: request for member 'end' in something not a structure or union
arg.end = end;
^
>> drivers/gpu/drm/i915/gvt/xengt.c:573:4: error: 'HVMOP_map_io_range_to_ioreq_server' undeclared (first use in this function)
HVMOP_map_io_range_to_ioreq_server, &arg);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>> drivers/gpu/drm/i915/gvt/xengt.c:576:4: error: 'HVMOP_unmap_io_range_from_ioreq_server' undeclared (first use in this function)
HVMOP_unmap_io_range_from_ioreq_server, &arg);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/i915/gvt/xengt.c: In function 'xen_hvm_map_pcidev_to_ioreq_server':
drivers/gpu/drm/i915/gvt/xengt.c:584:2: error: unknown type name 'xen_hvm_io_range_t'
xen_hvm_io_range_t arg;
^~~~~~~~~~~~~~~~~~
drivers/gpu/drm/i915/gvt/xengt.c:587:5: error: request for member 'domid' in something not a structure or union
arg.domid = info->vm_id;
^
drivers/gpu/drm/i915/gvt/xengt.c:588:5: error: request for member 'id' in something not a structure or union
arg.id = info->iosrv_id;
^
drivers/gpu/drm/i915/gvt/xengt.c:589:5: error: request for member 'type' in something not a structure or union
arg.type = HVMOP_IO_RANGE_PCI;
^
>> drivers/gpu/drm/i915/gvt/xengt.c:589:13: error: 'HVMOP_IO_RANGE_PCI' undeclared (first use in this function)
arg.type = HVMOP_IO_RANGE_PCI;
^~~~~~~~~~~~~~~~~~
drivers/gpu/drm/i915/gvt/xengt.c:590:5: error: request for member 'start' in something not a structure or union
arg.start = arg.end = sbdf;
^
drivers/gpu/drm/i915/gvt/xengt.c:590:17: error: request for member 'end' in something not a structure or union
arg.start = arg.end = sbdf;
^
drivers/gpu/drm/i915/gvt/xengt.c:591:25: error: 'HVMOP_map_io_range_to_ioreq_server' undeclared (first use in this function)
rc = HYPERVISOR_hvm_op(HVMOP_map_io_range_to_ioreq_server, &arg);
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/i915/gvt/xengt.c: In function 'xen_hvm_set_mem_type':
>> drivers/gpu/drm/i915/gvt/xengt.c:603:2: error: unknown type name 'xen_hvm_set_mem_type_t'
xen_hvm_set_mem_type_t args;
^~~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/i915/gvt/xengt.c:606:6: error: request for member 'domid' in something not a structure or union
args.domid = vm_id;
^
>> drivers/gpu/drm/i915/gvt/xengt.c:607:6: error: request for member 'hvmmem_type' in something not a structure or union
args.hvmmem_type = mem_type;
^
>> drivers/gpu/drm/i915/gvt/xengt.c:608:6: error: request for member 'first_pfn' in something not a structure or union
args.first_pfn = first_pfn;
^
vim +/ioservid_t +34 drivers/gpu/drm/i915/gvt/xengt.h
b39cc44a Pei Zhang 2017-04-10 15
b39cc44a Pei Zhang 2017-04-10 16 /*
b39cc44a Pei Zhang 2017-04-10 17 * xengt_hvm_dev is a wrapper of a vGPU instance which is reprensented by the
b39cc44a Pei Zhang 2017-04-10 18 * intel_vgpu structure. Under xen hypervisor, the xengt_instance stands for a
b39cc44a Pei Zhang 2017-04-10 19 * HVM device, which the related resource.
b39cc44a Pei Zhang 2017-04-10 20 */
b39cc44a Pei Zhang 2017-04-10 21 struct xengt_hvm_dev {
b39cc44a Pei Zhang 2017-04-10 22 domid_t vm_id;
b39cc44a Pei Zhang 2017-04-10 23 struct kobject kobj;
b39cc44a Pei Zhang 2017-04-10 24 struct intel_vgpu *vgpu;
b39cc44a Pei Zhang 2017-04-10 25 int on_destroy;
b39cc44a Pei Zhang 2017-04-10 26
b39cc44a Pei Zhang 2017-04-10 27 /* iopage_vma->addr is just iopage. We need iopage_vma on VM destroy */
b39cc44a Pei Zhang 2017-04-10 28 shared_iopage_t *iopage;
b39cc44a Pei Zhang 2017-04-10 29 struct vm_struct *iopage_vma;
b39cc44a Pei Zhang 2017-04-10 30
b39cc44a Pei Zhang 2017-04-10 31 /* the event channel irqs to handle HVM io request, index is vcpu id */
b39cc44a Pei Zhang 2017-04-10 32 int nr_vcpu;
b39cc44a Pei Zhang 2017-04-10 33 int *evtchn_irq;
b39cc44a Pei Zhang 2017-04-10 @34 ioservid_t iosrv_id; /* io-request server id */
b39cc44a Pei Zhang 2017-04-10 35 struct task_struct *emulation_thread;
b39cc44a Pei Zhang 2017-04-10 36 DECLARE_BITMAP(ioreq_pending, MAX_HVM_VCPUS_SUPPORTED);
b39cc44a Pei Zhang 2017-04-10 37 wait_queue_head_t io_event_wq;
b39cc44a Pei Zhang 2017-04-10 38
b39cc44a Pei Zhang 2017-04-10 39 uint64_t vmem_sz;
b39cc44a Pei Zhang 2017-04-10 40 /* for the 1st 1MB memory of HVM: each vm_struct means one 4K-page */
b39cc44a Pei Zhang 2017-04-10 41 struct vm_struct **vmem_vma_low_1mb;
b39cc44a Pei Zhang 2017-04-10 42 /* for >1MB memory of HVM: each vm_struct means 1MB */
b39cc44a Pei Zhang 2017-04-10 43 struct vm_struct **vmem_vma;
b39cc44a Pei Zhang 2017-04-10 44 /* for >1MB memory of HVM: each vm_struct means 4KB */
b39cc44a Pei Zhang 2017-04-10 45 struct vm_struct **vmem_vma_4k;
b39cc44a Pei Zhang 2017-04-10 46 unsigned long low_mem_max_gpfn;
b39cc44a Pei Zhang 2017-04-10 47 };
b39cc44a Pei Zhang 2017-04-10 48
:::::: The code at line 34 was first introduced by commit
:::::: b39cc44ae420d353b8021535469712474f010658 drm/i915/xengt: xengt moudule initial files
:::::: TO: Pei Zhang <pei.zhang at intel.com>
:::::: CC: Xiong Zhang <xiong.y.zhang at intel.com>
---
0-DAY kernel test infrastructure Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all Intel Corporation
-------------- next part --------------
A non-text attachment was scrubbed...
Name: .config.gz
Type: application/gzip
Size: 60011 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/intel-gvt-dev/attachments/20170715/c22fc1b0/attachment-0001.gz>
More information about the intel-gvt-dev
mailing list