From: David Howells <dhowells@redhat.com>
To: Nick Piggin <npiggin@suse.de>
Cc: dhowells@redhat.com, Andrew Morton <akpm@linux-foundation.org>,
linux-fsdevel@vger.kernel.org, mhalcrow@us.ibm.com,
phillip@hellewell.homeip.net, sfrench@samba.org
Subject: Re: [rfc][patch 3/5] afs: new aops
Date: Wed, 14 Nov 2007 12:18:43 +0000 [thread overview]
Message-ID: <30440.1195042723@redhat.com> (raw)
In-Reply-To: <20071114042420.GF557@wotan.suse.de>
Nick Piggin <npiggin@suse.de> wrote:
> > The problem is that the code called assumes that the struct page *
> > argument points to a single page, not an array of pages as would
> > presumably be the case if PAGE_CACHE_SIZE > PAGE_SIZE.
>
> Incorrect. Christoph's patch for example does this by using compound pages.
> Now I personally don't like the patch or see the point in PAGE_CACHE_SIZE /
> PAGE_SIZE distinction, but I'm just telling you what the convention is. There
> is no point you arguing against it, that's simply how it is.
No! You are wrong. I wrote the AFS code. I *know* it can only deal with
single pages. It has no knowledge of compound pages and does not handle page
arrays. This may be a flaw in my code, but it's there nonetheless. The
assertion is a guard against that. *That* was the point of my statement.
Perhaps I should've said 'my code' rather than 'the code'.
If Christoph has a patch to deal with that, it's either not upstream yet or it
hasn't altered AFS.
> > So: you may not change the assertion unless you also fix the lower
> > functions.
>
> I won't change the assertion, because you haven't been following said
> convention, so just changing it in one place is stupider than not changing
> it at all, but not for the reason cited.
The convention is not precisely clear. Just grep for PAGE_CACHE_SIZE in
Documentation/. It's only mentioned twice, and in neither case does it give
any information about what PAGE_CACHE_SIZE is, what it represents, or where it
applies. Therefore it's an ill-defined concept.
If you look in Documentation/filesystems/vfs.txt, you'll see that it almost
always talks about 'pages'. It only mentions 'pagecache pages' once - in the
description of write_begin(), but it's not clear whether that means anything.
However, I've now noted that I need to fix my code, so just keep the assertion
for now and I'll fix my code to handle multipage blocks.
David
next prev parent reply other threads:[~2007-11-14 12:26 UTC|newest]
Thread overview: 18+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-11-12 7:12 [rfc][patches] remove ->prepare_write Nick Piggin
2007-11-12 7:13 ` [rfc][patch 1/5] ecryptfs new aops Nick Piggin
2007-11-12 7:14 ` [rfc][patch 2/5] cifs: " Nick Piggin
2007-11-12 7:14 ` [rfc][patch 3/5] afs: " Nick Piggin
2007-11-12 15:29 ` David Howells
2007-11-13 0:15 ` Nick Piggin
2007-11-13 0:30 ` David Howells
2007-11-13 0:44 ` Nick Piggin
2007-11-13 10:56 ` David Howells
2007-11-14 4:24 ` Nick Piggin
2007-11-14 12:18 ` David Howells [this message]
2007-11-14 15:18 ` Nick Piggin
2007-11-14 15:57 ` David Howells
2007-11-14 21:32 ` Nick Piggin
2007-11-15 12:15 ` David Howells
2007-11-15 21:37 ` Nick Piggin
2007-11-12 7:20 ` [rfc][patch 4/5] rd: rewrite rd Nick Piggin
2007-11-12 7:23 ` [rfc][patch 5/5] remove prepare_write 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=30440.1195042723@redhat.com \
--to=dhowells@redhat.com \
--cc=akpm@linux-foundation.org \
--cc=linux-fsdevel@vger.kernel.org \
--cc=mhalcrow@us.ibm.com \
--cc=npiggin@suse.de \
--cc=phillip@hellewell.homeip.net \
--cc=sfrench@samba.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 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.