From mboxrd@z Thu Jan 1 00:00:00 1970 From: Don Slutz Subject: Re: [BUGFIX] [PATCH] kexec/x86: Do map crash kernel area Date: Mon, 06 Jan 2014 19:23:28 -0500 Message-ID: <52CB4900.8010404@terremark.com> References: <1388595096-15787-1-git-send-email-dslutz@verizon.com> <52C54388.105@citrix.com> <52C543E9.1050701@citrix.com> <52C5525B.4040704@citrix.com> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii"; Format="flowed" Content-Transfer-Encoding: 7bit Return-path: In-Reply-To: <52C5525B.4040704@citrix.com> List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: David Vrabel Cc: Keir Fraser , Ian Campbell , George Dunlap , Andrew Cooper , Daniel Kiper , Don Slutz , xen-devel@lists.xen.org, Jan Beulich List-Id: xen-devel@lists.xenproject.org On 01/02/14 06:49, David Vrabel wrote: > On 02/01/14 10:48, Andrew Cooper wrote: >> On 02/01/14 10:46, David Vrabel wrote: >>> On 01/01/14 16:51, Don Slutz wrote: >>>> Revert of commit 7113a45451a9f656deeff070e47672043ed83664 >>> Since this commit introduced a regression, a revert is the best thing to >>> do here. >>> >>> Acked-by: David Vrabel >>> >>>> Using kexec commit 027413d822fd57dd39d2d2afab1484bc6b6b84f9 >>>> >>>> With "crashkernel=256M@256M" ((XEN) Kdump: 256MB (262144kB) at 0x10000000) >>> I guess Daniel tested a debug build without this crashkernel option. >>> This would place the crash region above the direct mapping region and >>> map_domain_page() would do the right thing. >>> >>> >>>> + map_pages_to_xen((unsigned long)__va(kexec_crash_area.start), >>>> + kexec_crash_area.start >> PAGE_SHIFT, >>>> + PFN_UP(kexec_crash_area.size), PAGE_HYPERVISOR); >>>> + >>> This should be made conditional on the location of the crash region -- >>> it is wrong to do this for portions of the crash region that are outside >>> the crash region. >> Presume you mean "outside the direct-map region"? > Yes. > > David I have no idea on how to even check for "outside the direct-map region" and how to test any additional changes. Testing with "crashkernel=256M" ((XEN) Kdump: 256MB (262144kB) at 0x82a1be000) does not work before or after this patch. In both cases, I get an error out of kexec: ~/kexec/build/sbin/kexec -p '--command-line=placeholder root=/dev/mapper/vg_f17--xen-lv_root ro rd.md=0 rd.dm=0 rd.lvm.lv=vg_f17-xen/lv_swap KEYTABLE=us SYSFONT=True rd.luks=0 console=ttyS0,9600n8 rd.lvm.lv=vg_f17-xen/lv_root LANG=en_US.UTF-8 earlyprintk=ttyS0 rd_NO_PLYMOUTH irqpoll nr_cpus=1 reset_devices cgroup_disable=memory mce=off' --initrd=/boot/initramfs-3.8.11-100.fc17.x86_64kdump.img /boot/vmlinuz-3.8.11-100.fc17.x86_64 Could not find a free area of memory of 0xa000 bytes... locate_hole failed I am currently busy with other tasks and so do not expect to get to learning about xen's direct-map region and/or finding out why kexec does not work in this case before xen 4.4.0 release date. -Don Slutz