Re: [PATCH] kvm : qemu : fix compilation error in kvm-userspace for ia64
Zhang, Yang wrote: when using make in kernel, it can not find msidef.h. This patch fix this. Applied, thanks. -- error compiling committee.c: too many arguments to function -- To unsubscribe from this list: send the line unsubscribe kvm in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH] kvm : qemu : fix compilation error in kvm-userspace for ia64
when using make in kernel, it can not find msidef.h. This patch fix this. Signed-off-by: Yang Zhang yang.zh...@intel.com diff --git a/kernel/include-compat/asm-ia64/msidef.h b/kernel/include-compat/asm-ia64/msidef.h new file mode 100644 index 000..592c104 --- /dev/null +++ b/kernel/include-compat/asm-ia64/msidef.h @@ -0,0 +1,42 @@ +#ifndef _IA64_MSI_DEF_H +#define _IA64_MSI_DEF_H + +/* + * Shifts for APIC-based data + */ + +#define MSI_DATA_VECTOR_SHIFT 0 +#defineMSI_DATA_VECTOR(v) (((u8)v) MSI_DATA_VECTOR_SHIFT) +#define MSI_DATA_VECTOR_MASK 0xff00 + +#define MSI_DATA_DELIVERY_MODE_SHIFT 8 +#define MSI_DATA_DELIVERY_FIXED(0 MSI_DATA_DELIVERY_MODE_SHIFT) +#define MSI_DATA_DELIVERY_LOWPRI (1 MSI_DATA_DELIVERY_MODE_SHIFT) + +#define MSI_DATA_LEVEL_SHIFT 14 +#define MSI_DATA_LEVEL_DEASSERT(0 MSI_DATA_LEVEL_SHIFT) +#define MSI_DATA_LEVEL_ASSERT (1 MSI_DATA_LEVEL_SHIFT) + +#define MSI_DATA_TRIGGER_SHIFT 15 +#define MSI_DATA_TRIGGER_EDGE (0 MSI_DATA_TRIGGER_SHIFT) +#define MSI_DATA_TRIGGER_LEVEL (1 MSI_DATA_TRIGGER_SHIFT) + +/* + * Shift/mask fields for APIC-based bus address + */ + +#define MSI_ADDR_DEST_ID_SHIFT 4 +#define MSI_ADDR_HEADER0xfee0 + +#define MSI_ADDR_DEST_ID_MASK 0xffff +#define MSI_ADDR_DEST_ID_CPU(cpu) ((cpu) MSI_ADDR_DEST_ID_SHIFT) + +#define MSI_ADDR_DEST_MODE_SHIFT 2 +#define MSI_ADDR_DEST_MODE_PHYS(0 MSI_ADDR_DEST_MODE_SHIFT) +#defineMSI_ADDR_DEST_MODE_LOGIC(1 MSI_ADDR_DEST_MODE_SHIFT) + +#define MSI_ADDR_REDIRECTION_SHIFT 3 +#define MSI_ADDR_REDIRECTION_CPU (0 MSI_ADDR_REDIRECTION_SHIFT) +#define MSI_ADDR_REDIRECTION_LOWPRI(1 MSI_ADDR_REDIRECTION_SHIFT) + +#endif/* _IA64_MSI_DEF_H */ -- 1.6.0.rc1 -- To unsubscribe from this list: send the line unsubscribe kvm in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
RE: [PATCH] kvm : qemu : fix compilation error in kvm-userspace for ia64
Marcelo Tosatti wrote: On Tue, Mar 03, 2009 at 11:38:17AM +0800, Zhang, Yang wrote: diff --git a/qemu/hw/i8259.c b/qemu/hw/i8259.c index 9cb3941..025f993 100644 --- a/qemu/hw/i8259.c +++ b/qemu/hw/i8259.c @@ -189,8 +189,10 @@ static void i8259_set_irq(void *opaque, int irq, int level) if (kvm_enabled()) { int pic_ret; if (kvm_set_irq(irq, level, pic_ret)) { +#ifndef TARGET_IA64 if (pic_ret != 0) apic_set_irq_delivered(); +#endif Why don't you define apic_set_irq_delivered for IA64? seems right, But i cannot find the proper place to define it. And i think we can do this at the time of we need to use it. -- To unsubscribe from this list: send the line unsubscribe kvm in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH] kvm : qemu : fix compilation error in kvm-userspace for ia64
On Thu, Mar 05, 2009 at 09:36:13AM +0800, Zhang, Yang wrote: Marcelo Tosatti wrote: On Tue, Mar 03, 2009 at 11:38:17AM +0800, Zhang, Yang wrote: diff --git a/qemu/hw/i8259.c b/qemu/hw/i8259.c index 9cb3941..025f993 100644 --- a/qemu/hw/i8259.c +++ b/qemu/hw/i8259.c @@ -189,8 +189,10 @@ static void i8259_set_irq(void *opaque, int irq, int level) if (kvm_enabled()) { int pic_ret; if (kvm_set_irq(irq, level, pic_ret)) { +#ifndef TARGET_IA64 if (pic_ret != 0) apic_set_irq_delivered(); +#endif Why don't you define apic_set_irq_delivered for IA64? seems right, But i cannot find the proper place to define it. And i think we can do this at the time of we need to use it. The thinking is avoid code from piling in kvm-userspace when it belongs in upstream QEMU. #ifdef's like that are ugly, but OK. Will apply. Can you please submit this one to be included in QEMU upstream? commit f759e44e04f03798d83de53d2c295965c68126a2 Author: Yang yang.zh...@intel.com Date: Thu Jan 15 13:03:53 2009 +0800 kvm: qemu: Save ia64 nvram Thanks -- To unsubscribe from this list: send the line unsubscribe kvm in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
RE: [PATCH] kvm : qemu : fix compilation error in kvm-userspace for ia64
Marcelo Tosatti wrote: On Thu, Mar 05, 2009 at 09:36:13AM +0800, Zhang, Yang wrote: seems right, But i cannot find the proper place to define it. And i think we can do this at the time of we need to use it. The thinking is avoid code from piling in kvm-userspace when it belongs in upstream QEMU. #ifdef's like that are ugly, but OK. Will apply. Thank you. Can you please submit this one to be included in QEMU upstream? commit f759e44e04f03798d83de53d2c295965c68126a2 Author: Yang yang.zh...@intel.com Date: Thu Jan 15 13:03:53 2009 +0800 kvm: qemu: Save ia64 nvram Ok.-- To unsubscribe from this list: send the line unsubscribe kvm in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH] kvm : qemu : fix compilation error in kvm-userspace for ia64
Hi please to review it. thanks Best Regards --yang From 0cce141eae71bbb2012efd54ba38916c437cd030 Mon Sep 17 00:00:00 2001 From: Yang Zhang yang.zh...@intel.com Date: Mon, 2 Mar 2009 22:29:08 -0500 Subject: [PATCH] kvm : qemu : fix compilation error in kvm-userspace for ia64 when using make sync, the msidef.h is missing. This patch fix this. And IA64 does not need apic_set_irq_delivered(). Signed-off-by: Yang Zhang yang.zh...@intel.com --- kernel/Makefile |3 ++- qemu/hw/i8259.c |2 ++ qemu/hw/ipf.c |2 +- 3 files changed, 5 insertions(+), 2 deletions(-) diff --git a/kernel/Makefile b/kernel/Makefile index f8b341f..808f15e 100644 --- a/kernel/Makefile +++ b/kernel/Makefile @@ -61,7 +61,8 @@ headers-old = $(LINUX)/./include/asm-$(ARCH_DIR)/kvm*.h headers-new = $(LINUX)/arch/$(ARCH_DIR)/include/asm/./kvm*.h \ $(LINUX)/arch/$(ARCH_DIR)/include/asm/./vmx*.h \ $(LINUX)/arch/$(ARCH_DIR)/include/asm/./svm*.h \ - $(LINUX)/arch/$(ARCH_DIR)/include/asm/./virtext*.h + $(LINUX)/arch/$(ARCH_DIR)/include/asm/./virtext*.h \ + $(LINUX)/arch/$(ARCH_DIR)/include/asm/./msidef*.h header-sync: rm -rf $T diff --git a/qemu/hw/i8259.c b/qemu/hw/i8259.c index 9cb3941..025f993 100644 --- a/qemu/hw/i8259.c +++ b/qemu/hw/i8259.c @@ -189,8 +189,10 @@ static void i8259_set_irq(void *opaque, int irq, int level) if (kvm_enabled()) { int pic_ret; if (kvm_set_irq(irq, level, pic_ret)) { +#ifndef TARGET_IA64 if (pic_ret != 0) apic_set_irq_delivered(); +#endif return; } } diff --git a/qemu/hw/ipf.c b/qemu/hw/ipf.c index eb9aaec..73dac18 100644 --- a/qemu/hw/ipf.c +++ b/qemu/hw/ipf.c @@ -701,7 +701,7 @@ void ioapic_set_irq(void *opaque, int irq_num, int level) ioapic_irq_count[vector] -= 1; if (kvm_enabled()) { - if (kvm_set_irq(vector, ioapic_irq_count[vector] == 0)) + if (kvm_set_irq(vector, ioapic_irq_count[vector] == 0, NULL)) return; } } -- 1.6.0.rc1 0001-kvm-qemu-fix-compilation-error-in-kvm-userspace.patch Description: 0001-kvm-qemu-fix-compilation-error-in-kvm-userspace.patch
RE: [PATCH] kvm : qemu : fix compilation error in kvm-userspace for ia64
diff --git a/kernel/Makefile b/kernel/Makefile index f8b341f..808f15e 100644 --- a/kernel/Makefile +++ b/kernel/Makefile @@ -61,7 +61,8 @@ headers-old = $(LINUX)/./include/asm-$(ARCH_DIR)/kvm*.h headers-new = $(LINUX)/arch/$(ARCH_DIR)/include/asm/./kvm*.h \ $(LINUX)/arch/$(ARCH_DIR)/include/asm/./vmx*.h \ $(LINUX)/arch/$(ARCH_DIR)/include/asm/./svm*.h \ - $(LINUX)/arch/$(ARCH_DIR)/include/asm/./virtext*.h + $(LINUX)/arch/$(ARCH_DIR)/include/asm/./virtext*.h \ + $(LINUX)/arch/$(ARCH_DIR)/include/asm/./msidef*.h Yang, Don't need sync msidef.h from kernel when do 'make sync', and just make a copy and place it in 'include-compat/asm-ia64' because it is only used for backward-compat with old kernels. Xiantao -- To unsubscribe from this list: send the line unsubscribe kvm in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
RE: [PATCH] kvm : qemu : fix compilation error in kvm-userspace for ia64
ok, i see Best Regards --yang -Original Message- From: Zhang, Xiantao Sent: 2009年3月3日 11:51 To: Zhang, Yang; kvm-i...@vger.kernel.org Cc: kvm@vger.kernel.org; Avi Kivity Subject: RE: [PATCH] kvm : qemu : fix compilation error in kvm-userspace for ia64 diff --git a/kernel/Makefile b/kernel/Makefile index f8b341f..808f15e 100644 --- a/kernel/Makefile +++ b/kernel/Makefile @@ -61,7 +61,8 @@ headers-old = $(LINUX)/./include/asm-$(ARCH_DIR)/kvm*.h headers-new = $(LINUX)/arch/$(ARCH_DIR)/include/asm/./kvm*.h \ $(LINUX)/arch/$(ARCH_DIR)/include/asm/./vmx*.h \ $(LINUX)/arch/$(ARCH_DIR)/include/asm/./svm*.h \ - $(LINUX)/arch/$(ARCH_DIR)/include/asm/./virtext*.h + $(LINUX)/arch/$(ARCH_DIR)/include/asm/./virtext*.h \ + $(LINUX)/arch/$(ARCH_DIR)/include/asm/./msidef*.h Yang, Don't need sync msidef.h from kernel when do 'make sync', and just make a copy and place it in 'include-compat/asm-ia64' because it is only used for backward-compat with old kernels. Xiantao N�Р骒r��yb�X�肚�v�^�)藓{.n�+�筏�hФ�≤�}��财�z�j:+v�����赙zZ+��+zf"�h���~i���z��wア�?�ㄨ���)撷f
RE: [PATCH] kvm : qemu : fix compilation error in kvm-userspace for ia64
Hi please drop the previous patch. This is the modifide patch. thanks From 4cdda47ee9d1fb19697eed36b82c1d8d614a2d4e Mon Sep 17 00:00:00 2001 From: Yang Zhang yang.zh...@intel.com Date: Mon, 2 Mar 2009 22:56:08 -0500 Subject: [PATCH] kvm : qemu : fix compilation error in kvm-userspace for ia64 when using make in kernel, it can not find msidef.h. This patch fix this. And IA64 does not need apic_set_irq_delivered(). Signed-off-by: Yang Zhang yang.zh...@intel.com --- kernel/include-compat/asm-ia64/msidef.h | 42 +++ qemu/hw/i8259.c |2 + qemu/hw/ipf.c |2 +- 3 files changed, 45 insertions(+), 1 deletions(-) create mode 100644 kernel/include-compat/asm-ia64/msidef.h diff --git a/kernel/include-compat/asm-ia64/msidef.h b/kernel/include-compat/asm-ia64/msidef.h new file mode 100644 index 000..592c104 --- /dev/null +++ b/kernel/include-compat/asm-ia64/msidef.h @@ -0,0 +1,42 @@ +#ifndef _IA64_MSI_DEF_H +#define _IA64_MSI_DEF_H + +/* + * Shifts for APIC-based data + */ + +#define MSI_DATA_VECTOR_SHIFT 0 +#defineMSI_DATA_VECTOR(v) (((u8)v) MSI_DATA_VECTOR_SHIFT) +#define MSI_DATA_VECTOR_MASK 0xff00 + +#define MSI_DATA_DELIVERY_MODE_SHIFT 8 +#define MSI_DATA_DELIVERY_FIXED(0 MSI_DATA_DELIVERY_MODE_SHIFT) +#define MSI_DATA_DELIVERY_LOWPRI (1 MSI_DATA_DELIVERY_MODE_SHIFT) + +#define MSI_DATA_LEVEL_SHIFT 14 +#define MSI_DATA_LEVEL_DEASSERT(0 MSI_DATA_LEVEL_SHIFT) +#define MSI_DATA_LEVEL_ASSERT (1 MSI_DATA_LEVEL_SHIFT) + +#define MSI_DATA_TRIGGER_SHIFT 15 +#define MSI_DATA_TRIGGER_EDGE (0 MSI_DATA_TRIGGER_SHIFT) +#define MSI_DATA_TRIGGER_LEVEL (1 MSI_DATA_TRIGGER_SHIFT) + +/* + * Shift/mask fields for APIC-based bus address + */ + +#define MSI_ADDR_DEST_ID_SHIFT 4 +#define MSI_ADDR_HEADER0xfee0 + +#define MSI_ADDR_DEST_ID_MASK 0xffff +#define MSI_ADDR_DEST_ID_CPU(cpu) ((cpu) MSI_ADDR_DEST_ID_SHIFT) + +#define MSI_ADDR_DEST_MODE_SHIFT 2 +#define MSI_ADDR_DEST_MODE_PHYS(0 MSI_ADDR_DEST_MODE_SHIFT) +#defineMSI_ADDR_DEST_MODE_LOGIC(1 MSI_ADDR_DEST_MODE_SHIFT) + +#define MSI_ADDR_REDIRECTION_SHIFT 3 +#define MSI_ADDR_REDIRECTION_CPU (0 MSI_ADDR_REDIRECTION_SHIFT) +#define MSI_ADDR_REDIRECTION_LOWPRI(1 MSI_ADDR_REDIRECTION_SHIFT) + +#endif/* _IA64_MSI_DEF_H */ diff --git a/qemu/hw/i8259.c b/qemu/hw/i8259.c index 9cb3941..025f993 100644 --- a/qemu/hw/i8259.c +++ b/qemu/hw/i8259.c @@ -189,8 +189,10 @@ static void i8259_set_irq(void *opaque, int irq, int level) if (kvm_enabled()) { int pic_ret; if (kvm_set_irq(irq, level, pic_ret)) { +#ifndef TARGET_IA64 if (pic_ret != 0) apic_set_irq_delivered(); +#endif return; } } diff --git a/qemu/hw/ipf.c b/qemu/hw/ipf.c index eb9aaec..73dac18 100644 --- a/qemu/hw/ipf.c +++ b/qemu/hw/ipf.c @@ -701,7 +701,7 @@ void ioapic_set_irq(void *opaque, int irq_num, int level) ioapic_irq_count[vector] -= 1; if (kvm_enabled()) { - if (kvm_set_irq(vector, ioapic_irq_count[vector] == 0)) + if (kvm_set_irq(vector, ioapic_irq_count[vector] == 0, NULL)) return; } } -- 1.6.0.rc1 0001-kvm-qemu-fix-compilation-error-in-kvm-userspace.patch Description: 0001-kvm-qemu-fix-compilation-error-in-kvm-userspace.patch