[meta-intel] [PATCH v2 4/5] fri2.conf: fix boot time kernel errors

Kamble, Nitin A nitin.a.kamble at intel.com
Thu Jan 31 12:43:57 PST 2013



> -----Original Message-----
> From: Hart, Darren
> Sent: Thursday, January 31, 2013 12:42 PM
> To: Kamble, Nitin A
> Cc: Zanussi, Tom; meta-intel at yoctoproject.org
> Subject: Re: [PATCH v2 4/5] fri2.conf: fix boot time kernel errors
> 
> On 01/31/2013 12:38 PM, Kamble, Nitin A wrote:
> >
> >
> >> -----Original Message-----
> >> From: Zanussi, Tom
> >> Sent: Thursday, January 31, 2013 12:36 PM
> >> To: Kamble, Nitin A
> >> Cc: Hart, Darren; meta-intel at yoctoproject.org
> >> Subject: Re: [PATCH v2 4/5] fri2.conf: fix boot time kernel errors
> >>
> >> On Thu, 2013-01-31 at 10:31 -0800, nitin.a.kamble at intel.com wrote:
> >>> From: Nitin A Kamble <nitin.a.kamble at intel.com>
> >>>
> >>> The fri2 kernel is hitting kernel BUGs while booting as seen bellow.
> >>>
> >>
> >>                                                                ^^^^^
> >>
> >> As requested before, please proofread for obvious typos before
> submitting.
> >> I'll fix this up in the commit so no need to resubmit for this, but
> >> please do check before sending...
> >>
> >
> > Tom,
> >   I don't get, what is the issue with the wording?
> 
> 
> bellow - deep loud roar
> below - underneath

I see. Thanks for catching.
Nitin

> 
> --
> Darren
> 
> >
> >
> >
> >> Thanks,
> >>
> >> Tom
> >>
> >>> BUG: Bad page state in process loop0  pfn:3803
> >>> page:f6991700 count:0 mapcount:0 mapping:  (null) index:0x0 page
> >>> flags: 0x80400000(uncached) Modules linked in: emgd drm_kms_helper
> >>> ip_tables x_tables arc4 minix cdc_acm iwlwifi led_class mac80211
> >>> cfg80211 firmware_class
> >>> Pid: 448, comm: loop0 Not tainted 3.4.26-yocto-standard #1 Call Trace:
> >>>  [<c10cdb0f>] bad_page+0x8f/0xe0
> >>>  [<c10ce0e5>] get_page_from_freelist+0x435/0x4e0
> >>>  [<c10ce2c5>] __alloc_pages_nodemask+0x135/0x690
> >>>  [<c10d1964>] __do_page_cache_readahead+0xe4/0x210
> >>>  [<c1055a6b>] ? get_parent_ip+0xb/0x40  [<c1055a6b>] ?
> >>> get_parent_ip+0xb/0x40  [<c10d1cf7>] ra_submit+0x27/0x30
> >> [<c10d1e37>]
> >>> ondemand_readahead+0x137/0x230  [<c166b061>] ?
> >>> __wait_on_bit_lock+0x61/0xa0  [<c10d1fae>]
> >>> page_cache_async_readahead+0x7e/0xa0
> >>>  [<c112b590>] __generic_file_splice_read+0x360/0x5a0
> >>>  [<c1129e90>] ? page_cache_pipe_buf_release+0x20/0x20
> >>>  [<c105c56c>] ? enqueue_task_fair+0x1ac/0x620  [<c105b584>] ?
> >>> check_preempt_wakeup+0x144/0x220  [<c1054b32>] ?
> >>> check_preempt_curr+0x72/0x90  [<c1051f5d>] ? ttwu_stat+0x2d/0x100
> >>> [<c1055a6b>] ? get_parent_ip+0xb/0x40  [<c1055a6b>] ?
> >>> get_parent_ip+0xb/0x40  [<c1670763>] ?
> sub_preempt_count+0x43/0xb0
> >>> [<c102573e>] ? __kunmap_atomic+0x3e/0x90  [<c13b22c0>] ?
> >>> loop_make_request+0xf0/0xf0  [<c13b19b9>] ?
> >>> lo_splice_actor+0x89/0xc0 [<c12c01e4>] ?
> >>> security_file_permission+0x94/0xb0
> >>>  [<c112b83c>] generic_file_splice_read+0x6c/0xe0
> >>>  [<c112b7d0>] ? __generic_file_splice_read+0x5a0/0x5a0
> >>>  [<c112a201>] vfs_splice_to+0x61/0x80  [<c112a2ca>]
> >>> splice_direct_to_actor+0xaa/0x1d0  [<c13b21b0>] ?
> >>> loop_thread+0x510/0x510  [<c13b1f43>] loop_thread+0x2a3/0x510
> >>> [<c13b1ca0>] ? do_lo_send_write+0xe0/0xe0  [<c1047103>]
> >>> kthread+0x73/0x80  [<c1047090>] ?
> >>> kthread_freezable_should_stop+0x50/0x50
> >>>  [<c1673df6>] kernel_thread_helper+0x6/0x10
> >>>
> >>> FRI2 has 1GB of ram, hence the kernel sets 128MB for the vmalloc
> >>> allocation memory. And the emgd driver needs at least 256MB vmalloc
> >>> memory to work correctly. This commit specifies the vmalloc
> >>> allocation size to the kernel by the vmalloc=256MB boot parameter.
> >>>
> >>> Adjusting the kernel's vmalloc allocation size fixes the kernel errors.
> >>>
> >>> This fixes bug:
> >>> [Yocto #3810]
> >>>
> >>> Signed-off-by: Nitin A Kamble <nitin.a.kamble at intel.com>
> >>> ---
> >>>  meta-fri2/conf/machine/fri2.conf |    3 +++
> >>>  1 files changed, 3 insertions(+), 0 deletions(-)
> >>>
> >>> diff --git a/meta-fri2/conf/machine/fri2.conf
> >>> b/meta-fri2/conf/machine/fri2.conf
> >>> index 40f2cdc..a1b13fa 100644
> >>> --- a/meta-fri2/conf/machine/fri2.conf
> >>> +++ b/meta-fri2/conf/machine/fri2.conf
> >>> @@ -38,3 +38,6 @@ APPEND += "console=ttyPCH1,115200
> console=tty0"
> >>>
> >>>  # EFI boot will ignore this and use the EFI framebuffer at 800x600
> >>> APPEND += "video=vesafb vga=0x318"
> >>> +
> >>> +# EMGD kernel driver needs at least 256MB of vmalloc space APPEND
> >>> ++= "vmalloc=256MB"
> >>
> >
> 
> --
> Darren Hart
> Intel Open Source Technology Center
> Yocto Project - Linux Kernel


More information about the meta-intel mailing list