From: steven.lin@teradyne.com
To: Scott Wood <scottwood@freescale.com>
Cc: steven.lin@teradyne.com, linuxppc-dev@lists.ozlabs.org,
David Gibson <david@gibson.dropbear.id.au>
Subject: Re: application needs fast access to physical memory
Date: Thu, 18 Nov 2010 14:46:16 -0600 [thread overview]
Message-ID: <OF40046BB1.06061608-ON882577DF.00711C8B-862577DF.00721D60@notes.teradyne.com> (raw)
In-Reply-To: <20101118133549.1c6d2cc3@udp111988uds.am.freescale.net>
[-- Attachment #1.1: Type: text/plain, Size: 3437 bytes --]
Hello Scott,
Do you know whether this patch is necessary if I were to use alloc_bootmem
() (to set aside a region of contiguous physical memory) instead of the
kernel parameter "mem=256"?
-Steve Lin
Scott Wood
<scottwood@freesc
ale.com> To
<steven.lin@teradyne.com>
11/18/2010 01:35 cc
PM David Gibson
<david@gibson.dropbear.id.au>,
Michael Ellerman
<michael@ellerman.id.au>,
<linuxppc-dev@lists.ozlabs.org>
Subject
Re: application needs fast access
to physical memory
On Thu, 18 Nov 2010 10:55:21 -0600
<steven.lin@teradyne.com> wrote:
> Thanks for the replies.
>
> In the Linux Device Drivers book regarding mmap(), it states:
>
> Mapping a device means associating a range of user-space addresses to
> device memory.
> Whenever the program reads or writes in the assigned address range, it
> is actually
> accessing the device. In the X server example, using mmap allows quick
> and easy
> access to the video card’s memory. For a performance-critical
> application like this,
> direct access makes a large difference.
>
> For whatever reason, mmap() is definitely not quick and does not appear
to
> be a direct access to device memory. After the application completes a
> large write into physical memory (via the pointer returned from mmap()),
> the application performs an ioctl() to query whether the data actually
> arrived into the memory region. It seems to take some time before the
> associated kernel module actually "sees" the data in the physical memory
> region.
>
> There's a few things I should say about this memory region. There's a
total
> of 512 MB of physical memory. U-Boot passes "mem=256M" as a kernel
> parameter to tell Linux to only directly manage the lower 256 MB. The
> special region of physical memory that the application is trying to
access
> is the upper 256 MB of memory not directly managed by Linux. The mmap()
> call from the application is:
> *memptr = (void *) mmap( NULL, size, PROT_READ | PROT_WRITE,
MAP_SHARED,
> _fdTerAlloc, (off_t) 0x10000000);
Try this patch:
http://patchwork.ozlabs.org/patch/68246/
-Scott
[-- Attachment #1.2: Type: text/html, Size: 4936 bytes --]
[-- Attachment #2: graycol.gif --]
[-- Type: image/gif, Size: 105 bytes --]
[-- Attachment #3: pic02222.gif --]
[-- Type: image/gif, Size: 1255 bytes --]
[-- Attachment #4: ecblank.gif --]
[-- Type: image/gif, Size: 45 bytes --]
next prev parent reply other threads:[~2010-11-18 20:46 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-11-17 22:03 application needs fast access to physical memory steven.lin
2010-11-18 12:24 ` Michael Ellerman
2010-11-18 12:52 ` David Laight
2010-11-18 12:54 ` David Gibson
2010-11-18 16:55 ` steven.lin
2010-11-18 19:35 ` Scott Wood
2010-11-18 20:46 ` steven.lin [this message]
2010-11-18 20:48 ` Scott Wood
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=OF40046BB1.06061608-ON882577DF.00711C8B-862577DF.00721D60@notes.teradyne.com \
--to=steven.lin@teradyne.com \
--cc=david@gibson.dropbear.id.au \
--cc=linuxppc-dev@lists.ozlabs.org \
--cc=scottwood@freescale.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.