All of lore.kernel.org
 help / color / mirror / Atom feed
From: Borislav Petkov <bp@alien8.de>
To: Jerry Hoemann <jerry.hoemann@hpe.com>
Cc: Dave Young <dyoung@redhat.com>,
	x86@kernel.org, Baoquan He <bhe@redhat.com>,
	Randy Dunlap <rdunlap@infradead.org>,
	kexec@lists.infradead.org, linux-kernel@vger.kernel.org,
	Pingfan Liu <kernelfans@gmail.com>,
	Mike Rapoport <rppt@linux.vnet.ibm.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	yinghai@kernel.org, vgoyal@redhat.com
Subject: Re: [PATCHv7] x86/kdump: bugfix, make the behavior of crashkernel=X consistent with kaslr
Date: Fri, 1 Feb 2019 00:47:40 +0100	[thread overview]
Message-ID: <20190131234740.GO6749@zn.tnic> (raw)
In-Reply-To: <20190131222732.GA946@anatevka>

On Thu, Jan 31, 2019 at 03:27:32PM -0700, Jerry Hoemann wrote:
> So even if a system administrator is diligent and tests
> that a chosen kdump configuration works, that configuration
> might not work on some random reboot 7 months in the future.

Jerry, did you read the rest of the thread where I'm *actually*
suggesting to make the allocation code more robust against such
failures?

Doesn't look like it...

Now let's look at the code:

The "high" allocation does:

                crash_base = memblock_find_in_range(CRASH_ALIGN,
                                                    high ? CRASH_ADDR_HIGH_MAX
                                                         : CRASH_ADDR_LOW_MAX,
                                                    crash_size, CRASH_ALIGN);

where high=true and CRASH_ADDR_HIGH_MAX on 64-bit is MAXMEM:

# define CRASH_ADDR_HIGH_MAX    MAXMEM

The second fallback in the suggested patch does the same:

+               /*
+                * crashkernel=X reserve below 4G fails? Try MAXMEM
+                */
+               if (!high && !crash_base)
+                       crash_base = memblock_find_in_range(CRASH_ALIGN,
+                                               CRASH_ADDR_HIGH_MAX,
+                                               crash_size, CRASH_ALIGN);

and yet I get back that falling back to "high" if the first allocation
doesn't succeed is not something we should do by default because of
reasons. But this patch *practically* *does* it.

So no, until this hasn't been done cleanly and properly explained, we'll
be in a holding pattern.

-- 
Regards/Gruss,
    Boris.

Good mailing practices for 400: avoid top-posting and trim the reply.

WARNING: multiple messages have this Message-ID (diff)
From: Borislav Petkov <bp@alien8.de>
To: Jerry Hoemann <jerry.hoemann@hpe.com>
Cc: Randy Dunlap <rdunlap@infradead.org>, Baoquan He <bhe@redhat.com>,
	yinghai@kernel.org, x86@kernel.org, kexec@lists.infradead.org,
	linux-kernel@vger.kernel.org, Pingfan Liu <kernelfans@gmail.com>,
	Mike Rapoport <rppt@linux.vnet.ibm.com>,
	Andrew Morton <akpm@linux-foundation.org>,
	Dave Young <dyoung@redhat.com>,
	vgoyal@redhat.com
Subject: Re: [PATCHv7] x86/kdump: bugfix, make the behavior of crashkernel=X consistent with kaslr
Date: Fri, 1 Feb 2019 00:47:40 +0100	[thread overview]
Message-ID: <20190131234740.GO6749@zn.tnic> (raw)
In-Reply-To: <20190131222732.GA946@anatevka>

On Thu, Jan 31, 2019 at 03:27:32PM -0700, Jerry Hoemann wrote:
> So even if a system administrator is diligent and tests
> that a chosen kdump configuration works, that configuration
> might not work on some random reboot 7 months in the future.

Jerry, did you read the rest of the thread where I'm *actually*
suggesting to make the allocation code more robust against such
failures?

Doesn't look like it...

Now let's look at the code:

The "high" allocation does:

                crash_base = memblock_find_in_range(CRASH_ALIGN,
                                                    high ? CRASH_ADDR_HIGH_MAX
                                                         : CRASH_ADDR_LOW_MAX,
                                                    crash_size, CRASH_ALIGN);

where high=true and CRASH_ADDR_HIGH_MAX on 64-bit is MAXMEM:

# define CRASH_ADDR_HIGH_MAX    MAXMEM

The second fallback in the suggested patch does the same:

+               /*
+                * crashkernel=X reserve below 4G fails? Try MAXMEM
+                */
+               if (!high && !crash_base)
+                       crash_base = memblock_find_in_range(CRASH_ALIGN,
+                                               CRASH_ADDR_HIGH_MAX,
+                                               crash_size, CRASH_ALIGN);

and yet I get back that falling back to "high" if the first allocation
doesn't succeed is not something we should do by default because of
reasons. But this patch *practically* *does* it.

So no, until this hasn't been done cleanly and properly explained, we'll
be in a holding pattern.

-- 
Regards/Gruss,
    Boris.

Good mailing practices for 400: avoid top-posting and trim the reply.

_______________________________________________
kexec mailing list
kexec@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/kexec

  reply	other threads:[~2019-01-31 23:47 UTC|newest]

