فهرست منبع

Merge tag 'please-pull-ia64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux

Pull misc ia64 build fixes from Tony Luck.

* tag 'please-pull-ia64-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux:
  [IA64] Redefine ATOMIC_INIT and ATOMIC64_INIT to drop the casts
  [IA64] Rename platform_name to ia64_platform_name
  [IA64] Mark PARAVIRT and KVM as broken
Linus Torvalds 13 سال پیش
والد
کامیت
6d8a97af63

+ 1 - 2
arch/ia64/Kconfig

@@ -126,6 +126,7 @@ config AUDIT_ARCH
 
 
 menuconfig PARAVIRT_GUEST
 menuconfig PARAVIRT_GUEST
 	bool "Paravirtualized guest support"
 	bool "Paravirtualized guest support"
+	depends on BROKEN
 	help
 	help
 	  Say Y here to get to see options related to running Linux under
 	  Say Y here to get to see options related to running Linux under
 	  various hypervisors.  This option alone does not add any kernel code.
 	  various hypervisors.  This option alone does not add any kernel code.
@@ -138,8 +139,6 @@ config PARAVIRT
 	bool "Enable paravirtualization code"
 	bool "Enable paravirtualization code"
 	depends on PARAVIRT_GUEST
 	depends on PARAVIRT_GUEST
 	default y
 	default y
-	bool
-	default y
 	help
 	help
 	  This changes the kernel so it can modify itself when it is run
 	  This changes the kernel so it can modify itself when it is run
 	  under a hypervisor, potentially improving performance significantly
 	  under a hypervisor, potentially improving performance significantly

+ 2 - 2
arch/ia64/include/asm/atomic.h

@@ -17,8 +17,8 @@
 #include <asm/intrinsics.h>
 #include <asm/intrinsics.h>
 
 
 
 
-#define ATOMIC_INIT(i)		((atomic_t) { (i) })
-#define ATOMIC64_INIT(i)	((atomic64_t) { (i) })
+#define ATOMIC_INIT(i)		{ (i) }
+#define ATOMIC64_INIT(i)	{ (i) }
 
 
 #define atomic_read(v)		(*(volatile int *)&(v)->counter)
 #define atomic_read(v)		(*(volatile int *)&(v)->counter)
 #define atomic64_read(v)	(*(volatile long *)&(v)->counter)
 #define atomic64_read(v)	(*(volatile long *)&(v)->counter)

+ 1 - 1
arch/ia64/include/asm/machvec.h

@@ -120,7 +120,7 @@ extern void machvec_tlb_migrate_finish (struct mm_struct *);
 # ifdef MACHVEC_PLATFORM_HEADER
 # ifdef MACHVEC_PLATFORM_HEADER
 #  include MACHVEC_PLATFORM_HEADER
 #  include MACHVEC_PLATFORM_HEADER
 # else
 # else
-#  define platform_name		ia64_mv.name
+#  define ia64_platform_name	ia64_mv.name
 #  define platform_setup	ia64_mv.setup
 #  define platform_setup	ia64_mv.setup
 #  define platform_cpu_init	ia64_mv.cpu_init
 #  define platform_cpu_init	ia64_mv.cpu_init
 #  define platform_irq_init	ia64_mv.irq_init
 #  define platform_irq_init	ia64_mv.irq_init

+ 1 - 1
arch/ia64/include/asm/machvec_dig.h

@@ -10,7 +10,7 @@ extern ia64_mv_setup_t dig_setup;
  * platform's machvec structure.  When compiling a non-generic kernel,
  * platform's machvec structure.  When compiling a non-generic kernel,
  * the macros are used directly.
  * the macros are used directly.
  */
  */
-#define platform_name		"dig"
+#define ia64_platform_name	"dig"
 #define platform_setup		dig_setup
 #define platform_setup		dig_setup
 
 
 #endif /* _ASM_IA64_MACHVEC_DIG_h */
 #endif /* _ASM_IA64_MACHVEC_DIG_h */

