All of lore.kernel.org
 help / color / mirror / Atom feed
* drivers/iio/adc/at91-sama5d2_adc.c:1781 at91_adc_set_watermark() warn: 'st->dma_st.rx_buf' double freed
@ 2022-05-31  1:53 kernel test robot
  0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2022-05-31  1:53 UTC (permalink / raw)
  To: kbuild

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

CC: kbuild-all(a)lists.01.org
BCC: lkp(a)intel.com
CC: linux-kernel(a)vger.kernel.org
TO: "Lars-Peter Clausen" <lars@metafoo.de>
CC: Jonathan Cameron <Jonathan.Cameron@huawei.com>

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head:   8ab2afa23bd197df47819a87f0265c0ac95c5b6a
commit: 907b2ad8c9acad39ac1f0ccdbbe66c63856055e3 iio: at91-sama5d2: Fix incorrect cast to platform_device
date:   6 months ago
:::::: branch date: 6 hours ago
:::::: commit date: 6 months ago
config: nios2-randconfig-m031-20220530 (https://download.01.org/0day-ci/archive/20220531/202205310925.zz2dEYBK-lkp(a)intel.com/config)
compiler: nios2-linux-gcc (GCC) 11.3.0

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

New smatch warnings:
drivers/iio/adc/at91-sama5d2_adc.c:1781 at91_adc_set_watermark() warn: 'st->dma_st.rx_buf' double freed

Old smatch warnings:
drivers/iio/adc/at91-sama5d2_adc.c:2160 at91_adc_resume() warn: ignoring unreachable code.

vim +1781 drivers/iio/adc/at91-sama5d2_adc.c

073c662017f2f3 Eugen Hristev      2017-11-15  1747  
073c662017f2f3 Eugen Hristev      2017-11-15  1748  static int at91_adc_set_watermark(struct iio_dev *indio_dev, unsigned int val)
073c662017f2f3 Eugen Hristev      2017-11-15  1749  {
073c662017f2f3 Eugen Hristev      2017-11-15  1750  	struct at91_adc_state *st = iio_priv(indio_dev);
1a198794451449 Eugen Hristev      2020-09-23  1751  	int ret;
073c662017f2f3 Eugen Hristev      2017-11-15  1752  
073c662017f2f3 Eugen Hristev      2017-11-15  1753  	if (val > AT91_HWFIFO_MAX_SIZE)
073c662017f2f3 Eugen Hristev      2017-11-15  1754  		return -EINVAL;
073c662017f2f3 Eugen Hristev      2017-11-15  1755  
073c662017f2f3 Eugen Hristev      2017-11-15  1756  	if (!st->selected_trig->hw_trig) {
073c662017f2f3 Eugen Hristev      2017-11-15  1757  		dev_dbg(&indio_dev->dev, "we need hw trigger for DMA\n");
073c662017f2f3 Eugen Hristev      2017-11-15  1758  		return 0;
073c662017f2f3 Eugen Hristev      2017-11-15  1759  	}
073c662017f2f3 Eugen Hristev      2017-11-15  1760  
073c662017f2f3 Eugen Hristev      2017-11-15  1761  	dev_dbg(&indio_dev->dev, "new watermark is %u\n", val);
073c662017f2f3 Eugen Hristev      2017-11-15  1762  	st->dma_st.watermark = val;
073c662017f2f3 Eugen Hristev      2017-11-15  1763  
073c662017f2f3 Eugen Hristev      2017-11-15  1764  	/*
073c662017f2f3 Eugen Hristev      2017-11-15  1765  	 * The logic here is: if we have watermark 1, it means we do
073c662017f2f3 Eugen Hristev      2017-11-15  1766  	 * each conversion with it's own IRQ, thus we don't need DMA.
073c662017f2f3 Eugen Hristev      2017-11-15  1767  	 * If the watermark is higher, we do DMA to do all the transfers in bulk
073c662017f2f3 Eugen Hristev      2017-11-15  1768  	 */
073c662017f2f3 Eugen Hristev      2017-11-15  1769  
073c662017f2f3 Eugen Hristev      2017-11-15  1770  	if (val == 1)
907b2ad8c9acad Lars-Peter Clausen 2021-10-19  1771  		at91_adc_dma_disable(st);
073c662017f2f3 Eugen Hristev      2017-11-15  1772  	else if (val > 1)
907b2ad8c9acad Lars-Peter Clausen 2021-10-19  1773  		at91_adc_dma_init(st);
073c662017f2f3 Eugen Hristev      2017-11-15  1774  
1a198794451449 Eugen Hristev      2020-09-23  1775  	/*
1a198794451449 Eugen Hristev      2020-09-23  1776  	 * We can start the DMA only after setting the watermark and
1a198794451449 Eugen Hristev      2020-09-23  1777  	 * having the DMA initialization completed
1a198794451449 Eugen Hristev      2020-09-23  1778  	 */
1a198794451449 Eugen Hristev      2020-09-23  1779  	ret = at91_adc_buffer_prepare(indio_dev);
1a198794451449 Eugen Hristev      2020-09-23  1780  	if (ret)
907b2ad8c9acad Lars-Peter Clausen 2021-10-19 @1781  		at91_adc_dma_disable(st);
1a198794451449 Eugen Hristev      2020-09-23  1782  
1a198794451449 Eugen Hristev      2020-09-23  1783  	return ret;
073c662017f2f3 Eugen Hristev      2017-11-15  1784  }
073c662017f2f3 Eugen Hristev      2017-11-15  1785  

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2022-05-31  1:53 UTC | newest]

Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-05-31  1:53 drivers/iio/adc/at91-sama5d2_adc.c:1781 at91_adc_set_watermark() warn: 'st->dma_st.rx_buf' double freed kernel test robot

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.