Thread overview: 93+ 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  5:16 ` Pingfan Liu
2019-01-21  6:24 ` Baoquan He
2019-01-21  6:24   ` Baoquan He
2019-01-25 10:39 ` Borislav Petkov
2019-01-25 10:39   ` Borislav Petkov
2019-01-25 13:45   ` Dave Young
2019-01-25 13:45     ` Dave Young
2019-01-25 14:08     ` Borislav Petkov
2019-01-25 14:08       ` Borislav Petkov
2019-01-28  9:58       ` Dave Young
2019-01-28  9:58         ` Dave Young
2019-01-28 10:18         ` Borislav Petkov
2019-01-28 10:18           ` Borislav Petkov
2019-06-07 17:30           ` Borislav Petkov
2019-06-07 17:30             ` Borislav Petkov
2019-06-10  6:51             ` Dave Young
2019-06-10  6:51               ` Dave Young
2019-01-29  5:25       ` Pingfan Liu
2019-01-29  5:25         ` Pingfan Liu
2019-01-31  7:42         ` Dave Young
2019-01-31  7:42           ` Dave Young
2019-01-31  7:59       ` Dave Young
2019-01-31  7:59         ` Dave Young
2019-01-31 10:57         ` Borislav Petkov
2019-01-31 10:57           ` Borislav Petkov
2019-01-31 22:27           ` Jerry Hoemann
2019-01-31 22:27             ` Jerry Hoemann
2019-01-31 23:47             ` Borislav Petkov [this message]
2019-01-31 23:47               ` Borislav Petkov
2019-02-04 22:30               ` Jerry Hoemann
2019-02-04 22:30                 ` Jerry Hoemann
2019-02-05  8:15                 ` Borislav Petkov
2019-02-05  8:15                   ` Borislav Petkov
2019-02-06 12:08                   ` Dave Young
2019-02-06 12:08                     ` Dave Young
2019-02-11 20:48                     ` Dave Young
2019-02-11 20:48                       ` Dave Young
2019-02-12  5:35                       ` Pingfan Liu
2019-02-12  5:35                         ` Pingfan Liu
2019-02-15 10:24                       ` Borislav Petkov
2019-02-15 10:24                         ` Borislav Petkov
2019-02-18  1:48                         ` Dave Young
2019-02-18  1:48                           ` Dave Young
2019-02-18  1:48                           ` Dave Young
2019-02-20  7:38                           ` Pingfan Liu
2019-02-20  7:38                             ` Pingfan Liu
2019-02-20  7:38                             ` Pingfan Liu
2019-02-20  8:32                           ` Borislav Petkov
2019-02-20  8:32                             ` Borislav Petkov
2019-02-20  9:41                             ` Dave Young
2019-02-20  9:41                               ` Dave Young
2019-02-20 12:51                               ` Pingfan Liu
2019-02-20 12:51                                 ` Pingfan Liu
2019-02-21 17:13                               ` Borislav Petkov
2019-02-21 17:13                                 ` Borislav Petkov
2019-02-22  2:11                                 ` Dave Young
2019-02-22  2:11                                   ` Dave Young
2019-02-22  8:42                                   ` Joerg Roedel
2019-02-22  8:42                                     ` Joerg Roedel
2019-02-22 13:00                                     ` Borislav Petkov
2019-02-22 13:00                                       ` Borislav Petkov
2019-02-24 13:25                                       ` Pingfan Liu
2019-02-24 13:25                                         ` Pingfan Liu
2019-02-25  1:53                                         ` Dave Young
2019-02-25  1:53                                           ` Dave Young
2019-02-25  9:39                                         ` Borislav Petkov
2019-02-25  9:39                                           ` Borislav Petkov
2019-02-25 11:00                                       ` Joerg Roedel
2019-02-25 11:00                                         ` Joerg Roedel
2019-02-25 11:12                                         ` Dave Young
2019-02-25 11:12                                           ` Dave Young
2019-02-25 11:30                                           ` Borislav Petkov
2019-02-25 11:30                                             ` Borislav Petkov
2019-02-25 11:30                                             ` Borislav Petkov
2019-03-01  3:04                                             ` Pingfan Liu
2019-03-01  3:04                                               ` Pingfan Liu
2019-03-01  3:19                                               ` Pingfan Liu
2019-03-01  3:19                                                 ` Pingfan Liu
2019-03-22  8:22                                                 ` Dave Young
2019-03-22  8:22                                                   ` Dave Young
2019-01-29  5:51   ` Pingfan Liu
2019-01-29  5:51     ` Pingfan Liu
2019-01-31 10:50     ` Borislav Petkov
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-15  8:07 ` Pingfan Liu
2019-01-18  3:43 ` Dave Young
2019-01-18  3:43   ` Dave Young
2019-01-19  1:25 ` Jerry Hoemann
2019-01-19  1:25   ` Jerry Hoemann
2019-01-21  5:11   ` Pingfan Liu
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=20190131234740.GO6749@zn.tnic \
    --to=bp@alien8.de \
    --cc=akpm@linux-foundation.org \
    --cc=bhe@redhat.com \
    --cc=dyoung@redhat.com \
    --cc=jerry.hoemann@hpe.com \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.