[Top] [All Lists]

Re: [PATCH 0/3] Globally defining phys_addr_t

To: Geert Uytterhoeven <>
Subject: Re: [PATCH 0/3] Globally defining phys_addr_t
From: Ralf Baechle <>
Date: Thu, 11 Sep 2008 13:50:09 +0200
Cc: Jeremy Fitzhardinge <>, Ingo Molnar <>, Alex Nixon <>, Andrew Morton <>, Linux Kernel Mailing List <>, Linux/MIPS Development <>, Jeff Dike <>,
In-reply-to: <Pine.LNX.4.64.0809111202560.1545@anakin>
Original-recipient: rfc822;
References: <> <Pine.LNX.4.64.0809111202560.1545@anakin>
User-agent: Mutt/1.5.18 (2008-05-17)
On Thu, Sep 11, 2008 at 12:03:36PM +0200, Geert Uytterhoeven wrote:

> On Thu, 11 Sep 2008, Jeremy Fitzhardinge wrote:
> > This is a repost of a little 3-patch series which Andrew has been
> > carrying in -mm.  It cleans up the definition of phys_addr_t to make it
> > kernel-wide rather than x86-specific, and fixes up PFN_PHYS() to use it
> > to avoid address truncation.
> > 
> > We currently have a few workarounds for this problem in the tree, but
> > Alex found another bug caused by PFN_PHYS(), so it's probably better if
> > you bring these patches into tip.git for now.
> > 
> > PowerPC also defines a phys_addr_t with the same meaning as x86; the
> > powerpc arch maintainers are happy with these patches.
> If I'm not mistaking, this is also true for some MIPS machines.

Jeremy probably missed it because it's called phys_t on MIPS.  It's usually
the same size as unsigned long but a few of the 32-bit Alchemy SOCs have
peripherals placed outside of the 32-bit physical address space so for
those CONFIG_64BIT_PHYS_ADDR will be defined and phys_t be unsigned long
long and used for some pagetable stuff to map those devices into the 32-bit
virtual address space.

UM uses a phys_t for its pagetables.

A single data type for everybody is enough.  phys_addr_t or phys_t I don't
care; I went for phys_t because it's shorter, less to type.


<Prev in Thread] Current Thread [Next in Thread>