linux-mm.kvack.org archive mirror
 help / color / mirror / Atom feed
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/

  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 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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox