From: Andrea Arcangeli <andrea@suse.de>
To: Christoph Hellwig <hch@suse.de>, linux-kernel@vger.kernel.org
Subject: Re: 2.4.19pre5aa1 and splitted vm-33
Date: Sun, 31 Mar 2002 20:38:30 +0200 [thread overview]
Message-ID: <20020331203830.D1331@dualathlon.random> (raw)
In-Reply-To: <20020331164815.A1331@dualathlon.random> <20020331191059.A16769@phoenix.infradead.org>
On Sun, Mar 31, 2002 at 07:10:59PM +0100, Christoph Hellwig wrote:
> On Sun, Mar 31, 2002 at 04:48:15PM +0200, Andrea Arcangeli wrote:
> > Only in 2.4.19pre5aa1: 00_o_direct-open-check-1
> >
> > Move the check for O_DIRECT support into the open(2) syscall. Make
> > sense, also the xine folks asked for that feature to cleanup
> > some userspace. Patch from Chuck Lever.
>
> This breaks XFS O_DIRECT handling, which is not implemented through ->direct_IO.
Hmm that's a problem. BTW, is there any valid reason xfs isn't
implementing O_DIRECT via the direct_IO address space operation like the
other filesystems ext2/reiserfs/nfs? (of course I'm talking long term, I
don't pretend to change that in one day, for the short term we should
still allow xfs to use its own internal methods of doing O_DIRECT)
Fixing that should be a one liner setting a_ops->direct_IO to
ERR_PTR(-1L) within xfs. Comments?
> For the open case putting the check into generic_file_open sounds good to me,
One problem with generic_file_open is that we'd need to rely on all
lowlevel open callbacks to do the check properly if they don't support
O_DIRECT and we'd need to duplicate code, only a few fs uses
generic_file_open. Lefting it in the vfs looked cleaner, it reduces the
check to a few liner patch.
The lowlevel callback can always drop the kiovec during its own ->open
if they don't need it, even if they uses direct_IO, like nfs.
> but I have no idea on how to handle the fcntl case - which btw already allocates
> kiobufs even if XFS doesn't need them..
Chuck's patch is handling fcntl as well, do you see any problem there?
(modulo the fact the kiovec is pre-allocated even if not necessary, like
in open(2)?)
Andrea
next prev parent reply other threads:[~2002-03-31 18:38 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2002-03-31 14:48 Andrea Arcangeli
2002-03-31 18:10 ` Christoph Hellwig
2002-03-31 18:38 ` Andrea Arcangeli [this message]
2002-03-31 19:00 ` Christoph Hellwig
2002-04-01 0:04 ` Andrea Arcangeli
2002-04-06 16:07 ` Christoph Hellwig
2002-04-16 14:47 ` Andrea Arcangeli
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=20020331203830.D1331@dualathlon.random \
--to=andrea@suse.de \
--cc=hch@suse.de \
--cc=linux-kernel@vger.kernel.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
all inboxes | Powered by JetHome®