tree:
https://gitlab.freedesktop.org/drm/msm.git msm-next-pgtables
head: b36100ea7b2a6d4b285f04b118b46e58b20b3f94
commit: b36100ea7b2a6d4b285f04b118b46e58b20b3f94 [57/57] WIP: drm/msm: show process names
in gem_describe
config: arm-defconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.0
reproduce (this is a W=1 build):
wget
https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O
~/bin/make.cross
chmod +x ~/bin/make.cross
git checkout b36100ea7b2a6d4b285f04b118b46e58b20b3f94
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
drivers/gpu/drm/msm/msm_gem.c: In function 'msm_gem_describe':
> drivers/gpu/drm/msm/msm_gem.c:872:5: warning: cast from pointer
to integer of different size [-Wpointer-to-int-cast]
872 | (unsigned long
long)vma->aspace,
| ^
vim +872 drivers/gpu/drm/msm/msm_gem.c
818
819 void msm_gem_describe(struct drm_gem_object *obj, struct seq_file *m)
820 {
821 struct msm_gem_object *msm_obj = to_msm_bo(obj);
822 struct dma_resv *robj = obj->resv;
823 struct dma_resv_list *fobj;
824 struct dma_fence *fence;
825 struct msm_gem_vma *vma;
826 uint64_t off = drm_vma_node_start(&obj->vma_node);
827 const char *madv;
828
829 mutex_lock(&msm_obj->lock);
830
831 switch (msm_obj->madv) {
832 case __MSM_MADV_PURGED:
833 madv = " purged";
834 break;
835 case MSM_MADV_DONTNEED:
836 madv = " purgeable";
837 break;
838 case MSM_MADV_WILLNEED:
839 default:
840 madv = "";
841 break;
842 }
843
844 seq_printf(m, "%08x: %c %2d (%2d) %08llx %p",
845 msm_obj->flags, is_active(msm_obj) ? 'A' : 'I',
846 obj->name, kref_read(&obj->refcount),
847 off, msm_obj->vaddr);
848
849 seq_printf(m, " %08zu %9s %-32s\n", obj->size, madv,
msm_obj->name);
850
851 if (!list_empty(&msm_obj->vmas)) {
852
853 seq_puts(m, " vmas:");
854
855 list_for_each_entry(vma, &msm_obj->vmas, list) {
856 const char *name, *comm;
857 if (vma->aspace) {
858 struct msm_gem_address_space *aspace = vma->aspace;
859 struct task_struct *task =
860 get_pid_task(aspace->pid, PIDTYPE_PID);
861 if (task) {
862 comm = kstrdup(task->comm, GFP_KERNEL);
863 } else {
864 comm = NULL;
865 }
866 name = aspace->name;
867 } else {
868 name = comm = NULL;
869 }
870 seq_printf(m, " [%s%s%s: aspace=%llx, %08llx,%s,inuse=%d]",
871 name, comm ? ":" : "", comm ? comm : "",
872 (unsigned long long)vma->aspace,
873 vma->iova, vma->mapped ? "mapped" : "unmapped",
874 vma->inuse);
875 kfree(comm);
876 }
877
878 seq_puts(m, "\n");
879 }
880
881 rcu_read_lock();
882 fobj = rcu_dereference(robj->fence);
883 if (fobj) {
884 unsigned int i, shared_count = fobj->shared_count;
885
886 for (i = 0; i < shared_count; i++) {
887 fence = rcu_dereference(fobj->shared[i]);
888 describe_fence(fence, "Shared", m);
889 }
890 }
891
892 fence = rcu_dereference(robj->fence_excl);
893 if (fence)
894 describe_fence(fence, "Exclusive", m);
895 rcu_read_unlock();
896
897 mutex_unlock(&msm_obj->lock);
898 }
899
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org