[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