lkml.org 
[lkml]   [2011]   [Jan]   [23]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
From
SubjectRe: 2.6.38-rc1 and -rc2 problems with khugepaged
Date
I inform that with thepatch below, my computer starts and 
works normally, with khugepaged enabled.

http://www.sys-linux.yi.org/info.php

dmesg enclosed if important for something, configure the
same as before with khugepage always enabled.

In my last mail, I sent enclosed the output of the kernel
compilation, with several advise messages. Pls check that,
and correct the subroutines where necessary.

wl

=============================================
On Sun, 23 Jan 2011 05:18:01 +0100
Andrea Arcangeli <aarcange@redhat.com> wrote:
> Hi Werner,
>
> On Sat, Jan 22, 2011 at 10:56:16PM -0400, werner wrote:
>> -rc2 hang up itself, still
>> Again compiled with khugepaged enabled, so I suppose
>>thats
>> the reason, still.
>> First, the initialisation of KDE stops, if then
>>switching
>> with CTRL-ALT-F1 to the text system, one can log in, but
>> soon after comes the kernel error message, and it sticks
>> also on the text screen, going nothing else, only press
>> the reboot button ...
>
> You need to apply this below patch on top of rc2 to be
>stable on
> x86_32 with PARAVIRT=y and HIGHMEM64G=n. It's in -mm
>already. Can you
> confirm that this fixes your problem? Thanks.
>
> ====
> Subject: thp: fix PARAVIRT x86 32bit noPAE
>
>From: Andrea Arcangeli <aarcange@redhat.com>
>
> This fixes TRANSPARENT_HUGEPAGE=y with PARAVIRT=y and
>HIGHMEM64=n.
>
> The #ifdef that this patch removes was erratically
>introduced to fix a build
> error for noPAE (where pmd.pmd doesn't exist). So then
>the kernel built but it
> failed at runtime because set_pmd_at was a noop. This
>will correct it by
> enabling set_pmd_at for noPAE mode too.
>
> Signed-off-by: Andrea Arcangeli <aarcange@redhat.com>
> ---
>
> diff --git a/arch/x86/include/asm/paravirt.h
>b/arch/x86/include/asm/paravirt.h
> index 2071a8b..ebbc4d8 100644
> --- a/arch/x86/include/asm/paravirt.h
> +++ b/arch/x86/include/asm/paravirt.h
> @@ -558,13 +558,12 @@ static inline void
>set_pte_at(struct mm_struct *mm, unsigned long addr,
> static inline void set_pmd_at(struct mm_struct *mm,
>unsigned long addr,
> pmd_t *pmdp, pmd_t pmd)
> {
> -#if PAGETABLE_LEVELS >= 3
> if (sizeof(pmdval_t) > sizeof(long))
> /* 5 arg words */
> pv_mmu_ops.set_pmd_at(mm, addr, pmdp, pmd);
> else
> - PVOP_VCALL4(pv_mmu_ops.set_pmd_at, mm, addr, pmdp,
>pmd.pmd);
> -#endif
> + PVOP_VCALL4(pv_mmu_ops.set_pmd_at, mm, addr, pmdp,
> + native_pmd_val(pmd));
> }
> #endif
>
>
>

"werner" <w.landgraf@ru.ru>
---
Professional hosting for everyone - http://www.host.ru
[unhandled content-type:application/octet-stream]
\
 
 \ /
  Last update: 2011-01-23 10:07    [W:0.040 / U:29.284 seconds]
©2003-2018 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site