+ 1 - 1
arch/ia64/include/asm/machvec_dig_vtd.h

@@ -11,7 +11,7 @@ extern ia64_mv_dma_init			pci_iommu_alloc;
  * platform's machvec structure.  When compiling a non-generic kernel,
  * platform's machvec structure.  When compiling a non-generic kernel,
  * the macros are used directly.
  * the macros are used directly.
  */
  */
-#define platform_name				"dig_vtd"
+#define ia64_platform_name			"dig_vtd"
 #define platform_setup				dig_setup
 #define platform_setup				dig_setup
 #define platform_dma_init			pci_iommu_alloc
 #define platform_dma_init			pci_iommu_alloc
 
 

+ 1 - 1
arch/ia64/include/asm/machvec_hpsim.h

@@ -11,7 +11,7 @@ extern ia64_mv_irq_init_t hpsim_irq_init;
  * platform's machvec structure.  When compiling a non-generic kernel,
  * platform's machvec structure.  When compiling a non-generic kernel,
  * the macros are used directly.
  * the macros are used directly.
  */
  */
-#define platform_name		"hpsim"
+#define ia64_platform_name	"hpsim"
 #define platform_setup		hpsim_setup
 #define platform_setup		hpsim_setup
 #define platform_irq_init	hpsim_irq_init
 #define platform_irq_init	hpsim_irq_init
 
 

+ 1 - 1
arch/ia64/include/asm/machvec_hpzx1.h

@@ -11,7 +11,7 @@ extern ia64_mv_dma_init			sba_dma_init;
  * platform's machvec structure.  When compiling a non-generic kernel,
  * platform's machvec structure.  When compiling a non-generic kernel,
  * the macros are used directly.
  * the macros are used directly.
  */
  */
-#define platform_name				"hpzx1"
+#define ia64_platform_name			"hpzx1"
 #define platform_setup				dig_setup
 #define platform_setup				dig_setup
 #define platform_dma_init			sba_dma_init
 #define platform_dma_init			sba_dma_init
 
 

+ 1 - 1
arch/ia64/include/asm/machvec_hpzx1_swiotlb.h

@@ -11,7 +11,7 @@ extern ia64_mv_dma_get_ops			hwsw_dma_get_ops;
  * platform's machvec structure.  When compiling a non-generic kernel,
  * platform's machvec structure.  When compiling a non-generic kernel,
  * the macros are used directly.
  * the macros are used directly.
  */
  */
-#define platform_name				"hpzx1_swiotlb"
+#define ia64_platform_name			"hpzx1_swiotlb"
 #define platform_setup				dig_setup
 #define platform_setup				dig_setup
 #define platform_dma_init			machvec_noop
 #define platform_dma_init			machvec_noop
 #define platform_dma_get_ops			hwsw_dma_get_ops
 #define platform_dma_get_ops			hwsw_dma_get_ops

+ 1 - 1
arch/ia64/include/asm/machvec_sn2.h

@@ -71,7 +71,7 @@ extern ia64_mv_pci_fixup_bus_t		sn_pci_fixup_bus;
  * platform's machvec structure.  When compiling a non-generic kernel,
  * platform's machvec structure.  When compiling a non-generic kernel,
  * the macros are used directly.
  * the macros are used directly.
  */
  */
-#define platform_name			"sn2"
+#define ia64_platform_name		"sn2"
 #define platform_setup			sn_setup
 #define platform_setup			sn_setup
 #define platform_cpu_init		sn_cpu_init
 #define platform_cpu_init		sn_cpu_init
 #define platform_irq_init		sn_irq_init
 #define platform_irq_init		sn_irq_init

+ 1 - 1
arch/ia64/include/asm/machvec_uv.h

@@ -20,7 +20,7 @@ extern ia64_mv_setup_t uv_setup;
  * platform's machvec structure.  When compiling a non-generic kernel,
  * platform's machvec structure.  When compiling a non-generic kernel,
  * the macros are used directly.
  * the macros are used directly.
  */
  */
