All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrea Arcangeli <aarcange@redhat.com>
To: werner <w.landgraf@ru.ru>
Cc: akpm@linux-foundation.org, hannes@cmpxchg.org,
	idryomov@gmail.com, linux-kernel@vger.kernel.org,
	torvalds@linux-foundation.org,
	Minchan Kim <minchan.kim@gmail.com>,
	Johannes Weiner <jweiner@redhat.com>
Subject: Re: 2.6.38-rc1 and -rc2 problems with khugepaged
Date: Sun, 23 Jan 2011 05:18:01 +0100	[thread overview]
Message-ID: <20110123041801.GY9506@random.random> (raw)
In-Reply-To: <web-444846021@zbackend1.aha.ru>

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
 

  reply	other threads:[~2011-01-23  4:18 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-01-23  2:56 2.6.38-rc1 and -rc2 problems with khugepaged werner
2011-01-23  4:18 ` Andrea Arcangeli [this message]
2011-01-23  9:04   ` werner
  -- strict thread matches above, loose matches on Subject: below --
2011-01-23  3:10 werner

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=20110123041801.GY9506@random.random \
    --to=aarcange@redhat.com \
    --cc=akpm@linux-foundation.org \
    --cc=hannes@cmpxchg.org \
    --cc=idryomov@gmail.com \
    --cc=jweiner@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=minchan.kim@gmail.com \
    --cc=torvalds@linux-foundation.org \
    --cc=w.landgraf@ru.ru \
    /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.