tree: https://git.kernel.org/pub/scm/fs/xfs/xfs-linux.git xfs-4.15-merge head: 2d1d1da3d9cc387262193e83f0a96d753b040720 commit: 232b51948b99dfcc95e81d8a289bc0409b3ff5b3 [2/131] xfs: simplify the xfs_getbmap interface config: sh-titan_defconfig (attached as .config) compiler: sh4-linux-gnu-gcc (Debian 7.2.0-11) 7.2.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 232b51948b99dfcc95e81d8a289bc0409b3ff5b3 # save the attached .config to linux build tree make.cross ARCH=sh All errors (new ones prefixed by >>): fs/xfs/xfs_ioctl.c: In function 'xfs_ioc_getbmap.isra.8': >> fs/xfs/xfs_ioctl.c:1624:1: internal compiler error: in change_address_1, at emit-rtl.c:2150 } ^ Please submit a full bug report, with preprocessed source if appropriate. See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions. {standard input}: Assembler messages: {standard input}: Warning: end of file not at end of a line; newline inserted >> {standard input}:1353: Error: missing operand >> {standard input}:1353: Error: invalid operands for opcode {standard input}:1171: Error: displacement to undefined symbol .L320 overflows 12-bit field {standard input}:1198: Error: displacement to undefined symbol .L350 overflows 12-bit field {standard input}:1212: Error: displacement to undefined symbol .L322 overflows 12-bit field {standard input}:1223: Error: displacement to undefined symbol .L351 overflows 12-bit field -- fs//xfs/xfs_ioctl.c: In function 'xfs_ioc_getbmap.isra.8': fs//xfs/xfs_ioctl.c:1624:1: internal compiler error: in change_address_1, at emit-rtl.c:2150 } ^ Please submit a full bug report, with preprocessed source if appropriate. See <file:///usr/share/doc/gcc-7/README.Bugs> for instructions. {standard input}: Assembler messages: {standard input}: Warning: end of file not at end of a line; newline inserted >> {standard input}:1353: Error: missing operand >> {standard input}:1353: Error: invalid operands for opcode {standard input}:1171: Error: displacement to undefined symbol .L320 overflows 12-bit field {standard input}:1198: Error: displacement to undefined symbol .L350 overflows 12-bit field {standard input}:1212: Error: displacement to undefined symbol .L322 overflows 12-bit field {standard input}:1223: Error: displacement to undefined symbol .L351 overflows 12-bit field vim +1624 fs/xfs/xfs_ioctl.c 8a7141a8b fs/xfs/linux-2.6/xfs_ioctl.c Eric Sandeen 2008-11-28 1564 8a7141a8b fs/xfs/linux-2.6/xfs_ioctl.c Eric Sandeen 2008-11-28 1565 STATIC int ^1da177e4 fs/xfs/linux-2.6/xfs_ioctl.c Linus Torvalds 2005-04-16 1566 xfs_ioc_getbmap( 8f3e2058e fs/xfs/xfs_ioctl.c Christoph Hellwig 2016-07-20 1567 struct file *file, ^1da177e4 fs/xfs/linux-2.6/xfs_ioctl.c Linus Torvalds 2005-04-16 1568 unsigned int cmd, ^1da177e4 fs/xfs/linux-2.6/xfs_ioctl.c Linus Torvalds 2005-04-16 1569 void __user *arg) ^1da177e4 fs/xfs/linux-2.6/xfs_ioctl.c Linus Torvalds 2005-04-16 1570 { be6324c00 fs/xfs/xfs_ioctl.c Darrick J. Wong 2017-04-03 1571 struct getbmapx bmx = { 0 }; 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1572 struct kgetbmap *buf; 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1573 size_t recsize; 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1574 int error, i; ^1da177e4 fs/xfs/linux-2.6/xfs_ioctl.c Linus Torvalds 2005-04-16 1575 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1576 switch (cmd) { 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1577 case XFS_IOC_GETBMAPA: 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1578 bmx.bmv_iflags = BMV_IF_ATTRFORK; 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1579 /*FALLTHRU*/ 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1580 case XFS_IOC_GETBMAP: 8f3e2058e fs/xfs/xfs_ioctl.c Christoph Hellwig 2016-07-20 1581 if (file->f_mode & FMODE_NOCMTIME) 8a7141a8b fs/xfs/linux-2.6/xfs_ioctl.c Eric Sandeen 2008-11-28 1582 bmx.bmv_iflags |= BMV_IF_NO_DMAPI_READ; 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1583 /* struct getbmap is a strict subset of struct getbmapx. */ 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1584 recsize = sizeof(struct getbmap); 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1585 break; 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1586 case XFS_IOC_GETBMAPX: 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1587 recsize = sizeof(struct getbmapx); 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1588 break; 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1589 default: 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1590 return -EINVAL; 8a7141a8b fs/xfs/linux-2.6/xfs_ioctl.c Eric Sandeen 2008-11-28 1591 } 8a7141a8b fs/xfs/linux-2.6/xfs_ioctl.c Eric Sandeen 2008-11-28 1592 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1593 if (copy_from_user(&bmx, arg, recsize)) b474c7ae4 fs/xfs/xfs_ioctl.c Eric Sandeen 2014-06-22 1594 return -EFAULT; ^1da177e4 fs/xfs/linux-2.6/xfs_ioctl.c Linus Torvalds 2005-04-16 1595 ^1da177e4 fs/xfs/linux-2.6/xfs_ioctl.c Linus Torvalds 2005-04-16 1596 if (bmx.bmv_count < 2) b474c7ae4 fs/xfs/xfs_ioctl.c Eric Sandeen 2014-06-22 1597 return -EINVAL; 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1598 if (bmx.bmv_count > ULONG_MAX / recsize) 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1599 return -ENOMEM; ^1da177e4 fs/xfs/linux-2.6/xfs_ioctl.c Linus Torvalds 2005-04-16 1600 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1601 buf = kmem_zalloc_large(bmx.bmv_count * sizeof(*buf), 0); 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1602 if (!buf) 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1603 return -ENOMEM; ^1da177e4 fs/xfs/linux-2.6/xfs_ioctl.c Linus Torvalds 2005-04-16 1604 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1605 error = xfs_getbmap(XFS_I(file_inode(file)), &bmx, buf); ^1da177e4 fs/xfs/linux-2.6/xfs_ioctl.c Linus Torvalds 2005-04-16 1606 if (error) 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1607 goto out_free_buf; ^1da177e4 fs/xfs/linux-2.6/xfs_ioctl.c Linus Torvalds 2005-04-16 1608 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1609 error = -EFAULT; 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1610 if (copy_to_user(arg, &bmx, recsize)) 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1611 goto out_free_buf; 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1612 arg += recsize; ^1da177e4 fs/xfs/linux-2.6/xfs_ioctl.c Linus Torvalds 2005-04-16 1613 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1614 for (i = 0; i < bmx.bmv_entries; i++) { 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1615 if (!xfs_getbmap_format(buf + i, arg, recsize)) 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1616 goto out_free_buf; 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1617 arg += recsize; 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1618 } 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1619 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1620 error = 0; 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1621 out_free_buf: 232b51948 fs/xfs/xfs_ioctl.c Christoph Hellwig 2017-10-17 1622 kmem_free(buf); ^1da177e4 fs/xfs/linux-2.6/xfs_ioctl.c Linus Torvalds 2005-04-16 1623 return 0; ^1da177e4 fs/xfs/linux-2.6/xfs_ioctl.c Linus Torvalds 2005-04-16 @1624 } df26cfe84 fs/xfs/linux-2.6/xfs_ioctl.c Lachlan McIlroy 2008-04-18 1625 :::::: The code at line 1624 was first introduced by commit :::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2 :::::: TO: Linus Torvalds <torvalds@xxxxxxxxxxxxxxx> :::::: CC: Linus Torvalds <torvalds@xxxxxxxxxxxxxxx> --- 0-DAY kernel test infrastructure Open Source Technology Center https://lists.01.org/pipermail/kbuild-all Intel Corporation
Attachment:
.config.gz
Description: application/gzip