-#define platform_name			"uv"
+#define ia64_platform_name		"uv"
 #define platform_setup			uv_setup
 #define platform_setup			uv_setup
 
 
 #endif /* _ASM_IA64_MACHVEC_UV_H */
 #endif /* _ASM_IA64_MACHVEC_UV_H */

+ 1 - 1
arch/ia64/include/asm/machvec_xen.h

@@ -13,7 +13,7 @@ extern ia64_mv_send_ipi_t		xen_platform_send_ipi;
  * platform's machvec structure.  When compiling a non-generic kernel,
  * platform's machvec structure.  When compiling a non-generic kernel,
  * the macros are used directly.
  * the macros are used directly.
  */
  */
-#define platform_name				"xen"
+#define ia64_platform_name			"xen"
 #define platform_setup				dig_setup
 #define platform_setup				dig_setup
 #define platform_cpu_init			xen_cpu_init
 #define platform_cpu_init			xen_cpu_init
 #define platform_irq_init			xen_irq_init
 #define platform_irq_init			xen_irq_init

+ 1 - 1
arch/ia64/include/asm/processor.h

@@ -719,7 +719,7 @@ enum idle_boot_override {IDLE_NO_OVERRIDE=0, IDLE_HALT, IDLE_FORCE_MWAIT,
 
 
 void default_idle(void);
 void default_idle(void);
 
 
-#define ia64_platform_is(x) (strcmp(x, platform_name) == 0)
+#define ia64_platform_is(x) (strcmp(x, ia64_platform_name) == 0)
 
 
 #endif /* !__ASSEMBLY__ */
 #endif /* !__ASSEMBLY__ */
 
 

+ 1 - 0
arch/ia64/kvm/Kconfig

@@ -23,6 +23,7 @@ config KVM
 	depends on HAVE_KVM && MODULES && EXPERIMENTAL
 	depends on HAVE_KVM && MODULES && EXPERIMENTAL
 	# for device assignment:
 	# for device assignment:
 	depends on PCI
 	depends on PCI
+	depends on BROKEN
 	select PREEMPT_NOTIFIERS
 	select PREEMPT_NOTIFIERS
 	select ANON_INODES
 	select ANON_INODES
 	select HAVE_KVM_IRQCHIP
 	select HAVE_KVM_IRQCHIP

+ 2 - 2
arch/ia64/pci/fixup.c

@@ -30,8 +30,8 @@ static void __devinit pci_fixup_video(struct pci_dev *pdev)
 	struct pci_bus *bus;
 	struct pci_bus *bus;
 	u16 config;
 	u16 config;
 
 
-	if ((strcmp(platform_name, "dig") != 0)
-	    && (strcmp(platform_name, "hpzx1")  != 0))
+	if ((strcmp(ia64_platform_name, "dig") != 0)
+	    && (strcmp(ia64_platform_name, "hpzx1")  != 0))
 		return;
 		return;
 	/* Maybe, this machine supports legacy memory map. */
 	/* Maybe, this machine supports legacy memory map. */
 
 

+ 1 - 1
drivers/char/mspec.c

@@ -283,7 +283,7 @@ mspec_mmap(struct file *file, struct vm_area_struct *vma,
 	vdata->flags = flags;
 	vdata->flags = flags;
 	vdata->type = type;
 	vdata->type = type;
 	spin_lock_init(&vdata->lock);
 	spin_lock_init(&vdata->lock);
-	vdata->refcnt = ATOMIC_INIT(1);
+	atomic_set(&vdata->refcnt, 1);
 	vma->vm_private_data = vdata;
 	vma->vm_private_data = vdata;
 
 
 	vma->vm_flags |= (VM_IO | VM_RESERVED | VM_PFNMAP | VM_DONTEXPAND);
 	vma->vm_flags |= (VM_IO | VM_RESERVED | VM_PFNMAP | VM_DONTEXPAND);