All of lore.kernel.org
 help / color / mirror / Atom feed
* [pinchartl-media:media/drm/dpsub/next 5/14] drivers/dma/xilinx/xilinx_dpdma.c:389 xilinx_dpdma_debugfs_read() warn: maybe return -EFAULT instead of the bytes remaining?
@ 2020-03-12 13:56 ` Dan Carpenter
  0 siblings, 0 replies; 2+ messages in thread
From: Dan Carpenter @ 2020-03-12 13:56 UTC (permalink / raw)
  To: kbuild

[-- Attachment #1: Type: text/plain, Size: 3580 bytes --]

tree:   git://linuxtv.org/pinchartl/media.git media/drm/dpsub/next
head:   fc1d178201c64a7b0106f84de5503eead44c0586
commit: efaa5ceddb7bdb19307a215e8ec207ded1c87474 [5/14] dmaengine: xilinx: dpdma: Add debugfs support

If you fix the issue, kindly add following tag
Reported-by: kbuild test robot <lkp@intel.com>
Reported-by: Dan Carpenter <dan.carpenter@oracle.com>

smatch warnings:
drivers/dma/xilinx/xilinx_dpdma.c:389 xilinx_dpdma_debugfs_read() warn: maybe return -EFAULT instead of the bytes remaining?

git remote add pinchartl-media git://linuxtv.org/pinchartl/media.git
git remote update pinchartl-media
git checkout efaa5ceddb7bdb19307a215e8ec207ded1c87474
vim +389 drivers/dma/xilinx/xilinx_dpdma.c

efaa5ceddb7bdb Laurent Pinchart 2019-11-07  357  static ssize_t xilinx_dpdma_debugfs_read(struct file *f, char __user *buf,
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  358  					 size_t size, loff_t *pos)
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  359  {
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  360  	enum xilinx_dpdma_testcases testcase;
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  361  	char *kern_buff;
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  362  	int ret;

	ret = 0;

efaa5ceddb7bdb Laurent Pinchart 2019-11-07  363  
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  364  	if (*pos != 0 || size <= 0)
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  365  		return -EINVAL;
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  366  
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  367  	kern_buff = kzalloc(XILINX_DPDMA_DEBUGFS_READ_MAX_SIZE, GFP_KERNEL);
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  368  	if (!kern_buff) {
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  369  		dpdma_debugfs.testcase = DPDMA_TC_NONE;
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  370  		return -ENOMEM;
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  371  	}
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  372  
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  373  	testcase = READ_ONCE(dpdma_debugfs.testcase);
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  374  	if (testcase != DPDMA_TC_NONE) {
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  375  		ret = dpdma_debugfs_reqs[testcase].read(kern_buff);
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  376  		if (ret < 0)
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  377  			goto done;
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  378  	} else {
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  379  		strlcpy(kern_buff, "No testcase executed",
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  380  			XILINX_DPDMA_DEBUGFS_READ_MAX_SIZE);
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  381  	}
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  382  
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  383  	size = min(size, strlen(kern_buff));
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  384  	ret = copy_to_user(buf, kern_buff, size);

	if (copy_to_user(buf, kern_buff, size))
		ret = -EFAULT;

efaa5ceddb7bdb Laurent Pinchart 2019-11-07  385  
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  386  done:
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  387  	kfree(kern_buff);
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  388  	if (ret)
efaa5ceddb7bdb Laurent Pinchart 2019-11-07 @389  		return ret;
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  390  
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  391  	*pos = size + 1;
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  392  	return size;
efaa5ceddb7bdb Laurent Pinchart 2019-11-07  393  }

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2020-03-12 13:56 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-03-12 13:56 [pinchartl-media:media/drm/dpsub/next 5/14] drivers/dma/xilinx/xilinx_dpdma.c:389 xilinx_dpdma_debugfs_read() warn: maybe return -EFAULT instead of the bytes remaining? Dan Carpenter
2020-03-12 13:56 ` Dan Carpenter

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.