From: Linus Torvalds <torvalds@linux-foundation.org>
To: akpm@linux-foundation.org
Cc: linux-mm@kvack.org, npiggin@suse.de, randy.dunlap@oracle.com
Subject: Re: [patch 2/8] mm: merge populate and nopage into fault (fixes nonlinear)
Date: Fri, 18 May 2007 08:11:35 -0700 (PDT) [thread overview]
Message-ID: <alpine.LFD.0.98.0705180758450.3890@woody.linux-foundation.org> (raw)
In-Reply-To: <200705180737.l4I7b5aR010752@shell0.pdx.osdl.net>
On Fri, 18 May 2007, akpm@linux-foundation.org wrote:
>
> Nonlinear mappings are (AFAIKS) simply a virtual memory concept that encodes
> the virtual address -> file offset differently from linear mappings.
I'm not going to merge this one.
First off, I don't see the point of renaming "nopage" to "fault". If you
are looking for compiler warnings, you might as well just change the
prototype and be done with it. The new name is not even descriptive, since
it's all about nopage, and not about any other kind of faults.
[ Side note: why is "address" there in the fault data? It would seem that
anybody that uses it is by definition buggy, so it shouldn't be there if
we're fixing up the interfaces. ]
Also, the commentary says that you're planning on replacing "nopfn" too,
which means that returning a "struct page *" is wrong. So the patch is
introducing a new interface that is already known to be broken.
Here's a suggestion:
- make "nopage()" return "int" (the status code). Move the "struct page"
pointer into the data area, and add a "pte_t" entry there too, so that
the callee can now decide to fill in one or the other (or neither, if
it returns an error).
- "struct fault_data" is a stupid name. Of *course* it is data: it's a
struct. It can't be code. But it's not even about faults. It's about
missing pages.
So call it something else. Maybe just "struct nopage". Or, "struct
vm_fault" at least, so that it's at least not about *random* faults.
- drop "address" from "struct fault_data". Even if some user were to have
some reason to use it (doubtful), it should be called somethign long
and cumbersome, so that you don't use it by mistake, not realizing that
you should use the page index instead.
- and keep calling it "nopage".
But regardless, it's *way* too late for introducing things like this that
don't even fix a bug after -rc1.
Linus
--
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-mm.org/ .
Don't email: <a href=mailto:"dont@kvack.org"> email@kvack.org </a>
next prev parent reply other threads:[~2007-05-18 15:11 UTC|newest]
Thread overview: 13+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-05-18 7:37 akpm, Nick Piggin
2007-05-18 10:24 ` Christoph Hellwig
2007-05-18 15:11 ` Linus Torvalds [this message]
2007-05-19 1:38 ` Nick Piggin
2007-05-22 15:12 ` Christoph Hellwig
2007-05-23 1:14 ` Linus Torvalds
2007-05-23 8:35 ` David Chinner
2007-05-23 9:35 ` Nick Piggin
2007-05-23 2:57 ` Nick Piggin
2007-05-23 23:37 ` Benjamin Herrenschmidt
2007-05-24 1:48 ` Nick Piggin
2007-05-24 2:06 ` Linus Torvalds
2007-05-24 2:24 ` Nick Piggin
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=alpine.LFD.0.98.0705180758450.3890@woody.linux-foundation.org \
--to=torvalds@linux-foundation.org \
--cc=akpm@linux-foundation.org \
--cc=linux-mm@kvack.org \
--cc=npiggin@suse.de \
--cc=randy.dunlap@oracle.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