From: Boris Ostrovsky Date: Mon, 9 Sep 2013 10:44:26 +0000 (+0000) Subject: xen/p2m: Don't call get_balloon_scratch_page() twice, keep interrupts disabled for... X-Git-Tag: v3.12-rc1~60^2~9 X-Git-Url: http://git.openpandora.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=d7f8f48d1eb3186b1b80b2ed9a7adab191f753e9;p=pandora-kernel.git xen/p2m: Don't call get_balloon_scratch_page() twice, keep interrupts disabled for multicalls m2p_remove_override() calls get_balloon_scratch_page() in MULTI_update_va_mapping() even though it already has pointer to this page from the earlier call (in scratch_page). This second call doesn't have a matching put_balloon_scratch_page() thus not restoring preempt count back. (Also, there is no put_balloon_scratch_page() in the error path.) In addition, the second multicall uses __xen_mc_entry() which does not disable interrupts. Rearrange xen_mc_* calls to keep interrupts off while performing multicalls. This commit fixes a regression introduced by: commit ee0726407feaf504dff304fb603652fb2d778b42 Author: Stefano Stabellini Date: Tue Jul 23 17:23:54 2013 +0000 xen/m2p: use GNTTABOP_unmap_and_replace to reinstate the original mapping Signed-off-by: Boris Ostrovsky Reviewed-by: Stefano Stabellini --- Reading git-diff-tree failed