All of lore.kernel.org
 help / color / mirror / Atom feed
* [rppt:pt-cleanups/5level-fixup 7/13] arch/powerpc/kvm/book3s_64_mmu_radix.c:1226:8: error: unused variable 'pgd'
@ 2020-04-06  3:17 kbuild test robot
  0 siblings, 0 replies; only message in thread
From: kbuild test robot @ 2020-04-06  3:17 UTC (permalink / raw)
  To: kbuild-all

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

tree:   https://git.kernel.org/pub/scm/linux/kernel/git/rppt/linux.git pt-cleanups/5level-fixup
head:   9f72c153c353e8937a08e1534ddabd19adc35703
commit: b41063afcee7e0607266149acaf293d448c4c4e4 [7/13] powerpc: add support for folded p4d page tables
config: powerpc64-defconfig (attached as .config)
compiler: powerpc64-linux-gcc (GCC) 9.3.0
reproduce:
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git checkout b41063afcee7e0607266149acaf293d448c4c4e4
        # save the attached .config to linux build tree
        GCC_VERSION=9.3.0 make.cross ARCH=powerpc64 

If you fix the issue, kindly add following tag as appropriate
Reported-by: kbuild test robot <lkp@intel.com>

All errors (new ones prefixed by >>):

   arch/powerpc/kvm/book3s_64_mmu_radix.c: In function 'debugfs_radix_read':
>> arch/powerpc/kvm/book3s_64_mmu_radix.c:1226:8: error: unused variable 'pgd' [-Werror=unused-variable]
    1226 |  pgd_t pgd, *pgdp;
         |        ^~~
   cc1: all warnings being treated as errors

vim +/pgd +1226 arch/powerpc/kvm/book3s_64_mmu_radix.c

