From: BenHanokh Gabriel <gabriel@SANgate.com>
To: "Stephen C. Tweedie" <sct@redhat.com>
Cc: Linux-MM mailing list <linux-mm@kvack.org>
Subject: Re: how to translate virtual memory addresss into physical address ?
Date: Wed, 20 Sep 2000 13:26:04 +0300 [thread overview]
Message-ID: <39C890BC.7070308@SANgate.com> (raw)
In-Reply-To: 20000920105308.K4608@redhat.com
Stephen C. Tweedie wrote:
> Hi,
>
> On Wed, Sep 20, 2000 at 10:44:54AM +0300, BenHanokh Gabriel wrote:
> >
> > how do i get in a kernel module the physical address from a virtual memory
> > addreess ( where the virual address can be either main-memory address or mmaped
> > pci memory) ?
>
> When you say "main memory", do you mean user space virtual addresses
> or just kernel space?
>
my module will have to deal with user space virtual addresses which are mapped
either to the computer "main-memory" or to a pci-device memory.
> For pci memory, you usually don't do anything --- you *start* with the
> physical address and work from there, creating a virtual address with
> ioremap().
this is only possible when my module is the pci-device driver, which is not the
case here
> You can do the translation backwards, but only by walking
> page tables.
how do i do this ? i tought that pci-memory is not pageable
>
> You might want to use map_user_kiobuf() for user-space addresses if
> you are running on 2.4 (or 2.2 with the raw IO patches). I've got
> diffs for a map_kernel_kiobuf() too, for 2.4 only. Those will also
> deal properly with things like locking user pages in memory and
> dealing with high memory on Intel boxes.
will the map_user_kiobuf handle pci-device memory correctly (AFAIK locking pci
memory is meaningless and that its memory is not split into pages ) ?
regards
Benhanokh Gabriel
-----------------------------------------------------------------------------
"If you think C++ is not overly complicated, just what is a
protected abstract virtual base class with a pure virtual private destructor,
and when was the last time you needed one?"
-- Tom Cargil, C++ Journal, Fall 1990. --
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://www.linux.eu.org/Linux-MM/
next prev parent reply other threads:[~2000-09-20 10:26 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2000-09-20 7:44 how to translate virtual memory addresss into physical address ? BenHanokh Gabriel
2000-09-20 9:53 ` Stephen C. Tweedie
2000-09-20 10:26 ` BenHanokh Gabriel [this message]
2000-09-20 11:20 ` Stephen C. Tweedie
2000-09-20 12:16 ` BenHanokh Gabriel
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=39C890BC.7070308@SANgate.com \
--to=gabriel@sangate.com \
--cc=linux-mm@kvack.org \
--cc=sct@redhat.com \
/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.