From: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
To: Keir Fraser <keir.fraser@eu.citrix.com>
Cc: "xen-devel@lists.xensource.com" <xen-devel@lists.xensource.com>,
Ian Jackson <Ian.Jackson@eu.citrix.com>
Subject: Re: [PATCH] cleanup for __start_xen()
Date: Tue, 01 Dec 2009 09:00:26 +0800 [thread overview]
Message-ID: <4B146AAA.40508@cn.fujitsu.com> (raw)
In-Reply-To: <C739C4F9.30C3%keir.fraser@eu.citrix.com>
Keir Fraser wrote:
> On 30/11/2009 17:42, "Ian Jackson" <Ian.Jackson@eu.citrix.com> wrote:
>
>> I wrote:
>>> Xiao Guangrong writes ("[Xen-devel] [PATCH] cleanup for __start_xen()"):
>>>> - if ( !initial_images_start && (s < e) &&
>>>> + if ( !initial_images_start &&
>>> This is wrong. s and e are uint64_t so if !(s < e), (e-s) will be
>>> large and positive.
>> I see this has already been applied (20523). It should be reverted, I
>> think.
>
> None of the if() blocks in the loop will make e<s, as that would imply that
> the block had allocated itself a chunk of memory that starts below s. So it
> is actually safe to remove the checks, as we know e>=s. But now I look at it
> I think I broke the module-relocation block some time ago -- it ends up with
> 'e' being too large by modules_headroom. :-( Will look into that more
> tomorrow...
>
I thinks remove this judgment is very safe, because we have judge it at the
begin of this loop:
for ( i = boot_e820.nr_map-1; i >= 0; i-- )
{
uint64_t s, e, mask = (1UL << L2_PAGETABLE_SHIFT) - 1;
<snip>
if ( (boot_e820.map[i].type != E820_RAM) || (s >= e) ) /* NOTICE HERE*/
continue;
/* it must s < e while run below code, not need check it again ... */
......
}
Thanks,
Xiao
next prev parent reply other threads:[~2009-12-01 1:00 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-11-30 6:25 [PATCH] cleanup for __start_xen() Xiao Guangrong
2009-11-30 17:39 ` Ian Jackson
2009-11-30 17:42 ` Ian Jackson
2009-11-30 18:52 ` Keir Fraser
2009-12-01 1:00 ` Xiao Guangrong [this message]
2009-12-01 1:16 ` Xiao Guangrong
2009-12-01 9:42 ` Tim Deegan
2009-12-01 12:07 ` Keir Fraser
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=4B146AAA.40508@cn.fujitsu.com \
--to=xiaoguangrong@cn.fujitsu.com \
--cc=Ian.Jackson@eu.citrix.com \
--cc=keir.fraser@eu.citrix.com \
--cc=xen-devel@lists.xensource.com \
/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.