Thread (40 messages) 40 messages, 6 authors, 2017-04-21

[kbuild-all] [PATCH v4 13/22] KVM: arm64: ITS: KVM_DEV_ARM_VGIC_GRP_ITS_TABLES group

From: eric.auger@redhat.com (Auger Eric)
Date: 2017-03-30 06:46:43
Also in: kvm, kvmarm

Hi Xiaolong

On 30/03/2017 04:21, Ye Xiaolong wrote:
Hi, Eric

On 03/27, Auger Eric wrote:
quoted
Hi,

On 27/03/2017 17:04, kbuild test robot wrote:
quoted
Hi Eric,

[auto build test ERROR on kvmarm/next]
[also build test ERROR on v4.11-rc4 next-20170327]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Eric-Auger/vITS-save-restore/20170327-195443
base:   https://git.kernel.org/pub/scm/linux/kernel/git/kvmarm/kvmarm.git next
config: arm64-defconfig (attached as .config)
compiler: aarch64-linux-gnu-gcc (Debian 6.1.1-9) 6.1.1 20160705
reproduce:
        wget https://raw.githubusercontent.com/01org/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        # save the attached .config to linux build tree
        make.cross ARCH=arm64 

All errors (new ones prefixed by >>):

   arch/arm64/kvm/../../../virt/kvm/arm/vgic/vgic-its.c: In function 'vgic_its_has_attr':
quoted
quoted
arch/arm64/kvm/../../../virt/kvm/arm/vgic/vgic-its.c:1766:33: error: 'its' undeclared (first use in this function)
      return vgic_its_table_restore(its);
I think this is due to the fact the series is applied on KVM: arm/arm64:
Emulate the EL1 phys timer registers (kvmarm-for-4.11).

Please apply it to (kvmarm/queue, kvmarm/next, kvm_next) KVM: arm/arm64:
vgic: Improve sync_hwstate performance  (255905e)
I also checked it compiles on 4.11-rc4.
Hmm, we did apply your series on top of kvarm/next, judging from the function
code below, I can't see the 'its' declaration. 

static int vgic_its_has_attr(struct kvm_device *dev,
                             struct kvm_device_attr *attr)
{
        switch (attr->group) {
        case KVM_DEV_ARM_VGIC_GRP_ADDR:
                switch (attr->attr) {
                case KVM_VGIC_ITS_ADDR_TYPE:
                        return 0;
                }
                break;
        case KVM_DEV_ARM_VGIC_GRP_CTRL:
                switch (attr->attr) {
                case KVM_DEV_ARM_VGIC_CTRL_INIT:
                        return 0;
                }
                break;
        case KVM_DEV_ARM_VGIC_GRP_ITS_REGS: {
                u64 __user *uaddr = (u64 __user *)(long)attr->addr;
                u64 reg;

                if (get_user(reg, uaddr))
                        return -EFAULT;

                return vgic_its_attr_regs_access(dev, attr, &reg, true);
        }
        case KVM_DEV_ARM_VGIC_GRP_ITS_TABLES:
                if (attr->attr)
                        return -EINVAL;
                return vgic_its_table_restore(its);
The above code shows that my series is not correctly applied since that
call to vgic_its_table_restore() should normally be in
vgic_its_set_attr() and not in vgic_its_has_attr() function
(virt/kvm/arm/vgic-its.c).

I pushed this series applied on top of up to date kvmarm/next at
https://github.com/eauger/linux/tree/v4.11-rc3-its-mig-v4.

As noticed earlier, the series is applied on top of 255905e (KVM:
arm/arm64: vgic: Improve sync_hwstate performance)

Thanks

Eric

        }
        return -ENXIO;
}

Thanks,
Xiaolong
quoted
Please let me know if I got something wrong.

Thanks

Eric
quoted
                                    ^~~
   arch/arm64/kvm/../../../virt/kvm/arm/vgic/vgic-its.c:1766:33: note: each undeclared identifier is reported only once for each function it appears in

vim +/its +1766 arch/arm64/kvm/../../../virt/kvm/arm/vgic/vgic-its.c

  1750			case KVM_DEV_ARM_VGIC_CTRL_INIT:
  1751				return 0;
  1752			}
  1753			break;
  1754		case KVM_DEV_ARM_VGIC_GRP_ITS_REGS: {
  1755			u64 __user *uaddr = (u64 __user *)(long)attr->addr;
  1756			u64 reg;
  1757	
  1758			if (get_user(reg, uaddr))
  1759				return -EFAULT;
  1760	
  1761			return vgic_its_attr_regs_access(dev, attr, &reg, true);
  1762		}
  1763		case KVM_DEV_ARM_VGIC_GRP_ITS_TABLES:
  1764			if (attr->attr)
  1765				return -EINVAL;
quoted
1766			return vgic_its_table_restore(its);
  1767		}
  1768		return -ENXIO;
  1769	}
  1770	
  1771	static int vgic_its_set_attr(struct kvm_device *dev,
  1772				     struct kvm_device_attr *attr)
  1773	{
  1774		struct vgic_its *its = dev->private;

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation



_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
_______________________________________________
kbuild-all mailing list
kbuild-all at lists.01.org
https://lists.01.org/mailman/listinfo/kbuild-all
_______________________________________________
linux-arm-kernel mailing list
linux-arm-kernel at lists.infradead.org
http://lists.infradead.org/mailman/listinfo/linux-arm-kernel
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help