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

Commit 383378d1 authored by Linus Torvalds's avatar Linus Torvalds
Browse files

Merge tag 'for-linus-4.10-rc2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip

Pull xen fixes and cleanups from Juergen Gross:

 - small fixes for xenbus driver

 - one fix for xen dom0 boot on huge system

 - small cleanups

* tag 'for-linus-4.10-rc2-tag' of git://git.kernel.org/pub/scm/linux/kernel/git/xen/tip:
  Xen: ARM: Zero reserved fields of xatp before making hypervisor call
  xen: events: Replace BUG() with BUG_ON()
  xen: remove stale xs_input_avail() from header
  xen: return xenstore command failures via response instead of rc
  xen: xenbus driver must not accept invalid transaction ids
  xen/evtchn: use rb_entry()
  xen/setup: Don't relocate p2m over existing one
parents 9e3596b0 0b47a6bd
Loading
Loading
Loading
Loading
+3 −3
Original line number Diff line number Diff line
@@ -713,10 +713,9 @@ static void __init xen_reserve_xen_mfnlist(void)
		size = PFN_PHYS(xen_start_info->nr_p2m_frames);
	}

	if (!xen_is_e820_reserved(start, size)) {
	memblock_reserve(start, size);
	if (!xen_is_e820_reserved(start, size))
		return;
	}

#ifdef CONFIG_X86_32
	/*
@@ -727,6 +726,7 @@ static void __init xen_reserve_xen_mfnlist(void)
	BUG();
#else
	xen_relocate_p2m();
	memblock_free(start, size);
#endif
}

+5 −3
Original line number Diff line number Diff line
@@ -58,9 +58,13 @@ static int xen_map_device_mmio(const struct resource *resources,
	xen_pfn_t *gpfns;
	xen_ulong_t *idxs;
	int *errs;
	struct xen_add_to_physmap_range xatp;

	for (i = 0; i < count; i++) {
		struct xen_add_to_physmap_range xatp = {
			.domid = DOMID_SELF,
			.space = XENMAPSPACE_dev_mmio
		};

		r = &resources[i];
		nr = DIV_ROUND_UP(resource_size(r), XEN_PAGE_SIZE);
		if ((resource_type(r) != IORESOURCE_MEM) || (nr == 0))
@@ -87,9 +91,7 @@ static int xen_map_device_mmio(const struct resource *resources,
			idxs[j] = XEN_PFN_DOWN(r->start) + j;
		}

		xatp.domid = DOMID_SELF;
		xatp.size = nr;
		xatp.space = XENMAPSPACE_dev_mmio;

		set_xen_guest_handle(xatp.gpfns, gpfns);
		set_xen_guest_handle(xatp.idxs, idxs);
+1 −2
Original line number Diff line number Diff line
@@ -369,8 +369,7 @@ static void evtchn_fifo_resume(void)
		}

		ret = init_control_block(cpu, control_block);
		if (ret < 0)
			BUG();
		BUG_ON(ret < 0);
	}

	/*
+2 −2
Original line number Diff line number Diff line
@@ -125,7 +125,7 @@ static int add_evtchn(struct per_user_data *u, struct user_evtchn *evtchn)
	while (*new) {
		struct user_evtchn *this;

		this = container_of(*new, struct user_evtchn, node);
		this = rb_entry(*new, struct user_evtchn, node);

		parent = *new;
		if (this->port < evtchn->port)
@@ -157,7 +157,7 @@ static struct user_evtchn *find_evtchn(struct per_user_data *u, unsigned port)
	while (node) {
		struct user_evtchn *evtchn;

		evtchn = container_of(node, struct user_evtchn, node);
		evtchn = rb_entry(node, struct user_evtchn, node);

		if (evtchn->port < port)
			node = node->rb_left;
+0 −1
Original line number Diff line number Diff line
@@ -42,7 +42,6 @@ int xb_write(const void *data, unsigned len);
int xb_read(void *data, unsigned len);
int xb_data_to_read(void);
int xb_wait_for_data_to_read(void);
int xs_input_avail(void);
extern struct xenstore_domain_interface *xen_store_interface;
extern int xen_store_evtchn;
extern enum xenstore_init xen_store_domain_type;
Loading