lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <201808231334.P7oucQ8e%fengguang.wu@intel.com>
Date:   Thu, 23 Aug 2018 14:23:20 +0800
From:   kbuild test robot <lkp@...el.com>
To:     Jiandi An <jiandi.an@....com>
Cc:     kbuild-all@...org, dri-devel@...ts.freedesktop.org,
        airlied@...ux.ie, linux-kernel@...r.kernel.org, ray.huang@....com,
        jiandi.an@....com, Jerry.Zhang@....com, christian.koenig@....com
Subject: Re: [PATCH 1/1] drm/ttm: Set memory as decrypted for ttm framebuffer
 mappings

Hi Jiandi,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on linus/master]
[also build test ERROR on v4.18 next-20180822]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Jiandi-An/drm-ttm-Set-memory-as-decrypted-for-ttm-framebuffer-mappings/20180823-113546
config: arm-allmodconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (Debian 7.2.0-11) 7.2.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        GCC_VERSION=7.2.0 make.cross ARCH=arm 

All errors (new ones prefixed by >>):

   drivers/gpu/drm/ttm/ttm_bo_util.c: In function 'ttm_bo_kmap':
   drivers/gpu/drm/ttm/ttm_bo_util.c:644:15: error: implicit declaration of function 'sev_active'; did you mean 'cpu_active'? [-Werror=implicit-function-declaration]
      if (!ret && sev_active())
                  ^~~~~~~~~~
                  cpu_active
>> drivers/gpu/drm/ttm/ttm_bo_util.c:645:4: error: implicit declaration of function 'set_memory_decrypted'; did you mean 'set_memory_rw'? [-Werror=implicit-function-declaration]
       set_memory_decrypted((unsigned long) map->virtual,
       ^~~~~~~~~~~~~~~~~~~~
       set_memory_rw
   drivers/gpu/drm/ttm/ttm_bo_util.c: In function 'ttm_bo_kunmap':
>> drivers/gpu/drm/ttm/ttm_bo_util.c:670:4: error: implicit declaration of function 'set_memory_encrypted'; did you mean 'set_memory_nx'? [-Werror=implicit-function-declaration]
       set_memory_encrypted((unsigned long) map->virtual,
       ^~~~~~~~~~~~~~~~~~~~
       set_memory_nx
   cc1: some warnings being treated as errors

vim +645 drivers/gpu/drm/ttm/ttm_bo_util.c

   617	
   618	int ttm_bo_kmap(struct ttm_buffer_object *bo,
   619			unsigned long start_page, unsigned long num_pages,
   620			struct ttm_bo_kmap_obj *map)
   621	{
   622		struct ttm_mem_type_manager *man =
   623			&bo->bdev->man[bo->mem.mem_type];
   624		unsigned long offset, size;
   625		int ret;
   626	
   627		map->virtual = NULL;
   628		map->bo = bo;
   629		if (num_pages > bo->num_pages)
   630			return -EINVAL;
   631		if (start_page > bo->num_pages)
   632			return -EINVAL;
   633	#if 0
   634		if (num_pages > 1 && !capable(CAP_SYS_ADMIN))
   635			return -EPERM;
   636	#endif
   637		(void) ttm_mem_io_lock(man, false);
   638		ret = ttm_mem_io_reserve(bo->bdev, &bo->mem);
   639		ttm_mem_io_unlock(man);
   640		if (ret)
   641			return ret;
   642		if (!bo->mem.bus.is_iomem) {
   643			ret = ttm_bo_kmap_ttm(bo, start_page, num_pages, map);
 > 644			if (!ret && sev_active())
 > 645				set_memory_decrypted((unsigned long) map->virtual,
   646						     num_pages);
   647			return ret;
   648		} else {
   649			offset = start_page << PAGE_SHIFT;
   650			size = num_pages << PAGE_SHIFT;
   651			return ttm_bo_ioremap(bo, offset, size, map);
   652		}
   653	}
   654	EXPORT_SYMBOL(ttm_bo_kmap);
   655	
   656	void ttm_bo_kunmap(struct ttm_bo_kmap_obj *map)
   657	{
   658		struct ttm_buffer_object *bo = map->bo;
   659		struct ttm_mem_type_manager *man =
   660			&bo->bdev->man[bo->mem.mem_type];
   661	
   662		if (!map->virtual)
   663			return;
   664		switch (map->bo_kmap_type) {
   665		case ttm_bo_map_iomap:
   666			iounmap(map->virtual);
   667			break;
   668		case ttm_bo_map_vmap:
   669			if (sev_active())
 > 670				set_memory_encrypted((unsigned long) map->virtual,
   671						     bo->num_pages);
   672			vunmap(map->virtual);
   673			break;
   674		case ttm_bo_map_kmap:
   675			if (sev_active())
   676				set_memory_encrypted((unsigned long) map->virtual, 1);
   677			kunmap(map->page);
   678			break;
   679		case ttm_bo_map_premapped:
   680			break;
   681		default:
   682			BUG();
   683		}
   684		(void) ttm_mem_io_lock(man, false);
   685		ttm_mem_io_free(map->bo->bdev, &map->bo->mem);
   686		ttm_mem_io_unlock(man);
   687		map->virtual = NULL;
   688		map->page = NULL;
   689	}
   690	EXPORT_SYMBOL(ttm_bo_kunmap);
   691	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

Download attachment ".config.gz" of type "application/gzip" (66988 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