From: Andrew Morton <akpm@osdl.org>
To: Jesse Barnes <jbarnes@engr.sgi.com>
Cc: davej@redhat.com, airlied@linux.ie, andrew@digital-domain.net,
linux-kernel@vger.kernel.org, dri-devel@lists.sourceforge.net
Subject: Re: drm lockups since 2.6.11-bk2
Date: Tue, 15 Mar 2005 11:25:30 -0800 [thread overview]
Message-ID: <20050315112530.21bb0922.akpm@osdl.org> (raw)
In-Reply-To: <200503151003.39636.jbarnes@engr.sgi.com>
Jesse Barnes <jbarnes@engr.sgi.com> wrote:
>
> I'd be happy to test and fix things, but the page table walker patches broke
> ia64... Once that's cleared up I can go digging.
We're hoping that davem's fix (committed yesterday) fixed that.
ChangeSet 1.2181.1.2, 2005/03/14 21:16:17-08:00, davem@sunset.davemloft.net
[MM]: Restore pgd_index() iteration to clear_page_range().
Otherwise ia64 and sparc64 explode with the new ptwalk
iterators. The pgd level stuff does not handle virtual
address space holes (sparc64) and region based PGD indexing
(ia64) properly. It only matters in functions like
clear_page_range() which potentially walk over more than
a single VMA worth of address space.
Signed-off-by: David S. Miller <davem@davemloft.net>
memory.c | 10 +++++++---
1 files changed, 7 insertions(+), 3 deletions(-)
diff -Nru a/mm/memory.c b/mm/memory.c
--- a/mm/memory.c 2005-03-15 00:06:50 -08:00
+++ b/mm/memory.c 2005-03-15 00:06:50 -08:00
@@ -182,15 +182,19 @@
unsigned long addr, unsigned long end)
{
pgd_t *pgd;
- unsigned long next;
+ unsigned long i, next;
pgd = pgd_offset(tlb->mm, addr);
- do {
+ for (i = pgd_index(addr); i <= pgd_index(end-1); i++) {
next = pgd_addr_end(addr, end);
if (pgd_none_or_clear_bad(pgd))
continue;
clear_pud_range(tlb, pgd, addr, next);
- } while (pgd++, addr = next, addr != end);
+ pgd++;
+ addr = next;
+ if (addr == end)
+ break;
+ }
}
pte_t fastcall * pte_alloc_map(struct mm_struct *mm, pmd_t *pmd, unsigned long address)
next prev parent reply other threads:[~2005-03-15 19:31 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-03-15 10:38 drm lockups since 2.6.11-bk2 Dave Airlie
2005-03-15 14:36 ` Dave Jones
2005-03-15 16:15 ` Dave Airlie
2005-03-15 16:41 ` Dave Jones
2005-03-15 16:53 ` Dave Jones
2005-03-15 16:56 ` Dave Airlie
2005-03-15 17:00 ` Andrew Clayton
2005-03-15 18:03 ` Jesse Barnes
2005-03-15 19:25 ` Andrew Morton [this message]
2005-03-15 19:36 ` Jesse Barnes
2005-03-15 23:27 ` Andrew Morton
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=20050315112530.21bb0922.akpm@osdl.org \
--to=akpm@osdl.org \
--cc=airlied@linux.ie \
--cc=andrew@digital-domain.net \
--cc=davej@redhat.com \
--cc=dri-devel@lists.sourceforge.net \
--cc=jbarnes@engr.sgi.com \
--cc=linux-kernel@vger.kernel.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.