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: <201510010454.nwCLjpXA%fengguang.wu@intel.com>
Date:	Thu, 1 Oct 2015 04:54:47 +0800
From:	kbuild test robot <lkp@...el.com>
To:	Rasmus Villemoes <linux@...musvillemoes.dk>
Cc:	kbuild-all@...org, David Airlie <airlied@...ux.ie>,
	Rasmus Villemoes <linux@...musvillemoes.dk>,
	dri-devel@...ts.freedesktop.org, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 1/2] drm/vmwgfx: use kzalloc in vmw_surface_define_ioctl()

Hi Rasmus,

[auto build test results on v4.3-rc3 -- if it's inappropriate base, please ignore]


coccinelle warnings: (new ones prefixed by >>)

>> drivers/gpu/drm/vmwgfx/vmwgfx_surface.c:771:1-13: alloc with no test, possible model on line 817

vim +771 drivers/gpu/drm/vmwgfx/vmwgfx_surface.c

543831cf Thomas Hellstrom 2012-11-20  765  
543831cf Thomas Hellstrom 2012-11-20  766  	srf->sizes = kmalloc(srf->num_sizes * sizeof(*srf->sizes), GFP_KERNEL);
543831cf Thomas Hellstrom 2012-11-20  767  	if (unlikely(srf->sizes == NULL)) {
543831cf Thomas Hellstrom 2012-11-20  768  		ret = -ENOMEM;
543831cf Thomas Hellstrom 2012-11-20  769  		goto out_no_sizes;
543831cf Thomas Hellstrom 2012-11-20  770  	}
543831cf Thomas Hellstrom 2012-11-20 @771  	srf->offsets = kmalloc(srf->num_sizes * sizeof(*srf->offsets),
543831cf Thomas Hellstrom 2012-11-20  772  			       GFP_KERNEL);
543831cf Thomas Hellstrom 2012-11-20  773  	if (unlikely(srf->sizes == NULL)) {
543831cf Thomas Hellstrom 2012-11-20  774  		ret = -ENOMEM;
543831cf Thomas Hellstrom 2012-11-20  775  		goto out_no_offsets;
543831cf Thomas Hellstrom 2012-11-20  776  	}
543831cf Thomas Hellstrom 2012-11-20  777  
543831cf Thomas Hellstrom 2012-11-20  778  	user_sizes = (struct drm_vmw_size __user *)(unsigned long)
543831cf Thomas Hellstrom 2012-11-20  779  	    req->size_addr;
543831cf Thomas Hellstrom 2012-11-20  780  
543831cf Thomas Hellstrom 2012-11-20  781  	ret = copy_from_user(srf->sizes, user_sizes,
543831cf Thomas Hellstrom 2012-11-20  782  			     srf->num_sizes * sizeof(*srf->sizes));
543831cf Thomas Hellstrom 2012-11-20  783  	if (unlikely(ret != 0)) {
543831cf Thomas Hellstrom 2012-11-20  784  		ret = -EFAULT;
543831cf Thomas Hellstrom 2012-11-20  785  		goto out_no_copy;
543831cf Thomas Hellstrom 2012-11-20  786  	}
543831cf Thomas Hellstrom 2012-11-20  787  
543831cf Thomas Hellstrom 2012-11-20  788  	srf->base_size = *srf->sizes;
543831cf Thomas Hellstrom 2012-11-20  789  	srf->autogen_filter = SVGA3D_TEX_FILTER_NONE;
15c6f656 Zack Rusin       2012-11-21  790  	srf->multisample_count = 0;
543831cf Thomas Hellstrom 2012-11-20  791  
543831cf Thomas Hellstrom 2012-11-20  792  	cur_bo_offset = 0;
543831cf Thomas Hellstrom 2012-11-20  793  	cur_offset = srf->offsets;
543831cf Thomas Hellstrom 2012-11-20  794  	cur_size = srf->sizes;
543831cf Thomas Hellstrom 2012-11-20  795  
543831cf Thomas Hellstrom 2012-11-20  796  	for (i = 0; i < DRM_VMW_MAX_SURFACE_FACES; ++i) {
543831cf Thomas Hellstrom 2012-11-20  797  		for (j = 0; j < srf->mip_levels[i]; ++j) {
7e8d9da3 Thomas Hellstrom 2012-11-20  798  			uint32_t stride = svga3dsurface_calculate_pitch
7e8d9da3 Thomas Hellstrom 2012-11-20  799  				(desc, cur_size);
543831cf Thomas Hellstrom 2012-11-20  800  
543831cf Thomas Hellstrom 2012-11-20  801  			cur_offset->face = i;
543831cf Thomas Hellstrom 2012-11-20  802  			cur_offset->mip = j;
543831cf Thomas Hellstrom 2012-11-20  803  			cur_offset->bo_offset = cur_bo_offset;
7e8d9da3 Thomas Hellstrom 2012-11-20  804  			cur_bo_offset += svga3dsurface_get_image_buffer_size
7e8d9da3 Thomas Hellstrom 2012-11-20  805  				(desc, cur_size, stride);
543831cf Thomas Hellstrom 2012-11-20  806  			++cur_offset;
543831cf Thomas Hellstrom 2012-11-20  807  			++cur_size;
543831cf Thomas Hellstrom 2012-11-20  808  		}
543831cf Thomas Hellstrom 2012-11-20  809  	}
543831cf Thomas Hellstrom 2012-11-20  810  	res->backup_size = cur_bo_offset;
543831cf Thomas Hellstrom 2012-11-20  811  	if (srf->scanout &&
543831cf Thomas Hellstrom 2012-11-20  812  	    srf->num_sizes == 1 &&
543831cf Thomas Hellstrom 2012-11-20  813  	    srf->sizes[0].width == 64 &&
543831cf Thomas Hellstrom 2012-11-20  814  	    srf->sizes[0].height == 64 &&
543831cf Thomas Hellstrom 2012-11-20  815  	    srf->format == SVGA3D_A8R8G8B8) {
543831cf Thomas Hellstrom 2012-11-20  816  
fc815f88 Rasmus Villemoes 2015-09-30 @817  		srf->snooper.image = kzalloc(64 * 64 * 4, GFP_KERNEL);
fc815f88 Rasmus Villemoes 2015-09-30  818  		if (!srf->snooper.image) {
543831cf Thomas Hellstrom 2012-11-20  819  			DRM_ERROR("Failed to allocate cursor_image\n");
543831cf Thomas Hellstrom 2012-11-20  820  			ret = -ENOMEM;

:::::: The code at line 771 was first introduced by commit
:::::: 543831cfc976669b8da963b3e94933e21e051846 drm/vmwgfx: Break out surface and context management to separate files

:::::: TO: Thomas Hellstrom <thellstrom@...are.com>
:::::: CC: Dave Airlie <airlied@...hat.com>

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