public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: kernel test robot <lkp@intel.com>
To: Wentao Guan <guanwentao@uniontech.com>, chenhuacai@kernel.org
Cc: llvm@lists.linux.dev, oe-kbuild-all@lists.linux.dev,
	wuqianhai@loongson.cn, kernel@xen0n.name,
	jiaxun.yang@flygoat.com, loongarch@lists.linux.dev,
	linux-kernel@vger.kernel.org,
	Wentao Guan <guanwentao@uniontech.com>,
	stable@vger.kernel.org
Subject: Re: [PATCH v3] LoongArch: Fix potential ade in loongson_gpu_fixup_dma_hang()
Date: Wed, 29 Apr 2026 06:26:24 +0800	[thread overview]
Message-ID: <202604290645.yU3tIquW-lkp@intel.com> (raw)
In-Reply-To: <20260428095051.746295-1-guanwentao@uniontech.com>

Hi Wentao,

kernel test robot noticed the following build warnings:

[auto build test WARNING on chenhuacai-loongson/loongarch-fixes]
[also build test WARNING on linus/master v7.1-rc1 next-20260428]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Wentao-Guan/LoongArch-Fix-potential-ade-in-loongson_gpu_fixup_dma_hang/20260428-222642
base:   https://git.kernel.org/pub/scm/linux/kernel/git/chenhuacai/linux-loongson.git loongarch-fixes
patch link:    https://lore.kernel.org/r/20260428095051.746295-1-guanwentao%40uniontech.com
patch subject: [PATCH v3] LoongArch: Fix potential ade in loongson_gpu_fixup_dma_hang()
config: loongarch-allnoconfig (https://download.01.org/0day-ci/archive/20260429/202604290645.yU3tIquW-lkp@intel.com/config)
compiler: clang version 23.0.0git (https://github.com/llvm/llvm-project 5bac06718f502014fade905512f1d26d578a18f3)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20260429/202604290645.yU3tIquW-lkp@intel.com/reproduce)

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>
| Closes: https://lore.kernel.org/oe-kbuild-all/202604290645.yU3tIquW-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> arch/loongarch/pci/pci.c:122:14: warning: variable 'regbase' is uninitialized when used here [-Wuninitialized]
     122 |                 crtc_reg = regbase + 0x1240;
         |                            ^~~~~~~
   arch/loongarch/pci/pci.c:114:41: note: initialize the variable 'regbase' to silence this warning
     114 |         void __iomem *crtc_reg, *base, *regbase;
         |                                                ^
         |                                                 = NULL
   1 warning generated.


vim +/regbase +122 arch/loongarch/pci/pci.c

95db0c9f526d58 Huacai Chen 2026-03-26  110  
95db0c9f526d58 Huacai Chen 2026-03-26  111  static void loongson_gpu_fixup_dma_hang(struct pci_dev *pdev, bool on)
95db0c9f526d58 Huacai Chen 2026-03-26  112  {
95db0c9f526d58 Huacai Chen 2026-03-26  113  	u32 i, val, count, crtc_offset, device;
95db0c9f526d58 Huacai Chen 2026-03-26  114  	void __iomem *crtc_reg, *base, *regbase;
95db0c9f526d58 Huacai Chen 2026-03-26  115  	static u32 crtc_status[CRTC_NUM_MAX] = { 0 };
95db0c9f526d58 Huacai Chen 2026-03-26  116  
95db0c9f526d58 Huacai Chen 2026-03-26  117  	base = pdev->bus->ops->map_bus(pdev->bus, pdev->devfn + 1, 0);
95db0c9f526d58 Huacai Chen 2026-03-26  118  	device = readw(base + PCI_DEVICE_ID);
95db0c9f526d58 Huacai Chen 2026-03-26  119  
95db0c9f526d58 Huacai Chen 2026-03-26  120  	switch (device) {
95db0c9f526d58 Huacai Chen 2026-03-26  121  	case PCI_DEVICE_ID_LOONGSON_DC2:
95db0c9f526d58 Huacai Chen 2026-03-26 @122  		crtc_reg = regbase + 0x1240;
95db0c9f526d58 Huacai Chen 2026-03-26  123  		crtc_offset = 0x10;
95db0c9f526d58 Huacai Chen 2026-03-26  124  		break;
95db0c9f526d58 Huacai Chen 2026-03-26  125  	case PCI_DEVICE_ID_LOONGSON_DC3:
95db0c9f526d58 Huacai Chen 2026-03-26  126  		crtc_reg = regbase;
95db0c9f526d58 Huacai Chen 2026-03-26  127  		crtc_offset = 0x400;
95db0c9f526d58 Huacai Chen 2026-03-26  128  		break;
c2fa5cb09709c4 Wentao Guan 2026-04-28  129  	default:
c2fa5cb09709c4 Wentao Guan 2026-04-28  130  		return;
c2fa5cb09709c4 Wentao Guan 2026-04-28  131  	}
c2fa5cb09709c4 Wentao Guan 2026-04-28  132  
c2fa5cb09709c4 Wentao Guan 2026-04-28  133  	regbase = ioremap(readq(base + PCI_BASE_ADDRESS_0) & ~0xffull, SZ_64K);
c2fa5cb09709c4 Wentao Guan 2026-04-28  134  	if (!regbase) {
c2fa5cb09709c4 Wentao Guan 2026-04-28  135  		pci_err(pdev, "Failed to ioremap()\n");
c2fa5cb09709c4 Wentao Guan 2026-04-28  136  		return;
95db0c9f526d58 Huacai Chen 2026-03-26  137  	}
95db0c9f526d58 Huacai Chen 2026-03-26  138  
95db0c9f526d58 Huacai Chen 2026-03-26  139  	for (i = 0; i < CRTC_NUM_MAX; i++, crtc_reg += crtc_offset) {
95db0c9f526d58 Huacai Chen 2026-03-26  140  		val = readl(crtc_reg);
95db0c9f526d58 Huacai Chen 2026-03-26  141  
95db0c9f526d58 Huacai Chen 2026-03-26  142  		if (!on)
95db0c9f526d58 Huacai Chen 2026-03-26  143  			crtc_status[i] = val;
95db0c9f526d58 Huacai Chen 2026-03-26  144  
95db0c9f526d58 Huacai Chen 2026-03-26  145  		/* No need to fixup if the status is off at startup. */
95db0c9f526d58 Huacai Chen 2026-03-26  146  		if (!(crtc_status[i] & CRTC_OUTPUT_ENABLE))
95db0c9f526d58 Huacai Chen 2026-03-26  147  			continue;
95db0c9f526d58 Huacai Chen 2026-03-26  148  
95db0c9f526d58 Huacai Chen 2026-03-26  149  		if (on)
95db0c9f526d58 Huacai Chen 2026-03-26  150  			val |= CRTC_OUTPUT_ENABLE;
95db0c9f526d58 Huacai Chen 2026-03-26  151  		else
95db0c9f526d58 Huacai Chen 2026-03-26  152  			val &= ~CRTC_OUTPUT_ENABLE;
95db0c9f526d58 Huacai Chen 2026-03-26  153  
95db0c9f526d58 Huacai Chen 2026-03-26  154  		mb();
95db0c9f526d58 Huacai Chen 2026-03-26  155  		writel(val, crtc_reg);
95db0c9f526d58 Huacai Chen 2026-03-26  156  
95db0c9f526d58 Huacai Chen 2026-03-26  157  		for (count = 0; count < 40; count++) {
95db0c9f526d58 Huacai Chen 2026-03-26  158  			val = readl(crtc_reg) & CRTC_OUTPUT_ENABLE;
95db0c9f526d58 Huacai Chen 2026-03-26  159  			if ((on && val) || (!on && !val))
95db0c9f526d58 Huacai Chen 2026-03-26  160  				break;
95db0c9f526d58 Huacai Chen 2026-03-26  161  			udelay(1000);
95db0c9f526d58 Huacai Chen 2026-03-26  162  		}
95db0c9f526d58 Huacai Chen 2026-03-26  163  
95db0c9f526d58 Huacai Chen 2026-03-26  164  		pci_info(pdev, "DMA hang fixup at reg[0x%lx]: 0x%x\n",
95db0c9f526d58 Huacai Chen 2026-03-26  165  				(unsigned long)crtc_reg & 0xffff, readl(crtc_reg));
95db0c9f526d58 Huacai Chen 2026-03-26  166  	}
95db0c9f526d58 Huacai Chen 2026-03-26  167  
95db0c9f526d58 Huacai Chen 2026-03-26  168  	iounmap(regbase);
95db0c9f526d58 Huacai Chen 2026-03-26  169  }
95db0c9f526d58 Huacai Chen 2026-03-26  170  

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki

      reply	other threads:[~2026-04-28 22:26 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2026-04-28  9:50 [PATCH v3] LoongArch: Fix potential ade in loongson_gpu_fixup_dma_hang() Wentao Guan
2026-04-28 22:26 ` kernel test robot [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=202604290645.yU3tIquW-lkp@intel.com \
    --to=lkp@intel.com \
    --cc=chenhuacai@kernel.org \
    --cc=guanwentao@uniontech.com \
    --cc=jiaxun.yang@flygoat.com \
    --cc=kernel@xen0n.name \
    --cc=linux-kernel@vger.kernel.org \
    --cc=llvm@lists.linux.dev \
    --cc=loongarch@lists.linux.dev \
    --cc=oe-kbuild-all@lists.linux.dev \
    --cc=stable@vger.kernel.org \
    --cc=wuqianhai@loongson.cn \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox