From: girish <girishvg@gmail.com>
To: "linux-mips@linux-mips.org" <linux-mips@linux-mips.org>
Cc: girish <girishvg@gmail.com>
Subject: FW: [PATCH] cleanup hardcoding __pa/__va macros etc. (take-2)
Date: Tue, 26 Sep 2006 11:24:06 +0900 [thread overview]
Message-ID: <C13EBE56.724F%girishvg@gmail.com> (raw)
In-Reply-To: <C13EBDF2.724C%girishvg@gmail.com>
------ Forwarded Message
From: girish <girishvg@gmail.com>
Date: Tue, 26 Sep 2006 11:22:26 +0900
To: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: "linux-mips@linux-mips.org" <git-commits@linux-mips.org>
Conversation: [PATCH] cleanup hardcoding __pa/__va macros etc. (take-2)
Subject: Re: [PATCH] cleanup hardcoding __pa/__va macros etc. (take-2)
The idea is to differentiate the Kseg0/Kseg1 segments in the physical area.
Beyond these areas lies the mapped area (or the HIGHMEM). What complicates
this matter further is their overlapping nature. The __pa()/__va() treated
all addresses mapped into PAGE_OFFSET (8000_0000) area. The effort is to
correctly differentiate these areas.
I could not think of any better solution & the only simplification I came up
with -
#ifdef CONFIG_32BIT
/* 8000_0000 & above */
#define ISMAPPEDPA(x) ((x) > KSEG0)
/* below 2000_0000 */
#define ISUNMAPPEDVA(x) ((x) < HIGHMEM_START)
#else
#define ISMAPPEDPA(x) (1)
#define ISMAPPEDVA(x) (1)
#endif
#define ___pa(x) ((unsigned long) (x) - KSEGX((x)))
#define __pa(x) (ISUNMAPPEDPA(x) ? ___pa((x)) : (x))
#define ___va(x) ((void *)((unsigned long) (x) + KSEG0))
#define __va(x) (ISUNMAPPEDVA(x) ? ___va((x)) : (x))
On 9/26/06 12:43 AM, "Atsushi Nemoto" <anemo@mba.ocn.ne.jp> wrote:
> On Mon, 25 Sep 2006 23:51:46 +0900, girish <girishvg@gmail.com> wrote:
>> Here is the patch again, attached as a text file. I don't have idea how
>> these macros should be on a 64bit machine, so I just left them as it is.
>> Could you please verify these macros again?
>
> Well, I should ask first: Why do you change __pa() and __va() ?
>
> I can not see point of ISMAPPED() testing. And these macros are used
> quite often so they should be as fast as possible.
>
> ---
> Atsushi Nemoto
------ End of Forwarded Message
next prev parent reply other threads:[~2006-09-26 2:24 UTC|newest]
Thread overview: 20+ messages / expand[flat|nested] mbox.gz Atom feed top
2006-09-24 5:39 [PATCH] cleanup hardcoding __pa/__va macros etc girish
2006-09-24 7:15 ` [PATCH] cleanup hardcoding __pa/__va macros etc. (FWD) girish
2006-09-24 15:26 ` [PATCH] cleanup hardcoding __pa/__va macros etc Atsushi Nemoto
2006-09-25 14:51 ` [PATCH] cleanup hardcoding __pa/__va macros etc. (take-2) girish
2006-09-25 15:43 ` Atsushi Nemoto
[not found] ` <C13EBDF2.724C%girishvg@gmail.com>
2006-09-26 2:24 ` girish [this message]
2006-09-26 9:02 ` Atsushi Nemoto
2006-09-26 15:20 ` girish
2006-09-26 16:35 ` Atsushi Nemoto
2006-09-26 22:06 ` girish
2006-09-27 15:35 ` Atsushi Nemoto
2006-09-27 16:58 ` PATCH] cleanup hardcoding __pa/__va macros etc. (take-4) girish
2006-09-28 23:29 ` Ralf Baechle
2006-09-29 14:45 ` PATCH] cleanup hardcoding __pa/__va macros etc. (take-5) girish
2006-09-29 17:59 ` Atsushi Nemoto
2006-09-29 18:33 ` girish
2006-10-01 14:52 ` Atsushi Nemoto
2006-10-01 14:57 ` girish
2006-10-01 15:09 ` Atsushi Nemoto
2006-09-28 15:01 ` [PATCH] cleanup hardcoding __pa/__va macros etc. (take-2) Ralf Baechle
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=C13EBE56.724F%girishvg@gmail.com \
--to=girishvg@gmail.com \
--cc=linux-mips@linux-mips.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.