9a94d3ee2d1599 Paul Mackerras 2018-10-08  1215  
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1216  static ssize_t debugfs_radix_read(struct file *file, char __user *buf,
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1217  				 size_t len, loff_t *ppos)
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1218  {
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1219  	struct debugfs_radix_state *p = file->private_data;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1220  	ssize_t ret, r;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1221  	unsigned long n;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1222  	struct kvm *kvm;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1223  	unsigned long gpa;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1224  	pgd_t *pgt;
83a055104eaf89 Paul Mackerras 2018-10-08  1225  	struct kvm_nested_guest *nested;
9a94d3ee2d1599 Paul Mackerras 2018-10-08 @1226  	pgd_t pgd, *pgdp;
b41063afcee7e0 Mike Rapoport  2019-11-24  1227  	p4d_t p4d, *p4dp;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1228  	pud_t pud, *pudp;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1229  	pmd_t pmd, *pmdp;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1230  	pte_t *ptep;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1231  	int shift;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1232  	unsigned long pte;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1233  
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1234  	kvm = p->kvm;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1235  	if (!kvm_is_radix(kvm))
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1236  		return 0;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1237  
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1238  	ret = mutex_lock_interruptible(&p->mutex);
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1239  	if (ret)
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1240  		return ret;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1241  
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1242  	if (p->chars_left) {
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1243  		n = p->chars_left;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1244  		if (n > len)
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1245  			n = len;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1246  		r = copy_to_user(buf, p->buf + p->buf_index, n);
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1247  		n -= r;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1248  		p->chars_left -= n;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1249  		p->buf_index += n;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1250  		buf += n;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1251  		len -= n;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1252  		ret = n;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1253  		if (r) {
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1254  			if (!n)
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1255  				ret = -EFAULT;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1256  			goto out;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1257  		}
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1258  	}
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1259  
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1260  	gpa = p->gpa;
83a055104eaf89 Paul Mackerras 2018-10-08  1261  	nested = NULL;
83a055104eaf89 Paul Mackerras 2018-10-08  1262  	pgt = NULL;
83a055104eaf89 Paul Mackerras 2018-10-08  1263  	while (len != 0 && p->lpid >= 0) {
83a055104eaf89 Paul Mackerras 2018-10-08  1264  		if (gpa >= RADIX_PGTABLE_RANGE) {
83a055104eaf89 Paul Mackerras 2018-10-08  1265  			gpa = 0;
83a055104eaf89 Paul Mackerras 2018-10-08  1266  			pgt = NULL;
83a055104eaf89 Paul Mackerras 2018-10-08  1267  			if (nested) {
83a055104eaf89 Paul Mackerras 2018-10-08  1268  				kvmhv_put_nested(nested);
83a055104eaf89 Paul Mackerras 2018-10-08  1269  				nested = NULL;
83a055104eaf89 Paul Mackerras 2018-10-08  1270  			}
83a055104eaf89 Paul Mackerras 2018-10-08  1271  			p->lpid = kvmhv_nested_next_lpid(kvm, p->lpid);
83a055104eaf89 Paul Mackerras 2018-10-08  1272  			p->hdr = 0;
83a055104eaf89 Paul Mackerras 2018-10-08  1273  			if (p->lpid < 0)
83a055104eaf89 Paul Mackerras 2018-10-08  1274  				break;
83a055104eaf89 Paul Mackerras 2018-10-08  1275  		}
83a055104eaf89 Paul Mackerras 2018-10-08  1276  		if (!pgt) {
83a055104eaf89 Paul Mackerras 2018-10-08  1277  			if (p->lpid == 0) {
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1278  				pgt = kvm->arch.pgtable;
83a055104eaf89 Paul Mackerras 2018-10-08  1279  			} else {
83a055104eaf89 Paul Mackerras 2018-10-08  1280  				nested = kvmhv_get_nested(kvm, p->lpid, false);
83a055104eaf89 Paul Mackerras 2018-10-08  1281  				if (!nested) {
83a055104eaf89 Paul Mackerras 2018-10-08  1282  					gpa = RADIX_PGTABLE_RANGE;
83a055104eaf89 Paul Mackerras 2018-10-08  1283  					continue;
83a055104eaf89 Paul Mackerras 2018-10-08  1284  				}
83a055104eaf89 Paul Mackerras 2018-10-08  1285  				pgt = nested->shadow_pgtable;
83a055104eaf89 Paul Mackerras 2018-10-08  1286  			}
83a055104eaf89 Paul Mackerras 2018-10-08  1287  		}
83a055104eaf89 Paul Mackerras 2018-10-08  1288  		n = 0;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1289  		if (!p->hdr) {
83a055104eaf89 Paul Mackerras 2018-10-08  1290  			if (p->lpid > 0)
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1291  				n = scnprintf(p->buf, sizeof(p->buf),
83a055104eaf89 Paul Mackerras 2018-10-08  1292  					      "\nNested LPID %d: ", p->lpid);
83a055104eaf89 Paul Mackerras 2018-10-08  1293  			n += scnprintf(p->buf + n, sizeof(p->buf) - n,
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1294  				      "pgdir: %lx\n", (unsigned long)pgt);
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1295  			p->hdr = 1;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1296  			goto copy;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1297  		}
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1298  
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1299  		pgdp = pgt + pgd_index(gpa);
b41063afcee7e0 Mike Rapoport  2019-11-24  1300  		p4dp = p4d_offset(pgdp, gpa);
b41063afcee7e0 Mike Rapoport  2019-11-24  1301  		p4d = READ_ONCE(*p4dp);
b41063afcee7e0 Mike Rapoport  2019-11-24  1302  		if (!(p4d_val(p4d) & _PAGE_PRESENT)) {
b41063afcee7e0 Mike Rapoport  2019-11-24  1303  			gpa = (gpa & P4D_MASK) + P4D_SIZE;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1304  			continue;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1305  		}
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1306  
b41063afcee7e0 Mike Rapoport  2019-11-24  1307  		pudp = pud_offset(&p4d, gpa);
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1308  		pud = READ_ONCE(*pudp);
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1309  		if (!(pud_val(pud) & _PAGE_PRESENT)) {
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1310  			gpa = (gpa & PUD_MASK) + PUD_SIZE;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1311  			continue;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1312  		}
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1313  		if (pud_val(pud) & _PAGE_PTE) {
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1314  			pte = pud_val(pud);
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1315  			shift = PUD_SHIFT;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1316  			goto leaf;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1317  		}
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1318  
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1319  		pmdp = pmd_offset(&pud, gpa);
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1320  		pmd = READ_ONCE(*pmdp);
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1321  		if (!(pmd_val(pmd) & _PAGE_PRESENT)) {
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1322  			gpa = (gpa & PMD_MASK) + PMD_SIZE;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1323  			continue;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1324  		}
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1325  		if (pmd_val(pmd) & _PAGE_PTE) {
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1326  			pte = pmd_val(pmd);
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1327  			shift = PMD_SHIFT;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1328  			goto leaf;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1329  		}
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1330  
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1331  		ptep = pte_offset_kernel(&pmd, gpa);
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1332  		pte = pte_val(READ_ONCE(*ptep));
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1333  		if (!(pte & _PAGE_PRESENT)) {
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1334  			gpa += PAGE_SIZE;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1335  			continue;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1336  		}
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1337  		shift = PAGE_SHIFT;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1338  	leaf:
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1339  		n = scnprintf(p->buf, sizeof(p->buf),
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1340  			      " %lx: %lx %d\n", gpa, pte, shift);
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1341  		gpa += 1ul << shift;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1342  	copy:
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1343  		p->chars_left = n;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1344  		if (n > len)
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1345  			n = len;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1346  		r = copy_to_user(buf, p->buf, n);
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1347  		n -= r;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1348  		p->chars_left -= n;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1349  		p->buf_index = n;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1350  		buf += n;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1351  		len -= n;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1352  		ret += n;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1353  		if (r) {
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1354  			if (!ret)
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1355  				ret = -EFAULT;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1356  			break;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1357  		}
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1358  	}
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1359  	p->gpa = gpa;
83a055104eaf89 Paul Mackerras 2018-10-08  1360  	if (nested)
83a055104eaf89 Paul Mackerras 2018-10-08  1361  		kvmhv_put_nested(nested);
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1362  
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1363   out:
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1364  	mutex_unlock(&p->mutex);
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1365  	return ret;
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1366  }
9a94d3ee2d1599 Paul Mackerras 2018-10-08  1367  

:::::: The code at line 1226 was first introduced by commit
:::::: 9a94d3ee2d159927c0f8e5078228eadbce8dda43 KVM: PPC: Book3S HV: Add a debugfs file to dump radix mappings

:::::: TO: Paul Mackerras <paulus@ozlabs.org>
:::::: CC: Michael Ellerman <mpe@ellerman.id.au>

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

[-- Attachment #2: config.gz --]
[-- Type: application/gzip, Size: 26120 bytes --]

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

only message in thread, other threads:[~2020-04-06  3:17 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-04-06  3:17 [rppt:pt-cleanups/5level-fixup 7/13] arch/powerpc/kvm/book3s_64_mmu_radix.c:1226:8: error: unused variable 'pgd' kbuild 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.