Linux PARISC architecture development
 help / color / mirror / Atom feed
From: "David S. Miller" <davem@redhat.com>
To: jsm@udlkern.fc.hp.com
Cc: parisc-linux@lists.parisc-linux.org
Subject: [parisc-linux] Re: RFC: mmap patch
Date: Sun, 09 Mar 2003 13:29:49 -0800 (PST)	[thread overview]
Message-ID: <20030309.132949.19248296.davem@redhat.com> (raw)
In-Reply-To: <200303090342.UAA17294@udlkern.fc.hp.com>

   From: John Marvin <jsm@udlkern.fc.hp.com>
   Date: Sat, 8 Mar 2003 20:42:04 -0700 (MST)

   The problem is that since we have split I and D caches, the cache would
   need to be flushed anyway so that the instructions could be seen for
   execution.  So it didn't make any sense to set up the temporary
   translation and then flush it anyway; better to just do it through the
   kernel translation and flush.  I believe this isn't a problem on sparc64
   because of the write-through cache.
   
Handled on sparc64, when TIF_BLKCOMMIT flag is set, we use a more
expensive block store instruction in {copy,clear}_user_page() which
while more expensive does keep the instruction cache up to date.

More modent sparc64 chips don't even need this as the store stream
of the cpu is fully snooped by the instruction cache.

   > The PA-RISC mmap/write bug is something entirely different,
   > flush_dcache_page() just isn't doing what it is defined to
   > do :-)
   
   Ok.  But looking at the sparc64 implementation of flush_dcache_page I
   don't see any code to traverse user vma's.  Is there some other
   architecture specific trick that is being used to flush any user mappings
   that are mapped to the same physical address as the kernel address?
   
On sparc64 we can remove an arbitrary "physical" page from the D-cache
in one pass.  It does not matter what virtual address they use.

So it is handled, you just don't understand the hardware :-)

Because the chip has this interface, we need not walk the VMA list.

  reply	other threads:[~2003-03-09 21:51 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-03-09  3:42 [parisc-linux] Re: RFC: mmap patch John Marvin
2003-03-09 21:29 ` David S. Miller [this message]
  -- strict thread matches above, loose matches on Subject: below --
2003-03-09  3:51 John Marvin
2003-03-09 21:31 ` David S. Miller
2003-03-06 14:14 John Marvin
2003-03-06 14:31 ` Matthew Wilcox
2003-03-06 15:31   ` Randolph Chung
2003-03-08  6:30 ` Grant Grundler
2003-03-08  6:29   ` David S. Miller
2003-03-08 17:24     ` Grant Grundler
2003-03-08 19:04       ` David S. Miller
2003-03-08 20:42         ` Grant Grundler
2003-03-08 22:45         ` Matthew Wilcox
2003-03-08 23:00           ` David S. Miller
2003-03-08 23:27             ` Matthew Wilcox
2003-03-08 23:14               ` David S. Miller
2003-03-08 23:31             ` Randolph Chung
2003-03-08 23:15               ` David S. Miller
2003-03-09  2:15             ` Grant Grundler
2003-03-08 23:11     ` Matthew Wilcox
2003-03-08 23:02       ` David S. Miller
2003-03-09 14:42         ` Matthew Wilcox
2003-03-09 21:38           ` David S. Miller
2003-03-10  1:50             ` Matthew Wilcox
2003-03-10  5:18               ` David S. Miller
2003-03-14 13:04           ` Jochen Friedrich
2003-03-14 16:23             ` Grant Grundler

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=20030309.132949.19248296.davem@redhat.com \
    --to=davem@redhat.com \
    --cc=jsm@udlkern.fc.hp.com \
    --cc=parisc-linux@lists.parisc-linux.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox