All of lore.kernel.org
 help / color / mirror / Atom feed
From: Yinghai Lu <yinghai@kernel.org>
To: Maarten Lankhorst <m.b.lankhorst@gmail.com>
Cc: Matthew Garrett <mjg59@srcf.ucam.org>, Jim Bos <jim876@xs4all.nl>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>,
	Greg KH <gregkh@suse.de>, "H. Peter Anvin" <hpa@linux.intel.com>
Subject: Re: 2.6.39.1 immediately reboots/resets on EFI system
Date: Fri, 10 Jun 2011 15:58:06 -0700	[thread overview]
Message-ID: <4DF2A17E.7000103@kernel.org> (raw)
In-Reply-To: <4DF29E7E.50908@gmail.com>

On 06/10/2011 03:45 PM, Maarten Lankhorst wrote:
> Op 10-06-11 19:54, Matthew Garrett schreef:
>> On Fri, Jun 10, 2011 at 07:51:46PM +0200, Maarten Lankhorst wrote:
>>> Well,
>>>
>>> Op 10-06-11 18:47, Matthew Garrett schreef:
>>>> So this is obviously even more of a hack, but before you check whether 
>>>> the memblock has already been reserved could you __check_region it as 
>>>> well? That ought to avoid us touching the kernel. I've got a patch for 
>>>> grub that'll avoid the situation where we load the kernel on top of an 
>>>> existing resource and I'll port that to grub2, but that's still going to 
>>>> be awkward for existing bootloaders.
>>>>
>>> Erm, __check_region calls __requestion_region which does a kzalloc,
>>> if I call __check_region it doesn't boot, probably because of that.
>> Oh, bother.
>>
>>> Do you want me to manually run through iomem_resource? Is it even available up at that point?
>> Should be - we've already called insert_resource to set up the kernel at 
>> this point.
>>
> 
> Version with yinghai's free_bootmem_late_with_active_regions.
> 
> Still has an issue though, I'm getting 2 warnings from swapper:
> [    2.867034] BUG: Bad page state in process swapper  pfn:01900
> [    2.867303] page:ffffea0000057800 count:0 mapcount:-127 mapping:          (null) index:0x0
> [    2.867683] page flags: 0x100000000000000()
> [    2.867887] Pid: 1, comm: swapper Not tainted 2.6.39.1-patser+ #15
> [    2.867888] Call Trace:
> [    2.867893]  [<ffffffff810f349b>] ? dump_page+0x9b/0xd0
> [    2.867894]  [<ffffffff810f3599>] bad_page+0xc9/0x120
> [    2.867896]  [<ffffffff810f36af>] free_pages_prepare+0xbf/0x110
> [    2.867898]  [<ffffffff810f4fa9>] free_hot_cold_page+0x49/0x440
> [    2.867899]  [<ffffffff810f59fd>] __free_pages+0x2d/0x40
> [    2.867900]  [<ffffffff810f5a53>] free_pages+0x43/0x50
> [    2.867903]  [<ffffffff81029542>] free_init_pages+0x132/0x1c0
> [    2.867904]  [<ffffffff81029cd3>] mark_rodata_ro+0x143/0x150
> [    2.867906]  [<ffffffff810001d8>] init_post+0x18/0xd0
> [    2.867909]  [<ffffffff81ab7d45>] kernel_init+0x158/0x163
> [    2.867911]  [<ffffffff815688d4>] kernel_thread_helper+0x4/0x10
> [    2.867913]  [<ffffffff81ab7bed>] ? start_kernel+0x3dc/0x3dc
> [    2.867914]  [<ffffffff815688d0>] ? gs_change+0xb/0xb
> [    2.867915] Disabling lock debugging due to kernel taint
> [    2.867922] BUG: Bad page state in process swapper  pfn:01910
> [    2.868187] page:ffffea0000057b80 count:0 mapcount:-127 mapping:          (null) index:0x0
> [    2.868567] page flags: 0x100000000000000()
> [    2.868769] Pid: 1, comm: swapper Tainted: G    B       2.6.39.1-patser+ #15
> [    2.868770] Call Trace:
> [    2.868771]  [<ffffffff810f349b>] ? dump_page+0x9b/0xd0
> [    2.868773]  [<ffffffff810f3599>] bad_page+0xc9/0x120
> [    2.868774]  [<ffffffff810f36af>] free_pages_prepare+0xbf/0x110
> [    2.868775]  [<ffffffff810f4fa9>] free_hot_cold_page+0x49/0x440
> [    2.868777]  [<ffffffff810f59fd>] __free_pages+0x2d/0x40
> [    2.868778]  [<ffffffff810f5a53>] free_pages+0x43/0x50
> [    2.868779]  [<ffffffff81029542>] free_init_pages+0x132/0x1c0
> [    2.868781]  [<ffffffff81029cd3>] mark_rodata_ro+0x143/0x150
> [    2.868782]  [<ffffffff810001d8>] init_post+0x18/0xd0
> [    2.868784]  [<ffffffff81ab7d45>] kernel_init+0x158/0x163
> [    2.868785]  [<ffffffff815688d4>] kernel_thread_helper+0x4/0x10
> [    2.868787]  [<ffffffff81ab7bed>] ? start_kernel+0x3dc/0x3dc
> [    2.868788]  [<ffffffff815688d0>] ? gs_change+0xb/0xb
> 
> Also don't rate for style, that wasn't the scope of this patch. This is just to have something to test with ;)
> 

the problem is : overlapping between kernel code with boot services code.

now e820 table that is passed from bootloader do not include boot services code range. and also current boot/head_64.S will not
try to find usable range for decompressed kernel ( too early )...

So solution will be:
1. revert Matthew Garrett's patch, because it breaking unknown good platform.
2. ask vendor of system that Matthew try to fix to go back fix their firmware. otherwise user have stay with CSM with it.

Thanks

Yinghai Lu

  reply	other threads:[~2011-06-10 22:58 UTC|newest]

Thread overview: 129+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-11-06 11:15 gcc 4.5.1 / as 2.20.51.0.11 miscompiling drivers/char/i8k.c ? Jim
2010-11-07 21:31 ` Andi Kleen
2010-11-07 22:41   ` Andreas Schwab
2010-11-07 23:03     ` Andi Kleen
2010-11-08 10:49       ` Richard Guenther
2010-11-08 11:20         ` Andi Kleen
2010-11-08 11:20           ` Richard Guenther
2010-11-08 11:47             ` Paul Koning
2010-11-08 11:53               ` Jakub Jelinek
2010-11-08 12:20           ` Michael Matz
2010-11-08 18:39           ` Dave Korn
2010-11-09 13:00             ` Michael Matz
2010-11-09 13:48               ` Andi Kleen
2010-11-09 13:57                 ` Andreas Schwab
2010-11-09 16:43                   ` Jim
2010-11-13 11:13                     ` [PATCH] i8k: Tell gcc that *regs gets clobbered Jim Bos
2010-11-15  0:52                     ` gcc 4.5.1 / as 2.20.51.0.11 miscompiling drivers/char/i8k.c ? James Cloos
2010-11-15  3:21                       ` Linus Torvalds
2010-11-15  8:56                         ` Jakub Jelinek
2010-11-15  9:12                           ` Andi Kleen
2010-11-15  9:20                           ` Jakub Jelinek
2010-11-15 10:03                           ` Jakub Jelinek
2010-11-15 10:54                             ` Andi Kleen
2010-11-15 11:16                               ` Jakub Jelinek
2010-11-15 11:37                                 ` Andi Kleen
2010-11-15 17:36                                   ` Jim Bos
2010-11-15 17:44                                     ` Jakub Jelinek
2010-11-15 18:17                                       ` Jim Bos
2010-11-15 18:26                                         ` Jakub Jelinek
2010-11-15 19:10                                           ` Jim Bos
2010-11-15 16:04                                 ` Linus Torvalds
2010-11-15 17:40                                   ` Jim Bos
2010-11-15 18:08                                     ` Linus Torvalds
2010-11-15 18:30                                       ` Jim Bos
2010-11-15 18:37                                         ` Jim Bos
2010-11-15 18:56                                         ` Linus Torvalds
2010-11-15 18:58                                         ` Jakub Jelinek
2010-11-15 19:12                                           ` Jakub Jelinek
2010-11-15 19:21                                             ` Linus Torvalds
2010-11-15 19:51                                               ` Jakub Jelinek
2010-11-15 20:22                                                 ` Jim Bos
2011-06-03 13:05                                                   ` 2.6.39.1 immediately reboots/resets on EFI system Jim Bos
2011-06-03 13:33                                                     ` Matthew Garrett
2011-06-03 14:26                                                       ` Jim Bos
2011-06-03 14:46                                                         ` Matthew Garrett
2011-06-05 10:40                                                           ` Jim Bos
2011-06-05 12:57                                                             ` Maarten Lankhorst
2011-06-06 15:01                                                           ` Maarten Lankhorst
2011-06-06 15:40                                                             ` Jim Bos
2011-06-06 15:44                                                             ` Matthew Garrett
2011-06-06 15:27                                                         ` Maarten Lankhorst
2011-06-06 16:11                                                           ` Jim Bos
2011-06-06 16:43                                                             ` Maarten Lankhorst
2011-06-07  0:19                                                               ` Yinghai Lu
2011-06-07  1:41                                                                 ` Matthew Garrett
2011-06-07  2:05                                                                   ` Yinghai Lu
2011-06-07  8:25                                                                     ` Maarten Lankhorst
2011-06-07 15:14                                                                       ` Yinghai Lu
2011-06-07  9:08                                                                     ` Maarten Lankhorst
2011-06-07 12:22                                                                       ` Maarten Lankhorst
2011-06-07 22:25                                                                         ` Yinghai Lu
2011-06-08 16:44                                                                           ` Jim Bos
2011-06-08 19:17                                                                             ` Yinghai Lu
2011-06-08 19:23                                                                               ` Matthew Garrett
2011-06-08 19:27                                                                                 ` Yinghai Lu
2011-06-08 19:29                                                                                   ` Matthew Garrett
2011-06-08 19:35                                                                                     ` Yinghai Lu
2011-06-08 19:38                                                                                       ` Matthew Garrett
2011-06-08 19:46                                                                                         ` Yinghai Lu
2011-06-08 19:52                                                                                           ` Matthew Garrett
2011-06-08 19:48                                                                                         ` Yinghai Lu
2011-06-08 19:52                                                                                           ` Matthew Garrett
2011-06-08 20:03                                                                                             ` Yinghai Lu
2011-06-08 20:09                                                                                               ` Matthew Garrett
2011-06-08 20:23                                                                                                 ` Yinghai Lu
2011-06-08 20:30                                                                                                   ` Matthew Garrett
2011-06-08 20:36                                                                                                     ` Yinghai Lu
2011-06-08 20:42                                                                                                       ` Matthew Garrett
2011-06-08 20:46                                                                                                         ` Yinghai Lu
2011-06-08 21:06                                                                                                           ` Matthew Garrett
2011-06-08 21:06                                                                                                         ` Linus Torvalds
2011-06-08 21:28                                                                                                           ` Matthew Garrett
2011-06-08 21:31                                                                                                             ` H. Peter Anvin
2011-06-08 21:36                                                                                                               ` Matthew Garrett
2011-06-08 21:31                                                                                                             ` Linus Torvalds
2011-06-08 21:42                                                                                                               ` Matthew Garrett
2011-06-08 21:51                                                                                                               ` H. Peter Anvin
2011-06-08 22:57                                                                                                                 ` Linus Torvalds
2011-06-08 23:54                                                                                                                   ` Maarten Lankhorst
2011-06-08 21:38                                                                                                             ` Yinghai Lu
2011-06-10 16:47                                                                       ` Matthew Garrett
2011-06-10 17:51                                                                         ` Maarten Lankhorst
2011-06-10 17:54                                                                           ` Matthew Garrett
2011-06-10 22:45                                                                             ` Maarten Lankhorst
2011-06-10 22:58                                                                               ` Yinghai Lu [this message]
2011-06-10 23:03                                                                                 ` Matthew Garrett
2011-06-10 23:17                                                                                   ` Greg KH
2011-06-10 23:22                                                                                     ` Maarten Lankhorst
2011-06-10 23:25                                                                                     ` H. Peter Anvin
2011-06-10 23:26                                                                                   ` Yinghai Lu
2011-06-10 23:32                                                                                     ` H. Peter Anvin
2011-06-10 23:55                                                                                       ` Yinghai Lu
2011-06-11  0:00                                                                                         ` H. Peter Anvin
2011-06-11  0:19                                                                                           ` Yinghai Lu
2011-06-14 18:06                                                                                             ` H. Peter Anvin
2011-06-11 15:29                                                                                     ` Matthew Garrett
2011-06-10 23:00                                                                               ` Yinghai Lu
2011-06-13 16:47                                                                               ` Matthew Garrett
2011-06-13 17:52                                                                                 ` Maarten Lankhorst
2011-06-13 18:00                                                                                   ` Matthew Garrett
2011-06-13 18:14                                                                                     ` Maarten Lankhorst
2011-06-13 18:17                                                                                       ` Matthew Garrett
2011-06-13 18:23                                                                                         ` Maarten Lankhorst
2011-06-13 18:33                                                                                           ` Matthew Garrett
2011-06-13 18:45                                                                                             ` Maarten Lankhorst
2011-06-14 14:34                                                                                             ` Maarten Lankhorst
2011-06-14 14:50                                                                                             ` Maarten Lankhorst
2011-06-14 14:55                                                                                               ` Matthew Garrett
2010-11-15 22:43                                                 ` gcc 4.5.1 / as 2.20.51.0.11 miscompiling drivers/char/i8k.c ? Andi Kleen
2010-11-15 22:46                                                   ` Jakub Jelinek
2010-11-15 19:53                                             ` Richard Henderson
2010-11-15 10:24                           ` Richard Guenther
2010-11-15 18:45         ` Jeff Law
2010-11-15 19:04           ` Linus Torvalds
2010-11-15 22:07           ` Richard Guenther
2010-11-15 22:58             ` Jeff Law
2010-11-15 23:07               ` Richard Guenther
2010-11-16  4:10                 ` Jeff Law
2010-11-15 18:42     ` Jeff Law

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=4DF2A17E.7000103@kernel.org \
    --to=yinghai@kernel.org \
    --cc=gregkh@suse.de \
    --cc=hpa@linux.intel.com \
    --cc=jim876@xs4all.nl \
    --cc=linux-kernel@vger.kernel.org \
    --cc=m.b.lankhorst@gmail.com \
    --cc=mjg59@srcf.ucam.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.