|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [Xen-devel] removal of ia64 port
>>> On 02.04.12 at 17:33, Keir Fraser <keir.xen@xxxxxxxxx> wrote:
> On 02/04/2012 16:16, "Jan Beulich" <JBeulich@xxxxxxxx> wrote:
>> now that we apparently having reached consensus here, are you
>> going to purge the ia64 bits from the tree, or do you want me to?
>
> Please go ahead.
This is the patch I'm intending to commit (omitting all the ia64 files
that are going to be removed).
It retains IA64-specific bits in code imported from elsewhere (e.g.
ACPI, EFI) as well as in the public headers.
It also doesn't touch the tools, mini-os, and unmodified_drivers
sub-trees.
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -138,14 +138,6 @@ M: Tim Deegan <tim@xxxxxxx>
S: Supported
F: tools/debugger/kdd/
-IA64 ARCHITECTURE
-M: KUWAMURA Shin'ya <kuwa@xxxxxxxxxxxxxx>
-S: Supported
-L: xen-ia64-devel@xxxxxxxxxxxxxxxxxxx
-F: xen/arch/ia64/*
-F: xen/include/asm-ia64/*
-F: tools/libxc/ia64/*
-
INTEL(R) TRUSTED EXECUTION TECHNOLOGY (TXT)
M: Joseph Cihula <joseph.cihula@xxxxxxxxx>
M: Gang Wei <gang.wei@xxxxxxxxx>
--- a/xen/common/Makefile
+++ b/xen/common/Makefile
@@ -58,7 +58,6 @@ subdir-$(CONFIG_COMPAT) += compat
subdir-$(x86_32) += hvm
subdir-$(x86_64) += hvm
-subdir-$(ia64) += hvm
subdir-y += libelf
subdir-$(HAS_DEVICE_TREE) += libfdt
--- a/xen/common/grant_table.c
+++ b/xen/common/grant_table.c
@@ -1514,9 +1514,7 @@ gnttab_transfer(
goto copyback;
}
-#ifndef __ia64__ /* IA64 implicitly replaces the old page in steal_page(). */
guest_physmap_remove_page(d, gop.mfn, mfn, 0);
-#endif
flush_tlb_mask(d->domain_dirty_cpumask);
/* Find the target domain. */
--- a/xen/common/kexec.c
+++ b/xen/common/kexec.c
@@ -721,11 +721,7 @@ static void crash_save_vmcoreinfo(void)
VMCOREINFO_STRUCT_SIZE(domain);
VMCOREINFO_OFFSET(page_info, count_info);
-#ifdef __ia64__
- VMCOREINFO_OFFSET_SUB(page_info, u.inuse, _domain);
-#else
VMCOREINFO_OFFSET_SUB(page_info, v.inuse, _domain);
-#endif
VMCOREINFO_OFFSET(domain, domain_id);
VMCOREINFO_OFFSET(domain, next_in_list);
--- a/xen/common/memory.c
+++ b/xen/common/memory.c
@@ -23,9 +23,7 @@
#include <xen/tmem_xen.h>
#include <asm/current.h>
#include <asm/hardirq.h>
-#ifndef __ia64__
#include <asm/p2m.h>
-#endif
#include <xen/numa.h>
#include <public/memory.h>
#include <xsm/xsm.h>
--- a/xen/common/page_alloc.c
+++ b/xen/common/page_alloc.c
@@ -1141,7 +1141,7 @@ void __init scrub_heap_pages(void)
* XEN-HEAP SUB-ALLOCATOR
*/
-#if !defined(__x86_64__) && !defined(__ia64__)
+#if !defined(__x86_64__)
void init_xenheap_pages(paddr_t ps, paddr_t pe)
{
--- a/xen/common/tmem_xen.c
+++ b/xen/common/tmem_xen.c
@@ -88,7 +88,7 @@ void tmh_copy_page(char *to, char*from)
#endif
}
-#if defined(__ia64__) || defined (CONFIG_ARM)
+#if defined(CONFIG_ARM)
static inline void *cli_get_page(tmem_cli_mfn_t cmfn, unsigned long *pcli_mfn,
pfp_t **pcli_pfp, bool_t cli_write)
{
--- a/xen/drivers/cpufreq/cpufreq.c
+++ b/xen/drivers/cpufreq/cpufreq.c
@@ -442,16 +442,6 @@ int set_px_pminfo(uint32_t acpi_id, stru
goto out;
}
-#ifdef CONFIG_IA64
- /* for IA64, currently it only supports FFH */
- if (dom0_px_info->control_register.space_id !=
- ACPI_ADR_SPACE_FIXED_HARDWARE)
- {
- ret = -EINVAL;
- goto out;
- }
-#endif
-
memcpy ((void *)&pxpt->control_register,
(void *)&dom0_px_info->control_register,
sizeof(struct xen_pct_register));
@@ -493,7 +483,6 @@ int set_px_pminfo(uint32_t acpi_id, stru
{
#ifdef CONFIG_X86
/* for X86, check domain coordination */
- /* for IA64, _PSD is optional for current IA64 cpufreq algorithm */
if (dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_ALL &&
dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_ANY &&
dom0_px_info->shared_type != CPUFREQ_SHARED_TYPE_HW)
--- a/xen/drivers/passthrough/Makefile
+++ b/xen/drivers/passthrough/Makefile
@@ -1,5 +1,4 @@
subdir-$(x86) += vtd
-subdir-$(ia64) += vtd
subdir-$(x86) += amd
subdir-$(x86_64) += x86
--- a/xen/drivers/passthrough/io.c
+++ b/xen/drivers/passthrough/io.c
@@ -419,7 +419,6 @@ int hvm_do_IRQ_dpci(struct domain *d, st
return 1;
}
-#ifdef SUPPORT_MSI_REMAPPING
/* called with d->event_lock held */
static void __msi_pirq_eoi(struct hvm_pirq_dpci *pirq_dpci)
{
@@ -479,7 +478,6 @@ static int hvm_pci_msi_assert(struct dom
? send_guest_pirq(d, pirq)
: vmsi_deliver_pirq(d, pirq_dpci));
}
-#endif
static int _hvm_dirq_assist(struct domain *d, struct hvm_pirq_dpci *pirq_dpci,
void *arg)
@@ -489,13 +487,12 @@ static int _hvm_dirq_assist(struct domai
if ( test_and_clear_bool(pirq_dpci->masked) )
{
-#ifdef SUPPORT_MSI_REMAPPING
if ( pirq_dpci->flags & HVM_IRQ_DPCI_GUEST_MSI )
{
hvm_pci_msi_assert(d, pirq_dpci);
return 0;
}
-#endif
+
list_for_each_entry ( digl, &pirq_dpci->digl_list, list )
{
struct pirq *info = dpci_pirq(pirq_dpci);
@@ -508,13 +505,11 @@ static int _hvm_dirq_assist(struct domai
hvm_pci_intx_assert(d, device, intx);
pirq_dpci->pending++;
-#ifdef SUPPORT_MSI_REMAPPING
if ( pirq_dpci->flags & HVM_IRQ_DPCI_TRANSLATE )
{
/* for translated MSI to INTx interrupt, eoi as early as
possible */
__msi_pirq_eoi(pirq_dpci);
}
-#endif
}
/*
--- a/xen/drivers/passthrough/iommu.c
+++ b/xen/drivers/passthrough/iommu.c
@@ -593,17 +593,6 @@ int iommu_do_domctl(
bus = (domctl->u.assign_device.machine_sbdf >> 8) & 0xff;
devfn = domctl->u.assign_device.machine_sbdf & 0xff;
-#ifdef __ia64__ /* XXX Is this really needed? */
- if ( device_assigned(seg, bus, devfn) )
- {
- printk(XENLOG_G_ERR "XEN_DOMCTL_assign_device: "
- "%04x:%02x:%02x.%u already assigned, or non-existent\n",
- seg, bus, PCI_SLOT(devfn), PCI_FUNC(devfn));
- ret = -EINVAL;
- goto assign_device_out;
- }
-#endif
-
ret = assign_device(d, seg, bus, devfn);
if ( ret )
printk(XENLOG_G_ERR "XEN_DOMCTL_assign_device: "
@@ -632,14 +621,6 @@ int iommu_do_domctl(
bus = (domctl->u.assign_device.machine_sbdf >> 8) & 0xff;
devfn = domctl->u.assign_device.machine_sbdf & 0xff;
-#ifdef __ia64__ /* XXX Is this really needed? */
- if ( !device_assigned(seg, bus, devfn) )
- {
- ret = -EINVAL;
- goto deassign_device_out;
- }
-#endif
-
spin_lock(&pcidevs_lock);
ret = deassign_device(d, seg, bus, devfn);
spin_unlock(&pcidevs_lock);
--- a/xen/drivers/passthrough/pci.c
+++ b/xen/drivers/passthrough/pci.c
@@ -696,7 +696,6 @@ void __init setup_dom0_pci_devices(
spin_unlock(&pcidevs_lock);
}
-#ifdef SUPPORT_MSI_REMAPPING
static int _dump_pci_devices(struct pci_seg *pseg, void *arg)
{
struct pci_dev *pdev;
@@ -738,8 +737,6 @@ static int __init setup_dump_pcidevs(voi
return 0;
}
__initcall(setup_dump_pcidevs);
-#endif
-
/*
* Local variables:
--- a/xen/drivers/passthrough/vtd/Makefile
+++ b/xen/drivers/passthrough/vtd/Makefile
@@ -1,5 +1,4 @@
subdir-$(x86) += x86
-subdir-$(ia64) += ia64
obj-y += iommu.o
obj-y += dmar.o
--- a/xen/drivers/passthrough/vtd/intremap.c
+++ b/xen/drivers/passthrough/vtd/intremap.c
@@ -31,26 +31,7 @@
#include "vtd.h"
#include "extern.h"
-#ifdef __ia64__
-#define nr_ioapics iosapic_get_nr_iosapics()
-#define nr_ioapic_entries(i) iosapic_get_nr_pins(i)
-#define __io_apic_read(apic, reg) \
- (*IO_APIC_BASE(apic) = reg, *(IO_APIC_BASE(apic)+4))
-#define __io_apic_write(apic, reg, val) \
- (*IO_APIC_BASE(apic) = reg, *(IO_APIC_BASE(apic)+4) = (val))
-#define __ioapic_read_entry(apic, pin, raw) ({ \
- struct IO_xAPIC_route_entry _e_; \
- ASSERT(raw); \
- ((u32 *)&_e_)[0] = __io_apic_read(apic, 0x10 + 2 * (pin)); \
- ((u32 *)&_e_)[1] = __io_apic_read(apic, 0x11 + 2 * (pin)); \
- _e_; \
-})
-#define __ioapic_write_entry(apic, pin, raw, ent) ({ \
- ASSERT(raw); \
- __io_apic_write(apic, 0x10 + 2 * (pin), ((u32 *)&(ent))[0]); \
- __io_apic_write(apic, 0x11 + 2 * (pin), ((u32 *)&(ent))[1]); \
-})
-#else
+#if defined(__i386__) || defined(__x86_64__)
#include <asm/apic.h>
#include <asm/io_apic.h>
#define nr_ioapic_entries(i) nr_ioapic_entries[i]
@@ -326,8 +307,6 @@ static int ioapic_rte_to_remap_entry(str
new_ire.lo.dst = value;
else
new_ire.lo.dst = (value >> 24) << 8;
-#else /* __ia64__ */
- new_ire.lo.dst = value >> 16;
#endif
}
else
@@ -625,12 +604,8 @@ static int msi_msg_to_remap_entry(
new_ire.lo.dm = (msg->address_lo >> MSI_ADDR_DESTMODE_SHIFT) & 0x1;
new_ire.lo.tm = (msg->data >> MSI_DATA_TRIGGER_SHIFT) & 0x1;
new_ire.lo.dlm = (msg->data >> MSI_DATA_DELIVERY_MODE_SHIFT) & 0x1;
-#ifdef CONFIG_X86
/* Hardware require RH = 1 for LPR delivery mode */
new_ire.lo.rh = (new_ire.lo.dlm == dest_LowestPrio);
-#else
- new_ire.lo.rh = 0;
-#endif
new_ire.lo.avail = 0;
new_ire.lo.res_1 = 0;
new_ire.lo.vector = (msg->data >> MSI_DATA_VECTOR_SHIFT) &
@@ -703,18 +678,6 @@ void msi_msg_write_remap_rte(
msi_msg_to_remap_entry(iommu, pdev, msi_desc, msg);
}
-#elif defined(__ia64__)
-void msi_msg_read_remap_rte(
- struct msi_desc *msi_desc, struct msi_msg *msg)
-{
- /* TODO. */
-}
-
-void msi_msg_write_remap_rte(
- struct msi_desc *msi_desc, struct msi_msg *msg)
-{
- /* TODO. */
-}
#endif
int enable_intremap(struct iommu *iommu, int eim)
@@ -838,8 +801,6 @@ out:
spin_unlock_irqrestore(&iommu->register_lock, flags);
}
-#ifndef __ia64__
-
/*
* This function is used to enable Interrupt remapping when
* enable x2apic
@@ -914,5 +875,3 @@ void iommu_disable_x2apic_IR(void)
for_each_drhd_unit ( drhd )
disable_qinval(drhd->iommu);
}
-
-#endif /* !__ia64__ */
--- a/xen/drivers/passthrough/vtd/iommu.c
+++ b/xen/drivers/passthrough/vtd/iommu.c
@@ -33,7 +33,7 @@
#include <xen/keyhandler.h>
#include <asm/msi.h>
#include <asm/irq.h>
-#ifndef __ia64__
+#if defined(__i386__) || defined(__x86_64__)
#include <asm/hvm/vmx/vmx.h>
#include <asm/p2m.h>
#include <mach_apic.h>
@@ -44,10 +44,6 @@
#include "vtd.h"
#include "../ats.h"
-#ifdef __ia64__
-#define nr_ioapics iosapic_get_nr_iosapics()
-#endif
-
/* Possible unfiltered LAPIC/MSI messages from untrusted sources? */
bool_t __read_mostly untrusted_msi;
@@ -1057,11 +1053,7 @@ static unsigned int dma_msi_startup(stru
return 0;
}
-#ifndef __ia64__
static void dma_msi_end(struct irq_desc *desc, u8 vector)
-#else
-static void dma_msi_end(struct irq_desc *desc)
-#endif
{
dma_msi_unmask(desc);
ack_APIC_irq();
@@ -1841,7 +1833,6 @@ void iommu_pte_flush(struct domain *d, u
static int vtd_ept_page_compatible(struct iommu *iommu)
{
-#ifndef __ia64__
u64 ept_cap, vtd_cap = iommu->cap;
/* EPT is not initialised yet, so we must check the capability in
@@ -1851,9 +1842,6 @@ static int vtd_ept_page_compatible(struc
return ( ept_has_2mb(ept_cap) == cap_sps_2mb(vtd_cap)
&& ept_has_1gb(ept_cap) == cap_sps_1gb(vtd_cap) );
-#else
- return 0;
-#endif
}
/*
@@ -1861,7 +1849,6 @@ static int vtd_ept_page_compatible(struc
*/
void iommu_set_pgd(struct domain *d)
{
-#ifndef __ia64__
struct hvm_iommu *hd = domain_hvm_iommu(d);
mfn_t pgd_mfn;
@@ -1872,7 +1859,6 @@ void iommu_set_pgd(struct domain *d)
pgd_mfn = pagetable_get_mfn(p2m_get_pagetable(p2m_get_hostp2m(d)));
hd->pgd_maddr = pagetable_get_paddr(pagetable_from_mfn(pgd_mfn));
-#endif
}
static int rmrr_identity_mapping(struct domain *d,
--- a/xen/drivers/passthrough/vtd/utils.c
+++ b/xen/drivers/passthrough/vtd/utils.c
@@ -301,8 +301,7 @@ static void dump_iommu_info(unsigned cha
}
}
#else
- printk("%s: not implemnted on IA64 for now.\n", __func__);
- /* ia64: TODO */
+ printk("%s: not implemented for now\n", __func__);
#endif
}
--- a/xen/drivers/passthrough/vtd/vtd.h
+++ b/xen/drivers/passthrough/vtd/vtd.h
@@ -26,44 +26,8 @@
#define MAP_ME_PHANTOM_FUNC 1
#define UNMAP_ME_PHANTOM_FUNC 0
-/* Accomodate both IOAPIC and IOSAPIC. */
-#ifndef __ia64__
+/* Allow for both IOAPIC and IOSAPIC. */
#define IO_xAPIC_route_entry IO_APIC_route_entry
-#else
-struct IO_xAPIC_route_entry {
- __u32 vector : 8,
- delivery_mode : 3, /* 000: FIXED
- * 001: lowest prio
- * 111: ExtINT
- */
- dest_mode : 1, /* 0: physical, 1: logical */
- delivery_status : 1,
- polarity : 1,
- irr : 1,
- trigger : 1, /* 0: edge, 1: level */
- mask : 1, /* 0: enabled, 1: disabled */
- __reserved_2 : 15;
-
- union {
- struct { __u32
- __reserved_1 : 24,
- physical_dest : 4,
- __reserved_2 : 4;
- } physical;
-
- struct { __u32
- __reserved_1 : 24,
- logical_dest : 8;
- } logical;
-
- struct { __u32
- __reserved_1 : 16,
- dest_id : 16;
- };
- } dest;
-
-} __attribute__ ((packed));
-#endif
struct IO_APIC_route_remap_entry {
union {
--- a/xen/include/Makefile
+++ b/xen/include/Makefile
@@ -38,7 +38,7 @@ suffix-$(CONFIG_X86) := \#pragma pa
endif
public-$(CONFIG_X86) := $(wildcard public/arch-x86/*.h public/arch-x86/*/*.h)
-public-$(CONFIG_IA64) := $(wildcard public/arch-ia64/*.h
public/arch-ia64/*/*.h)
+public-$(CONFIG_ARM) := $(wildcard public/arch-arm/*.h public/arch-arm/*/*.h)
.PHONY: all
all: $(headers-y)
@@ -74,8 +74,6 @@ compat/xlat.h: xlat.lst $(filter-out com
mv -f $@.new $@
ifeq ($(XEN_TARGET_ARCH),$(XEN_COMPILE_ARCH))
-# public/arch-ia64.h explicitly bails on __STRICT_ANSI__
-ifeq ($(CONFIG_IA64),)
all: headers.chk
@@ -84,7 +82,6 @@ headers.chk: $(filter-out public/arch-%
mv $@.new $@
endif
-endif
clean::
rm -rf compat headers.chk
--- a/xen/include/asm-x86/hvm/irq.h
+++ b/xen/include/asm-x86/hvm/irq.h
@@ -104,11 +104,4 @@ struct hvm_intack hvm_vcpu_has_pending_i
struct hvm_intack hvm_vcpu_ack_pending_irq(struct vcpu *v,
struct hvm_intack intack);
-/*
- * Currently IA64 Xen doesn't support MSI. So for x86, we define this macro
- * to control the conditional compilation of some MSI-related functions.
- * This macro will be removed once IA64 has MSI support.
- */
-#define SUPPORT_MSI_REMAPPING 1
-
#endif /* __ASM_X86_HVM_IRQ_H__ */
--- a/xen/include/asm-x86/hvm/vioapic.h
+++ b/xen/include/asm-x86/hvm/vioapic.h
@@ -41,7 +41,7 @@
/* Direct registers. */
#define VIOAPIC_REG_SELECT 0x00
#define VIOAPIC_REG_WINDOW 0x10
-#define VIOAPIC_REG_EOI 0x40 /* IA64 IOSAPIC only */
+#define VIOAPIC_REG_EOI 0x40
/* Indirect registers. */
#define VIOAPIC_REG_APIC_ID 0x00 /* x86 IOAPIC only */
--- a/xen/include/xen/cpumask.h
+++ b/xen/include/xen/cpumask.h
@@ -82,7 +82,7 @@ typedef struct cpumask{ DECLARE_BITMAP(b
extern unsigned int nr_cpu_ids;
-#if NR_CPUS > 4 * BITS_PER_LONG && !defined(__ia64__)
+#if NR_CPUS > 4 * BITS_PER_LONG
/* Assuming NR_CPUS is huge, a runtime limit is more efficient. Also,
* not all bits may be allocated. */
extern unsigned int nr_cpumask_bits;
@@ -263,37 +263,6 @@ static inline const cpumask_t *cpumask_o
return (const cpumask_t *)(p - cpu / BITS_PER_LONG);
}
-#if defined(__ia64__) /* XXX needs cleanup */
-#define CPU_MASK_LAST_WORD BITMAP_LAST_WORD_MASK(NR_CPUS)
-
-#if NR_CPUS <= BITS_PER_LONG
-
-#define CPU_MASK_ALL \
-/*(cpumask_t)*/ { { \
- [BITS_TO_LONGS(NR_CPUS)-1] = CPU_MASK_LAST_WORD \
-} }
-
-#else
-
-#define CPU_MASK_ALL \
-/*(cpumask_t)*/ { { \
- [0 ... BITS_TO_LONGS(NR_CPUS)-2] = ~0UL, \
- [BITS_TO_LONGS(NR_CPUS)-1] = CPU_MASK_LAST_WORD \
-} }
-
-#endif
-
-#define CPU_MASK_NONE \
-/*(cpumask_t)*/ { { \
- 0UL \
-} }
-
-#define CPU_MASK_CPU0 \
-/*(cpumask_t)*/ { { \
- [0] = 1UL \
-} }
-#endif /* __ia64__ */
-
#define cpumask_bits(maskp) ((maskp)->bits)
static inline int cpumask_scnprintf(char *buf, int len,
--- a/xen/include/xen/efi.h
+++ b/xen/include/xen/efi.h
@@ -5,15 +5,11 @@
#include <xen/types.h>
#endif
-#if defined(__ia64__)
-# include_next <linux/efi.h>
+#if defined(__i386__)
+# define efi_enabled 0
#else
-
-# if defined(__i386__)
-# define efi_enabled 0
-# else
extern const bool_t efi_enabled;
-# endif
+#endif
#define EFI_INVALID_TABLE_ADDR (~0UL)
@@ -27,8 +23,6 @@ struct efi {
extern struct efi efi;
-#endif
-
#ifndef __ASSEMBLY__
union xenpf_efi_info;
--- a/xen/include/xen/elfcore.h
+++ b/xen/include/xen/elfcore.h
@@ -69,9 +69,6 @@ typedef struct {
unsigned long xen_phys_start;
unsigned long dom0_pfn_to_mfn_frame_list_list;
#endif
-#if defined(__ia64__)
- unsigned long dom0_mm_pgd_mfn;
-#endif
} crash_xen_info_t;
#endif /* __ELFCOREC_H__ */
--- a/xen/include/xen/hvm/irq.h
+++ b/xen/include/xen/hvm/irq.h
@@ -78,8 +78,6 @@ struct hvm_girq_dpci_mapping {
#define NR_LINK 4
#if defined(__i386__) || defined(__x86_64__)
# define NR_HVM_IRQS VIOAPIC_NUM_PINS
-#elif defined(__ia64__)
-# define NR_HVM_IRQS VIOSAPIC_NUM_PINS
#endif
/* Protected by domain's event_lock */
--- a/xen/include/xen/iommu.h
+++ b/xen/include/xen/iommu.h
@@ -35,11 +35,7 @@ extern bool_t iommu_debug;
extern bool_t amd_iommu_perdev_intremap;
/* Does this domain have a P2M table we can use as its IOMMU pagetable? */
-#ifndef __ia64__
#define iommu_use_hap_pt(d) (hap_enabled(d) && iommu_hap_pt_share)
-#else
-#define iommu_use_hap_pt(d) 0
-#endif
extern struct rangeset *mmio_ro_ranges;
--- a/xen/include/xen/irq.h
+++ b/xen/include/xen/irq.h
@@ -95,37 +95,19 @@ int arch_init_one_irq_desc(struct irq_de
#define irq_desc_initialized(desc) ((desc)->handler != NULL)
-#if defined(__ia64__)
-extern irq_desc_t irq_desc[NR_VECTORS];
-
-#define setup_irq(irq, action) \
- setup_irq_vector(irq_to_vector(irq), action)
-
-#define release_irq(irq) \
- release_irq_vector(irq_to_vector(irq))
-
-#define request_irq(irq, handler, irqflags, devname, devid) \
- request_irq_vector(irq_to_vector(irq), handler, irqflags, devname, devid)
-
-#elif defined(__arm__)
+#if defined(__arm__)
#define NR_IRQS 1024
#define nr_irqs NR_IRQS
extern irq_desc_t irq_desc[NR_IRQS];
-extern int setup_irq(unsigned int irq, struct irqaction *);
-extern void release_irq(unsigned int irq);
-extern int request_irq(unsigned int irq,
- void (*handler)(int, void *, struct cpu_user_regs *),
- unsigned long irqflags, const char * devname, void *dev_id);
+#endif
-#else
extern int setup_irq(unsigned int irq, struct irqaction *);
extern void release_irq(unsigned int irq);
extern int request_irq(unsigned int irq,
void (*handler)(int, void *, struct cpu_user_regs *),
unsigned long irqflags, const char * devname, void *dev_id);
-#endif
extern hw_irq_controller no_irq_type;
extern void no_action(int cpl, void *dev_id, struct cpu_user_regs *regs);
--- a/xen/include/xen/libelf.h
+++ b/xen/include/xen/libelf.h
@@ -23,7 +23,7 @@
#ifndef __XEN_LIBELF_H__
#define __XEN_LIBELF_H__
-#if defined(__i386__) || defined(__x86_64__) || defined(__ia64__) ||
defined(__arm__)
+#if defined(__i386__) || defined(__x86_64__) || defined(__arm__)
#define XEN_ELF_LITTLE_ENDIAN
#else
#error define architectural endianness
--- a/xen/include/xen/symbols.h
+++ b/xen/include/xen/symbols.h
@@ -21,13 +21,9 @@ static void __check_printsym_format(cons
{
}
-/* ia64 and ppc64 use function descriptors, which contain the real address */
-#if defined(CONFIG_IA64) || defined(CONFIG_PPC64)
-#define print_fn_descriptor_symbol(fmt, addr) \
-do { \
- unsigned long *__faddr = (unsigned long*) addr; \
- print_symbol(fmt, __faddr[0]); \
-} while (0)
+#if 0
+#define print_fn_descriptor_symbol(fmt, addr) \
+ print_symbol(fmt, *(unsigned long *)addr)
#else
#define print_fn_descriptor_symbol(fmt, addr) print_symbol(fmt, addr)
#endif
Attachment:
ia64-purge.patch _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |