Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit ca50a5f3 authored by Jeremy Fitzhardinge's avatar Jeremy Fitzhardinge
Browse files

Merge branch 'upstream/pvhvm' into upstream/xen

* upstream/pvhvm:
  Introduce CONFIG_XEN_PVHVM compile option
  blkfront: do not create a PV cdrom device if xen_hvm_guest
  support multiple .discard.* sections to avoid section type conflicts
  xen/pvhvm: fix build problem when !CONFIG_XEN
  xenfs: enable for HVM domains too
  x86: Call HVMOP_pagetable_dying on exit_mmap.
  x86: Unplug emulated disks and nics.
  x86: Use xen_vcpuop_clockevent, xen_clocksource and xen wallclock.
  xen: Fix find_unbound_irq in presence of ioapic irqs.
  xen: Add suspend/resume support for PV on HVM guests.
  xen: Xen PCI platform device driver.
  x86/xen: event channels delivery on HVM.
  x86: early PV on HVM features initialization.
  xen: Add support for HVM hypercalls.

Conflicts:
	arch/x86/xen/enlighten.c
	arch/x86/xen/time.c
parents a70ce4b6 ca65f9fc
Loading
Loading
Loading
Loading
+11 −0
Original line number Diff line number Diff line
@@ -115,6 +115,7 @@ parameter is applicable:
			More X86-64 boot options can be found in
			Documentation/x86/x86_64/boot-options.txt .
	X86	Either 32bit or 64bit x86 (same as X86-32+X86-64)
	XEN	Xen support is enabled

In addition, the following text indicates that the option:

@@ -2879,6 +2880,16 @@ and is between 256 and 4096 characters. It is defined in the file
	xd=		[HW,XT] Original XT pre-IDE (RLL encoded) disks.
	xd_geo=		See header of drivers/block/xd.c.

	xen_emul_unplug=		[HW,X86,XEN]
			Unplug Xen emulated devices
			Format: [unplug0,][unplug1]
			ide-disks -- unplug primary master IDE devices
			aux-ide-disks -- unplug non-primary-master IDE devices
			nics -- unplug network devices
			all -- unplug all emulated devices (NICs and IDE disks)
			ignore -- continue loading the Xen platform PCI driver even
				if the version check failed

	xirc2ps_cs=	[NET,PCMCIA]
			Format:
			<irq>,<irq_mask>,<io>,<full_duplex>,<do_sound>,<lockup_hack>[,<irq2>[,<irq3>[,<irq4>]]]
+1 −0
Original line number Diff line number Diff line
@@ -45,5 +45,6 @@ extern const struct hypervisor_x86 *x86_hyper;
/* Recognized hypervisors */
extern const struct hypervisor_x86 x86_hyper_vmware;
extern const struct hypervisor_x86 x86_hyper_ms_hyperv;
extern const struct hypervisor_x86 x86_hyper_xen_hvm;

#endif
+3 −0
Original line number Diff line number Diff line
@@ -125,6 +125,9 @@
 */
#define MCE_SELF_VECTOR			0xeb

/* Xen vector callback to receive events in a HVM domain */
#define XEN_HVM_EVTCHN_CALLBACK		0xe9

#define NR_VECTORS			 256

#define FPU_IRQ				  13
+1 −1
Original line number Diff line number Diff line
@@ -82,7 +82,7 @@ void *extend_brk(size_t size, size_t align);
 * executable.)
 */
#define RESERVE_BRK(name,sz)						\
	static void __section(.discard) __used				\
	static void __section(.discard.text) __used			\
	__brk_reservation_fn_##name##__(void) {				\
		asm volatile (						\
			".pushsection .brk_reservation,\"aw\",@nobits;" \
+6 −0
Original line number Diff line number Diff line
@@ -417,6 +417,12 @@ HYPERVISOR_nmi_op(unsigned long op, unsigned long arg)
	return _hypercall2(int, nmi_op, op, arg);
}

static inline unsigned long __must_check
HYPERVISOR_hvm_op(int op, void *arg)
{
       return _hypercall2(unsigned long, hvm_op, op, arg);
}

static inline void
MULTI_fpu_taskswitch(struct multicall_entry *mcl, int set)
{
Loading