From: "Steve French (IBM LTC)" <smfltc@us.ibm.com>
To: Trond Myklebust <trond.myklebust@fys.uio.no>
Cc: linux-fsdevel@vger.kernel.org
Subject: Re: Lookup intents
Date: Thu, 10 Jul 2003 18:45:15 -0500 [thread overview]
Message-ID: <3F0DFA8B.9E6722AD@us.ibm.com> (raw)
In-Reply-To: shs65ma0y8p.fsf@charged.uio.no
A private data field in nameidata would work but would require adding a
new parm to
open (which as you note is painful). Probably a better solution would be
for me to add
a "pending create" linked list off the struct cifsInodeInfo for that
inode. I would have to store
network file id, pid and open flags - As long as the pid & open flags
(saved at cifs_create)
are found to match later by cifs_open I can put the netfid from the
pending create entry in my file struct
(which will make my cifs_open code a lot faster since another network open
will not have to be issued to get the network fid).
This makes a couple of assumptions though - 1) that the
Trond Myklebust wrote:
> >>>>> " " == Steve French <smfltc@us.ibm.com> writes:
>
> > Any ideas on the best way with the new lookup/create intents
> > that Trond added to 2.5 recently to save away a network file
> > handle? There is no file struct to put them in at the time of
> > create, so they could either be stored in a linked list off the
> > inode or a new field could be added to the intent to store fs
> > specific info for the operation (in this case the 32 bit
> > network file handle). I noticed that the older intents patch
> > had a much bigger intents structure in the nameidata struct.
>
> I was thinking of adding in a 'private data' field into the nameidata
> (together with an associated 'destroy' method). In the end I found I
> didn't need one for NFS. Adding it in is fairly trivial though...
>
> Do you need to pass that file handle on to the struct file? If so then
> the most obvious solution would be to pass the same nameidata down as
> an argument to the open() method.
> It's a lot of work to chase down all those open() calls littered
> around the kernel, but...
>
> Cheers,
> Trond
next prev parent reply other threads:[~2003-07-10 23:35 UTC|newest]
Thread overview: 5+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-07-11 0:50 Lookup intents Steve French
2003-07-10 23:15 ` Trond Myklebust
2003-07-10 23:45 ` Steve French (IBM LTC) [this message]
2003-07-11 0:06 ` Andreas Dilger
2003-07-11 0:20 ` Trond Myklebust
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=3F0DFA8B.9E6722AD@us.ibm.com \
--to=smfltc@us.ibm.com \
--cc=linux-fsdevel@vger.kernel.org \
--cc=trond.myklebust@fys.uio.no \
/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.