Hi Amirreza,
kernel test robot noticed the following build warnings:
[auto build test WARNING on f486c8aa16b8172f63bddc70116a0c897a7f3f02]
url: https://github.com/intel-lab-lkp/linux/commits/Amirreza-Zarrabi/tee-allow-a-... base: f486c8aa16b8172f63bddc70116a0c897a7f3f02 patch link: https://lore.kernel.org/r/20241202-qcom-tee-using-tee-ss-without-mem-obj-v1-... patch subject: [PATCH 02/10] tee: add TEE_IOCTL_PARAM_ATTR_TYPE_MEMBUF config: i386-buildonly-randconfig-002-20241203 (https://download.01.org/0day-ci/archive/20241203/202412031510.Oh9kNGeK-lkp@i...) compiler: gcc-12 (Debian 12.2.0-14) 12.2.0 reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20241203/202412031510.Oh9kNGeK-lkp@i...)
If you fix the issue in a separate patch/commit (i.e. not just a new version of the same patch/commit), kindly add following tags | Reported-by: kernel test robot lkp@intel.com | Closes: https://lore.kernel.org/oe-kbuild-all/202412031510.Oh9kNGeK-lkp@intel.com/
All warnings (new ones prefixed by >>):
drivers/tee/tee_core.c: In function 'params_to_supp':
drivers/tee/tee_core.c:669:32: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
669 | ip.a = (u64)p->u.membuf.uaddr; | ^
vim +669 drivers/tee/tee_core.c
648 649 static int params_to_supp(struct tee_context *ctx, 650 struct tee_ioctl_param __user *uparams, 651 size_t num_params, struct tee_param *params) 652 { 653 size_t n; 654 655 for (n = 0; n < num_params; n++) { 656 struct tee_ioctl_param ip; 657 struct tee_param *p = params + n; 658 659 ip.attr = p->attr; 660 switch (p->attr & TEE_IOCTL_PARAM_ATTR_TYPE_MASK) { 661 case TEE_IOCTL_PARAM_ATTR_TYPE_VALUE_INPUT: 662 case TEE_IOCTL_PARAM_ATTR_TYPE_VALUE_INOUT: 663 ip.a = p->u.value.a; 664 ip.b = p->u.value.b; 665 ip.c = p->u.value.c; 666 break; 667 case TEE_IOCTL_PARAM_ATTR_TYPE_MEMBUF_INPUT: 668 case TEE_IOCTL_PARAM_ATTR_TYPE_MEMBUF_INOUT:
669 ip.a = (u64)p->u.membuf.uaddr;
670 ip.b = p->u.membuf.size; 671 ip.c = 0; 672 break; 673 case TEE_IOCTL_PARAM_ATTR_TYPE_MEMREF_INPUT: 674 case TEE_IOCTL_PARAM_ATTR_TYPE_MEMREF_OUTPUT: 675 case TEE_IOCTL_PARAM_ATTR_TYPE_MEMREF_INOUT: 676 ip.b = p->u.memref.size; 677 if (!p->u.memref.shm) { 678 ip.a = 0; 679 ip.c = (u64)-1; /* invalid shm id */ 680 break; 681 } 682 ip.a = p->u.memref.shm_offs; 683 ip.c = p->u.memref.shm->id; 684 break; 685 default: 686 ip.a = 0; 687 ip.b = 0; 688 ip.c = 0; 689 break; 690 } 691 692 if (copy_to_user(uparams + n, &ip, sizeof(ip))) 693 return -EFAULT; 694 } 695 696 return 0; 697 } 698