[radeon-alex:drm-next-4.20-wip 231/235] drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_priv.h:655:22: error: field 'mmu_notifier' has incomplete type

kbuild test robot lkp at intel.com
Tue Aug 28 21:11:15 UTC 2018


tree:   git://people.freedesktop.org/~agd5f/linux.git drm-next-4.20-wip
head:   bdb1922abd620d24715906bac4d119274d98f4c9
commit: 521fb7d021f7952aa3030e56c19edf342309cf9f [231/235] drm/amdgpu: Move KFD parameters to amdgpu (v3)
config: i386-randconfig-s0-08280925 (attached as .config)
compiler: gcc-6 (Debian 6.4.0-9) 6.4.0 20171026
reproduce:
        git checkout 521fb7d021f7952aa3030e56c19edf342309cf9f
        # save the attached .config to linux build tree
        make ARCH=i386 

All errors (new ones prefixed by >>):

   In file included from drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:42:0:
>> drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_priv.h:655:22: error: field 'mmu_notifier' has incomplete type
     struct mmu_notifier mmu_notifier;
                         ^~~~~~~~~~~~

vim +/mmu_notifier +655 drivers/gpu/drm/amd/amdgpu/../amdkfd/kfd_priv.h

52a5fdce Alexey Skidanov 2014-11-19  624  
4a488a7a Oded Gabbay     2014-07-16  625  /* Process data */
4a488a7a Oded Gabbay     2014-07-16  626  struct kfd_process {
19f6d2a6 Oded Gabbay     2014-07-16  627  	/*
19f6d2a6 Oded Gabbay     2014-07-16  628  	 * kfd_process are stored in an mm_struct*->kfd_process*
19f6d2a6 Oded Gabbay     2014-07-16  629  	 * hash table (kfd_processes in kfd_process.c)
19f6d2a6 Oded Gabbay     2014-07-16  630  	 */
19f6d2a6 Oded Gabbay     2014-07-16  631  	struct hlist_node kfd_processes;
19f6d2a6 Oded Gabbay     2014-07-16  632  
9b56bb11 Felix Kuehling  2017-10-27  633  	/*
9b56bb11 Felix Kuehling  2017-10-27  634  	 * Opaque pointer to mm_struct. We don't hold a reference to
9b56bb11 Felix Kuehling  2017-10-27  635  	 * it so it should never be dereferenced from here. This is
9b56bb11 Felix Kuehling  2017-10-27  636  	 * only used for looking up processes by their mm.
9b56bb11 Felix Kuehling  2017-10-27  637  	 */
9b56bb11 Felix Kuehling  2017-10-27  638  	void *mm;
19f6d2a6 Oded Gabbay     2014-07-16  639  
5ce10687 Felix Kuehling  2017-11-27  640  	struct kref ref;
5ce10687 Felix Kuehling  2017-11-27  641  	struct work_struct release_work;
5ce10687 Felix Kuehling  2017-11-27  642  
19f6d2a6 Oded Gabbay     2014-07-16  643  	struct mutex mutex;
19f6d2a6 Oded Gabbay     2014-07-16  644  
19f6d2a6 Oded Gabbay     2014-07-16  645  	/*
19f6d2a6 Oded Gabbay     2014-07-16  646  	 * In any process, the thread that started main() is the lead
19f6d2a6 Oded Gabbay     2014-07-16  647  	 * thread and outlives the rest.
19f6d2a6 Oded Gabbay     2014-07-16  648  	 * It is here because amd_iommu_bind_pasid wants a task_struct.
894a8293 Felix Kuehling  2017-11-01  649  	 * It can also be used for safely getting a reference to the
894a8293 Felix Kuehling  2017-11-01  650  	 * mm_struct of the process.
19f6d2a6 Oded Gabbay     2014-07-16  651  	 */
19f6d2a6 Oded Gabbay     2014-07-16  652  	struct task_struct *lead_thread;
19f6d2a6 Oded Gabbay     2014-07-16  653  
19f6d2a6 Oded Gabbay     2014-07-16  654  	/* We want to receive a notification when the mm_struct is destroyed */
19f6d2a6 Oded Gabbay     2014-07-16 @655  	struct mmu_notifier mmu_notifier;
19f6d2a6 Oded Gabbay     2014-07-16  656  
19f6d2a6 Oded Gabbay     2014-07-16  657  	/* Use for delayed freeing of kfd_process structure */
19f6d2a6 Oded Gabbay     2014-07-16  658  	struct rcu_head	rcu;
19f6d2a6 Oded Gabbay     2014-07-16  659  
19f6d2a6 Oded Gabbay     2014-07-16  660  	unsigned int pasid;
a91e70e3 Felix Kuehling  2017-08-26  661  	unsigned int doorbell_index;
19f6d2a6 Oded Gabbay     2014-07-16  662  
19f6d2a6 Oded Gabbay     2014-07-16  663  	/*
19f6d2a6 Oded Gabbay     2014-07-16  664  	 * List of kfd_process_device structures,
19f6d2a6 Oded Gabbay     2014-07-16  665  	 * one for each device the process is using.
19f6d2a6 Oded Gabbay     2014-07-16  666  	 */
19f6d2a6 Oded Gabbay     2014-07-16  667  	struct list_head per_device_data;
19f6d2a6 Oded Gabbay     2014-07-16  668  
45102048 Ben Goz         2014-07-17  669  	struct process_queue_manager pqm;
45102048 Ben Goz         2014-07-17  670  
19f6d2a6 Oded Gabbay     2014-07-16  671  	/*Is the user space process 32 bit?*/
19f6d2a6 Oded Gabbay     2014-07-16  672  	bool is_32bit_user_mode;
f3a39818 Andrew Lewycky  2015-05-10  673  
f3a39818 Andrew Lewycky  2015-05-10  674  	/* Event-related data */
f3a39818 Andrew Lewycky  2015-05-10  675  	struct mutex event_mutex;
482f0777 Felix Kuehling  2017-10-27  676  	/* Event ID allocator and lookup */
482f0777 Felix Kuehling  2017-10-27  677  	struct idr event_idr;
50cb7dd9 Felix Kuehling  2017-10-27  678  	/* Event page */
50cb7dd9 Felix Kuehling  2017-10-27  679  	struct kfd_signal_page *signal_page;
b9a5d0a5 Felix Kuehling  2017-10-27  680  	size_t signal_mapped_size;
f3a39818 Andrew Lewycky  2015-05-10  681  	size_t signal_event_count;
c986169f Felix Kuehling  2017-09-20  682  	bool signal_event_limit_reached;
403575c4 Felix Kuehling  2018-02-06  683  
403575c4 Felix Kuehling  2018-02-06  684  	/* Information used for memory eviction */
403575c4 Felix Kuehling  2018-02-06  685  	void *kgd_process_info;
403575c4 Felix Kuehling  2018-02-06  686  	/* Eviction fence that is attached to all the BOs of this process. The
403575c4 Felix Kuehling  2018-02-06  687  	 * fence will be triggered during eviction and new one will be created
403575c4 Felix Kuehling  2018-02-06  688  	 * during restore
403575c4 Felix Kuehling  2018-02-06  689  	 */
403575c4 Felix Kuehling  2018-02-06  690  	struct dma_fence *ef;
26103436 Felix Kuehling  2018-02-06  691  
26103436 Felix Kuehling  2018-02-06  692  	/* Work items for evicting and restoring BOs */
26103436 Felix Kuehling  2018-02-06  693  	struct delayed_work eviction_work;
26103436 Felix Kuehling  2018-02-06  694  	struct delayed_work restore_work;
26103436 Felix Kuehling  2018-02-06  695  	/* seqno of the last scheduled eviction */
26103436 Felix Kuehling  2018-02-06  696  	unsigned int last_eviction_seqno;
26103436 Felix Kuehling  2018-02-06  697  	/* Approx. the last timestamp (in jiffies) when the process was
26103436 Felix Kuehling  2018-02-06  698  	 * restored after an eviction
26103436 Felix Kuehling  2018-02-06  699  	 */
26103436 Felix Kuehling  2018-02-06  700  	unsigned long last_restore_timestamp;
4a488a7a Oded Gabbay     2014-07-16  701  };
4a488a7a Oded Gabbay     2014-07-16  702  

:::::: The code at line 655 was first introduced by commit
:::::: 19f6d2a660340d01bcdb7a09557efeeee28d1517 amdkfd: Add basic modules to amdkfd

:::::: TO: Oded Gabbay <oded.gabbay at amd.com>
:::::: CC: Oded Gabbay <oded.gabbay at amd.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: 30310 bytes
Desc: not available
URL: <https://lists.freedesktop.org/archives/dri-devel/attachments/20180829/e0a43b61/attachment-0001.gz>


More information about the dri-devel mailing list