All of lore.kernel.org
 help / color / mirror / Atom feed
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


  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.