From mboxrd@z Thu Jan 1 00:00:00 1970 From: Mukesh Rathor Subject: increase evtchn limits Date: Thu, 20 May 2010 20:41:10 -0700 Message-ID: <20100520204110.2d421bfe@mantra.us.oracle.com> Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xensource.com Errors-To: xen-devel-bounces@lists.xensource.com To: "Xen-devel@lists.xensource.com" List-Id: xen-devel@lists.xenproject.org Hi, I'm trying to boot up with lot more than 32 vcpus on this very large box. I overcame vcpu_info[MAX_VIRT_CPUS] by doing vcpu placement hypercall in guest, but now running into evt channel limit (lots of devices): unsigned long evtchn_pending[sizeof(unsigned long) * 8]; which limits to 512 max for my 64bit dom0. The only recourse seems to create a new struct shared_info_v2{}, and re-arrange it a bit with lot more event channels. Since, start_info has magic with version info, I can just check that in guest and use new shared_info...(doing the design on the fly here). I can create a new vcpuop saying the guest is using newer version. Or forget new version of shared_info{}, I can just put evtchn stuff in my own mfn and tell hypervisor to relocate it, (just like vcpu_info does) via new VCPUOP_ call. Keir, what do you think? thanks, Mukesh