# HG changeset patch
# User awilliam@xxxxxxxxxxx
# Node ID 8a551ec13d93e3d6568ab4e5882aba5bcd84321c
# Parent 142a3eec56bda2c96d6b9f7bcaaab1b811b6c31f
[IA64] Remove the last compile warnings
This patch intends to remove the last warnings when compile
Signed-off-by: Zhang xiantao <xiantao.zhang@xxxxxxxxx>
diff -r 142a3eec56bd -r 8a551ec13d93 xen/arch/ia64/linux-xen/efi.c
--- a/xen/arch/ia64/linux-xen/efi.c Fri Mar 10 17:00:31 2006
+++ b/xen/arch/ia64/linux-xen/efi.c Tue Mar 14 19:27:57 2006
@@ -37,6 +37,7 @@
#define EFI_DEBUG 0
extern efi_status_t efi_call_phys (void *, ...);
+extern unsigned long long memparse (char *ptr, char **retptr);
struct efi efi;
EXPORT_SYMBOL(efi);
diff -r 142a3eec56bd -r 8a551ec13d93 xen/arch/ia64/vmx/mmio.c
--- a/xen/arch/ia64/vmx/mmio.c Fri Mar 10 17:00:31 2006
+++ b/xen/arch/ia64/vmx/mmio.c Tue Mar 14 19:27:57 2006
@@ -33,6 +33,7 @@
#include <asm/mm.h>
#include <asm/vmx.h>
#include <public/event_channel.h>
+#include <linux/event.h>
/*
struct mmio_list *lookup_mmio(u64 gpa, struct mmio_list *mio_base)
diff -r 142a3eec56bd -r 8a551ec13d93 xen/arch/ia64/vmx/pal_emul.c
--- a/xen/arch/ia64/vmx/pal_emul.c Fri Mar 10 17:00:31 2006
+++ b/xen/arch/ia64/vmx/pal_emul.c Tue Mar 14 19:27:57 2006
@@ -69,7 +69,6 @@
static struct ia64_pal_retval
pal_vm_tr_read (VCPU *vcpu ) {
-#warning pal_vm_tr_read: to be implemented
struct ia64_pal_retval result;
result.status= -1; //unimplemented
@@ -102,7 +101,6 @@
static struct ia64_pal_retval
pal_halt (VCPU *vcpu) {
-#warning pal_halt: to be implemented
//bugbug: to be implement.
struct ia64_pal_retval result;
@@ -141,12 +139,18 @@
static struct ia64_pal_retval
pal_bus_get_features(VCPU *vcpu){
-
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
pal_cache_summary(VCPU *vcpu){
-
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
@@ -158,22 +162,34 @@
static struct ia64_pal_retval
pal_cache_info(VCPU *vcpu){
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
pal_cache_prot_info(VCPU *vcpu){
-}
-
-static struct ia64_pal_retval
-pal_cache_shared_info(VCPU *vcpu){
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
pal_mem_attrib(VCPU *vcpu){
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
pal_debug_info(VCPU *vcpu){
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
@@ -206,46 +222,89 @@
static struct ia64_pal_retval
pal_halt_info(VCPU *vcpu){
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
pal_logical_to_physica(VCPU *vcpu){
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
pal_perf_mon_info(VCPU *vcpu){
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
pal_proc_get_features(VCPU *vcpu){
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
pal_ptce_info(VCPU *vcpu){
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
pal_register_info(VCPU *vcpu){
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
pal_rse_info(VCPU *vcpu){
-}
-
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
+}
static struct ia64_pal_retval
pal_test_info(VCPU *vcpu){
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
pal_vm_summary(VCPU *vcpu){
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
pal_vm_info(VCPU *vcpu){
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
static struct ia64_pal_retval
pal_vm_page_size(VCPU *vcpu){
+ struct ia64_pal_retval result;
+
+ result.status= -1; //unimplemented
+ return result;
}
void
pal_emul( VCPU *vcpu) {
@@ -294,6 +353,82 @@
case PAL_FREQ_BASE:
result = pal_freq_base (vcpu);
+ break;
+
+ case PAL_BUS_GET_FEATURES :
+ result = pal_bus_get_features (vcpu);
+ break;
+
+ case PAL_CACHE_SUMMARY :
+ result = pal_cache_summary (vcpu);
+ break;
+
+ case PAL_CACHE_INIT :
+ result = pal_cache_init(vcpu);
+ break;
+
+ case PAL_CACHE_INFO :
+ result = pal_cache_info(vcpu);
+ break;
+
+ case PAL_CACHE_PROT_INFO :
+ result = pal_cache_prot_info(vcpu);
+ break;
+
+ case PAL_MEM_ATTRIB :
+ result = pal_mem_attrib(vcpu);
+ break;
+
+ case PAL_DEBUG_INFO :
+ result = pal_debug_info(vcpu);
+ break;
+
+ case PAL_FIXED_ADDR :
+ result = pal_fixed_addr(vcpu);
+ break;
+
+ case PAL_HALT_INFO :
+ result = pal_halt_info(vcpu);
+ break;
+
+ case PAL_LOGICAL_TO_PHYSICAL :
+ result = pal_logical_to_physica(vcpu);
+ break;
+
+ case PAL_PERF_MON_INFO :
+ result = pal_perf_mon_info(vcpu);
+ break;
+
+ case PAL_PROC_GET_FEATURES:
+ result = pal_proc_get_features(vcpu);
+ break;
+
+ case PAL_PTCE_INFO :
+ result = pal_ptce_info(vcpu);
+ break;
+
+ case PAL_REGISTER_INFO :
+ result = pal_register_info(vcpu);
+ break;
+
+ case PAL_RSE_INFO :
+ result = pal_rse_info(vcpu);
+ break;
+
+ case PAL_TEST_PROC :
+ result = pal_test_info(vcpu);
+ break;
+
+ case PAL_VM_SUMMARY :
+ result = pal_vm_summary(vcpu);
+ break;
+
+ case PAL_VM_INFO :
+ result = pal_vm_info(vcpu);
+ break;
+
+ case PAL_VM_PAGE_SIZE :
+ result = pal_vm_page_size(vcpu);
break;
default:
diff -r 142a3eec56bd -r 8a551ec13d93 xen/arch/ia64/vmx/vlsapic.c
--- a/xen/arch/ia64/vmx/vlsapic.c Fri Mar 10 17:00:31 2006
+++ b/xen/arch/ia64/vmx/vlsapic.c Tue Mar 14 19:27:57 2006
@@ -130,7 +130,7 @@
*/
uint64_t vtm_get_itc(VCPU *vcpu)
{
- uint64_t guest_itc, spsr;
+ uint64_t guest_itc;
vtime_t *vtm;
vtm=&(vcpu->arch.arch_vmx.vtm);
@@ -437,11 +437,12 @@
{
return ( (pending >> 4) > mic );
}
-
+#if 0
static int is_invalid_irq(int vec)
{
return (vec == 1 || ((vec <= 14 && vec >= 3)));
}
+#endif //shadow it due to no use currently
#define IRQ_NO_MASKED 0
#define IRQ_MASKED_BY_VTPR 1
diff -r 142a3eec56bd -r 8a551ec13d93 xen/arch/ia64/vmx/vmx_hypercall.c
--- a/xen/arch/ia64/vmx/vmx_hypercall.c Fri Mar 10 17:00:31 2006
+++ b/xen/arch/ia64/vmx/vmx_hypercall.c Tue Mar 14 19:27:57 2006
@@ -122,7 +122,7 @@
u64 r32,r33,ret;
vcpu_get_gr_nat(vcpu,16,&r32);
vcpu_get_gr_nat(vcpu,17,&r33);
- ret=do_xen_version((int )r32,r33);
+ ret=do_xen_version((int )r32,(void *)r33);
vcpu_set_gr(vcpu, 8, ret, 0);
vmx_vcpu_increment_iip(vcpu);
}
diff -r 142a3eec56bd -r 8a551ec13d93 xen/arch/ia64/vmx/vmx_init.c
--- a/xen/arch/ia64/vmx/vmx_init.c Fri Mar 10 17:00:31 2006
+++ b/xen/arch/ia64/vmx/vmx_init.c Tue Mar 14 19:27:57 2006
@@ -50,6 +50,8 @@
#include <public/arch-ia64.h>
#include <asm/hvm/vioapic.h>
#include <public/event_channel.h>
+#include <xen/event.h>
+#include <asm/vlsapic.h>
/* Global flag to identify whether Intel vmx feature is on */
u32 vmx_enabled = 0;
@@ -161,7 +163,7 @@
return NULL;
}
- printk("vpd base: 0x%lp, vpd size:%ld\n", vpd, sizeof(vpd_t));
+ printk("vpd base: 0x%p, vpd size:%ld\n", vpd, sizeof(vpd_t));
memset(vpd, 0, VPD_SIZE);
/* CPUID init */
for (i = 0; i < 5; i++)
@@ -234,7 +236,7 @@
{
u64 status;
- status = ia64_pal_vp_restore((u64)v->arch.privregs, 0);
+ status = ia64_pal_vp_restore((u64 *)v->arch.privregs, 0);
if (status != PAL_STATUS_SUCCESS)
panic("Restore vp status failed\n");
diff -r 142a3eec56bd -r 8a551ec13d93 xen/arch/ia64/vmx/vmx_interrupt.c
--- a/xen/arch/ia64/vmx/vmx_interrupt.c Fri Mar 10 17:00:31 2006
+++ b/xen/arch/ia64/vmx/vmx_interrupt.c Tue Mar 14 19:27:57 2006
@@ -334,12 +334,13 @@
* @ Nat Consumption Vector
* Refer to SDM Vol2 Table 5-6 & 8-1
*/
-
+#if 0
static void
ir_nat_page_consumption (VCPU *vcpu, u64 vadr)
{
_nat_consumption_fault(vcpu, vadr, DATA);
}
+#endif //shadow it due to no use currently
/*
* Instruction Nat Page Consumption Fault
diff -r 142a3eec56bd -r 8a551ec13d93 xen/arch/ia64/vmx/vmx_process.c
--- a/xen/arch/ia64/vmx/vmx_process.c Fri Mar 10 17:00:31 2006
+++ b/xen/arch/ia64/vmx/vmx_process.c Tue Mar 14 19:27:57 2006
@@ -58,6 +58,11 @@
extern void die_if_kernel(char *str, struct pt_regs *regs, long err);
extern void rnat_consumption (VCPU *vcpu);
+extern unsigned long translate_domain_mpaddr(unsigned long mpaddr);
+extern void alt_itlb (VCPU *vcpu, u64 vadr);
+extern void itlb_fault (VCPU *vcpu, u64 vadr);
+extern void ivhpt_fault (VCPU *vcpu, u64 vadr);
+
#define DOMN_PAL_REQUEST 0x110000
static UINT64 vec2off[68] = {0x0,0x400,0x800,0xc00,0x1000, 0x1400,0x1800,
diff -r 142a3eec56bd -r 8a551ec13d93 xen/arch/ia64/vmx/vmx_virt.c
--- a/xen/arch/ia64/vmx/vmx_virt.c Fri Mar 10 17:00:31 2006
+++ b/xen/arch/ia64/vmx/vmx_virt.c Tue Mar 14 19:27:57 2006
@@ -34,6 +34,7 @@
#include <asm/virt_event.h>
#include <asm/vmx_phy_mode.h>
extern UINT64 privop_trace;
+extern void vhpi_detection(VCPU *vcpu);//temporarily place here,need a header
file.
void
ia64_priv_decoder(IA64_SLOT_TYPE slot_type, INST64 inst, UINT64 * cause)
diff -r 142a3eec56bd -r 8a551ec13d93 xen/arch/ia64/xen/vcpu.c
--- a/xen/arch/ia64/xen/vcpu.c Fri Mar 10 17:00:31 2006
+++ b/xen/arch/ia64/xen/vcpu.c Tue Mar 14 19:27:57 2006
@@ -650,7 +650,7 @@
* and this must be checked independently; see vcpu_deliverable interrupts() */
UINT64 vcpu_check_pending_interrupts(VCPU *vcpu)
{
- UINT64 *p, *q, *r, bits, bitnum, mask, i, vector;
+ UINT64 *p, *r, bits, bitnum, mask, i, vector;
/* Always check pending event, since guest may just ack the
* event injection without handle. Later guest may throw out
@@ -664,8 +664,8 @@
p = &PSCBX(vcpu,irr[3]);
r = &PSCBX(vcpu,insvc[3]);
- for (i = 3; ; p--, q--, r--, i--) {
- bits = *p /* & *q */;
+ for (i = 3; ; p--, r--, i--) {
+ bits = *p ;
if (bits) break; // got a potential interrupt
if (*r) {
// nothing in this word which is pending+inservice
diff -r 142a3eec56bd -r 8a551ec13d93 xen/include/asm-ia64/linux/asm/hw_irq.h
--- a/xen/include/asm-ia64/linux/asm/hw_irq.h Fri Mar 10 17:00:31 2006
+++ b/xen/include/asm-ia64/linux/asm/hw_irq.h Tue Mar 14 19:27:57 2006
@@ -85,6 +85,7 @@
extern void free_irq_vector (int vector);
extern void ia64_send_ipi (int cpu, int vector, int delivery_mode, int
redirect);
extern void register_percpu_irq (ia64_vector vec, struct irqaction *action);
+extern int xen_do_IRQ(ia64_vector vector);
static inline void
hw_resend_irq (struct hw_interrupt_type *h, unsigned int vector)
diff -r 142a3eec56bd -r 8a551ec13d93 xen/include/asm-ia64/vmmu.h
--- a/xen/include/asm-ia64/vmmu.h Fri Mar 10 17:00:31 2006
+++ b/xen/include/asm-ia64/vmmu.h Tue Mar 14 19:27:57 2006
@@ -376,6 +376,9 @@
extern thash_data_t * vsa_thash(PTA vpta, u64 va, u64 vrr, u64 *tag);
extern thash_data_t * vhpt_lookup(u64 va);
extern void machine_tlb_purge(u64 va, u64 ps);
+extern int fetch_code(struct vcpu *vcpu, u64 gip, u64 *code1, u64 *code2);
+extern void emulate_io_inst(struct vcpu *vcpu, u64 padr, u64 ma);
+extern int vhpt_enabled(struct vcpu *vcpu, uint64_t vadr, vhpt_ref_t ref);
static inline void vmx_vcpu_set_tr (thash_data_t *trp, u64 pte, u64 itir, u64
va, u64 rid)
{
diff -r 142a3eec56bd -r 8a551ec13d93 xen/include/xen/irq.h
--- a/xen/include/xen/irq.h Fri Mar 10 17:00:31 2006
+++ b/xen/include/xen/irq.h Tue Mar 14 19:27:57 2006
@@ -71,5 +71,6 @@
extern int pirq_guest_unmask(struct domain *p);
extern int pirq_guest_bind(struct vcpu *p, int irq, int will_share);
extern int pirq_guest_unbind(struct domain *p, int irq);
+extern fastcall unsigned int __do_IRQ(unsigned int irq, struct pt_regs *regs);
#endif /* __XEN_IRQ_H__ */
diff -r 142a3eec56bd -r 8a551ec13d93 xen/include/asm-ia64/vlsapic.h
--- /dev/null Fri Mar 10 17:00:31 2006
+++ b/xen/include/asm-ia64/vlsapic.h Tue Mar 14 19:27:57 2006
@@ -0,0 +1,35 @@
+
+
+/* -*- Mode:C; c-basic-offset:4; tab-width:4; indent-tabs-mode:nil -*- */
+/*
+ * Copyright (c) 2004, Intel Corporation.
+ *
+ * This program is free software; you can redistribute it and/or modify it
+ * under the terms and conditions of the GNU General Public License,
+ * version 2, as published by the Free Software Foundation.
+ *
+ * This program is distributed in the hope it will be useful, but WITHOUT
+ * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
+ * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
+ * more details.
+ *
+ * You should have received a copy of the GNU General Public License along with
+ * this program; if not, write to the Free Software Foundation, Inc., 59 Temple
+ * Place - Suite 330, Boston, MA 02111-1307 USA.
+ *
+ *
+ */
+
+#ifndef _LSAPIC_H
+#define _LSAPIC_H
+#include <xen/sched.h>
+
+extern void vmx_virq_line_init(struct domain *d);
+extern void vtm_init(struct vcpu *vcpu);
+extern void vtm_set_itc(struct vcpu *vcpu, uint64_t new_itc);
+extern void vtm_set_itm(struct vcpu *vcpu, uint64_t val);
+extern void vtm_set_itv(struct vcpu *vcpu, uint64_t val);
+extern void vmx_vexirq(struct vcpu *vcpu);
+extern void vhpi_detection(struct vcpu *vcpu);
+
+#endif
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|