* [linux-next:master 13327/15025] drivers/dma/dw-edma/dw-edma-core.c:1086:4-31: opportunity for str_write_read(chan -> dir == EDMA_DIR_WRITE)
@ 2026-10-08 3:57 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2026-10-08 3:57 UTC (permalink / raw)
To: oe-kbuild; +Cc: lkp, Julia Lawall
BCC: lkp@intel.com
CC: oe-kbuild-all@lists.linux.dev
TO: Koichiro Den <den@valinux.co.jp>
CC: Vinod Koul <vkoul@kernel.org>
CC: Frank Li <Frank.Li@nxp.com>
tree: https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git master
head: b018686719706a781c45a874ed51374a2dc4b767
commit: 9d31ad3b331d5d78bd6a247a9d35f35a6a9bbd59 [13327/15025] dmaengine: dw-edma: Configure remote interrupt routing
:::::: branch date: 14 hours ago
:::::: commit date: 3 days ago
config: powerpc64-randconfig-r2105-20261008 (https://download.01.org/0day-ci/archive/20261008/202610080554.KfhFfNqT-lkp@intel.com/config)
compiler: powerpc64-linux-gcc (GCC) 14.3.0
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>
| Reported-by: Julia Lawall <julia.lawall@inria.fr>
| Closes: https://lore.kernel.org/r/202610080554.KfhFfNqT-lkp@intel.com/
cocci warnings: (new ones prefixed by >>)
>> drivers/dma/dw-edma/dw-edma-core.c:1086:4-31: opportunity for str_write_read(chan -> dir == EDMA_DIR_WRITE)
vim +1086 drivers/dma/dw-edma/dw-edma-core.c
9d31ad3b331d5d Koichiro Den 2026-09-13 1066
99109a51efd28c Koichiro Den 2026-07-18 1067 static void dw_edma_device_synchronize(struct dma_chan *dchan)
99109a51efd28c Koichiro Den 2026-07-18 1068 {
99109a51efd28c Koichiro Den 2026-07-18 1069 struct dw_edma_chan *chan = dchan2dw_edma_chan(dchan);
9d31ad3b331d5d Koichiro Den 2026-09-13 1070 bool remote;
9d31ad3b331d5d Koichiro Den 2026-09-13 1071
9d31ad3b331d5d Koichiro Den 2026-09-13 1072 /*
9d31ad3b331d5d Koichiro Den 2026-09-13 1073 * irq_mode is fixed after initial configuration. The free path
9d31ad3b331d5d Koichiro Den 2026-09-13 1074 * restores it only after synchronization.
9d31ad3b331d5d Koichiro Den 2026-09-13 1075 */
9d31ad3b331d5d Koichiro Den 2026-09-13 1076 remote = chan->dw->chip->flags & DW_EDMA_CHIP_LOCAL &&
9d31ad3b331d5d Koichiro Den 2026-09-13 1077 chan->irq_mode == DW_EDMA_CH_IRQ_REMOTE;
9d31ad3b331d5d Koichiro Den 2026-09-13 1078
9d31ad3b331d5d Koichiro Den 2026-09-13 1079 /*
9d31ad3b331d5d Koichiro Den 2026-09-13 1080 * Peer-driven transfers bypass local descriptor tracking, so quiesce
9d31ad3b331d5d Koichiro Den 2026-09-13 1081 * the hardware explicitly.
9d31ad3b331d5d Koichiro Den 2026-09-13 1082 */
9d31ad3b331d5d Koichiro Den 2026-09-13 1083 if (remote && dw_edma_core_ch_quiesce(chan))
9d31ad3b331d5d Koichiro Den 2026-09-13 1084 dev_warn(chan->dw->chip->dev,
9d31ad3b331d5d Koichiro Den 2026-09-13 1085 "failed to quiesce remote-routed %s channel %u\n",
9d31ad3b331d5d Koichiro Den 2026-09-13 @1086 chan->dir == EDMA_DIR_WRITE ? "write" : "read",
9d31ad3b331d5d Koichiro Den 2026-09-13 1087 chan->id);
99109a51efd28c Koichiro Den 2026-07-18 1088
99109a51efd28c Koichiro Den 2026-07-18 1089 dw_edma_wait_termination(dchan);
9d31ad3b331d5d Koichiro Den 2026-09-13 1090 if (remote)
9d31ad3b331d5d Koichiro Den 2026-09-13 1091 dw_edma_synchronize_chan_irq(chan);
35de39e4511f00 Koichiro Den 2026-07-18 1092 cancel_work_sync(&chan->irq_work);
35de39e4511f00 Koichiro Den 2026-07-18 1093 atomic_set(&chan->irq_pending, 0);
99109a51efd28c Koichiro Den 2026-07-18 1094 vchan_synchronize(&chan->vc);
2b651ecfc39fb6 kbuild test robot 2019-06-16 1095 }
99109a51efd28c Koichiro Den 2026-07-18 1096
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-10-08 3:58 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-10-08 3:57 [linux-next:master 13327/15025] drivers/dma/dw-edma/dw-edma-core.c:1086:4-31: opportunity for str_write_read(chan -> dir == EDMA_DIR_WRITE) 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.