From: Dave Young <dyoung@redhat.com>
To: Pingfan Liu <kernelfans@gmail.com>
Cc: Borislav Petkov <bp@alien8.de>,
kexec@lists.infradead.org, Baoquan He <bhe@redhat.com>,
Andrew Morton <akpm@linux-foundation.org>,
Mike Rapoport <rppt@linux.vnet.ibm.com>,
Yinghai Lu <yinghai@kernel.org>,
vgoyal@redhat.com, Randy Dunlap <rdunlap@infradead.org>,
x86@kernel.org, LKML <linux-kernel@vger.kernel.org>
Subject: Re: [PATCHv7] x86/kdump: bugfix, make the behavior of crashkernel=X consistent with kaslr
Date: Thu, 31 Jan 2019 15:42:21 +0800 [thread overview]
Message-ID: <20190131074221.GA19091@dhcp-128-65.nay.redhat.com> (raw)
In-Reply-To: <CAFgQCTsuuOSSLKXOaF7jchDRevegZkzZVNiTgB6D+S4=dpc5Xg@mail.gmail.com>
On 01/29/19 at 01:25pm, Pingfan Liu wrote:
> On Fri, Jan 25, 2019 at 10:08 PM Borislav Petkov <bp@alien8.de> wrote:
> >
> > On Fri, Jan 25, 2019 at 09:45:18PM +0800, Dave Young wrote:
> > > AFAIK, some people prefer to explictly reserve crash memory at high
> > > region even if it is possible to reserve at low area. May because
> > > <4G memory is limited on large server, they want to leave this for other
> > > use.
> > >
> > > Yinghai or Vivek should know more about the history, probably they can
> > > recall some initial reason.
> >
> Go through the git log, and I found the initial introduction of
> crashkernel_high option. Refer to
> commit 55a20ee7804ab64ac90bcdd4e2868a42829e2784
> Author: Yinghai Lu <yinghai@kernel.org>
> Date: Mon Apr 15 22:23:47 2013 -0700
>
> x86, kdump: Retore crashkernel= to allocate under 896M
>
> Vivek found old kexec-tools does not work new kernel anymore.
>
> So change back crashkernel= back to old behavoir, and add crashkernel_high=
> to let user decide if buffer could be above 4G, and also new
> kexec-tools will
> be needed.
>
> But kexec-tools-2.0.3, released at 2012, can run 4.20 kernel with
> crashkernel=256M@5G, so I think only very old kexec-tools requires
> memory under 896M. Due to -1.few people running latest kernel with
> very old kexec-tools to date, -2. crashkernel=X is more popular than
> crashkernel=X.high, it should be time to eliminate this limit of
> crashkernel=X parameter, otherwise we will run into this bug.
> As for crashkernel=,high, I think it is a more professional option for
> who cares about the DMA32. On high-end machine, big reserved region is
> used for crashkernel(e.g. in this case 384M), which make the crowed
> situation under under 4GB memory worse.
This seems answers the question why ,high is needed and why
crashkernel=X can not allocate from high by default.
Another reason for this question is for crashkernel=,high, a separate
region under 4G is still needed. I searched some history bug/emails,
previously the initial commit does not reserve low memory by default if
,high is used, but later Yinghai saw a regression bug in case iommu
disabled. see below commit:
commit c729de8fcea37a1c444e81857eace12494c804a9
Author: Yinghai Lu <yinghai@kernel.org>
Date: Mon Apr 15 22:23:45 2013 -0700
x86, kdump: Set crashkernel_low automatically
Chao said that kdump does does work well on his system on 3.8
without extra parameter, even iommu does not work with kdump.
And now have to append crashkernel_low=Y in first kernel to make
kdump work.
We have now modified crashkernel=X to allocate memory beyong 4G (if
available) and do not allocate low range for crashkernel if the user
does not specify that with crashkernel_low=Y. This causes regression
if iommu is not enabled. Without iommu, swiotlb needs to be setup in
first 4G and there is no low memory available to second kernel.
[snip]
>
> > Yes, just "prefer" is not good enough. There should be a technical
> > reason why that's there.
> >
> > Also, if the user doesn't care, then the code should be free to force
> > "high" and thus probe a different range for allocation.
> >
> Do you suggest to remove crashkernel=X,high parameter?
I do not think it can be removed, because for ,high we also need extra
low memory, it will cause confusion, most people are just fine without
this. People can choose to use ,high if they really need it.
Thanks
Dave
next prev parent reply other threads:[~2019-01-31 7:42 UTC|newest]
Thread overview: 45+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-01-21 5:16 [PATCHv7] x86/kdump: bugfix, make the behavior of crashkernel=X consistent with kaslr Pingfan Liu
2019-01-21 6:24 ` Baoquan He
2019-01-25 10:39 ` Borislav Petkov
2019-01-25 13:45 ` Dave Young
2019-01-25 14:08 ` Borislav Petkov
2019-01-28 9:58 ` Dave Young
2019-01-28 10:18 ` Borislav Petkov
2019-06-07 17:30 ` Borislav Petkov
2019-06-10 6:51 ` Dave Young
2019-01-29 5:25 ` Pingfan Liu
2019-01-31 7:42 ` Dave Young [this message]
2019-01-31 7:59 ` Dave Young
2019-01-31 10:57 ` Borislav Petkov
2019-01-31 22:27 ` Jerry Hoemann
2019-01-31 23:47 ` Borislav Petkov
2019-02-04 22:30 ` Jerry Hoemann
2019-02-05 8:15 ` Borislav Petkov
2019-02-06 12:08 ` Dave Young
2019-02-11 20:48 ` Dave Young
2019-02-12 5:35 ` Pingfan Liu
2019-02-15 10:24 ` Borislav Petkov
2019-02-18 1:48 ` Dave Young
2019-02-20 7:38 ` Pingfan Liu
2019-02-20 8:32 ` Borislav Petkov
2019-02-20 9:41 ` Dave Young
2019-02-20 12:51 ` Pingfan Liu
2019-02-21 17:13 ` Borislav Petkov
2019-02-22 2:11 ` Dave Young
2019-02-22 8:42 ` Joerg Roedel
2019-02-22 13:00 ` Borislav Petkov
2019-02-24 13:25 ` Pingfan Liu
2019-02-25 1:53 ` Dave Young
2019-02-25 9:39 ` Borislav Petkov
2019-02-25 11:00 ` Joerg Roedel
2019-02-25 11:12 ` Dave Young
2019-02-25 11:30 ` Borislav Petkov
2019-03-01 3:04 ` Pingfan Liu
2019-03-01 3:19 ` Pingfan Liu
2019-03-22 8:22 ` Dave Young
2019-01-29 5:51 ` Pingfan Liu
2019-01-31 10:50 ` Borislav Petkov
-- strict thread matches above, loose matches on Subject: below --
2019-01-15 8:07 Pingfan Liu
2019-01-18 3:43 ` Dave Young
2019-01-19 1:25 ` Jerry Hoemann
2019-01-21 5:11 ` Pingfan Liu
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20190131074221.GA19091@dhcp-128-65.nay.redhat.com \
--to=dyoung@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=bhe@redhat.com \
--cc=bp@alien8.de \
--cc=kernelfans@gmail.com \
--cc=kexec@lists.infradead.org \
--cc=linux-kernel@vger.kernel.org \
--cc=rdunlap@infradead.org \
--cc=rppt@linux.vnet.ibm.com \
--cc=vgoyal@redhat.com \
--cc=x86@kernel.org \
--cc=yinghai@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).