removing connection_struct argument from Samba3 VFS

James Peach jpeach at samba.org
Tue May 30 22:49:36 GMT 2006


On Tue, 2006-05-30 at 12:23 -0700, Jeremy Allison wrote:
> On Tue, May 30, 2006 at 11:09:22AM +1000, James Peach wrote:
> > On Mon, 2006-05-29 at 21:31 +0200, Volker Lendecke wrote:
> > > On Mon, May 29, 2006 at 12:12:49PM -0700, Jeremy Allison wrote:
> > > > Yeah I know - it's the same argument used for a stable
> > > > ABI in the Linux kernel....
> > > > 
> > > > We need to keep improving it though.
> > > 
> > > And i'm going to extend it again, this time with a reference
> > > to current_user... :-)
> > 
> > I've also got another extension pending that I might as well get
> > feedback on now ...
> > 
> > I have a patch that lets modules attach data to a files_struct. I also
> > have 2 modules that use this to maintain per-fsp information. The most
> > useful point to add per-fsp info is in SMB_VFS_OPEN, and initially I
> > have replaced the file name parameter with an fsp (and made sure that
> > the fsp_name member is always valid). Unfortunately, this approach
> > doesn't work for vfs_catia, because it needs to transform the fname
> > without modifying the fsp.
> > 
> > So I think the right way to do this is to pass both fname and fsp to
> > SMB_VFS_NEXT. Comments?
> 
> Ahem. After your last change to HEAD I'm not going to say
> yes to this :-).
> 
> Did you test the connection-removal patch before committing it ? :-) :-).

Unfortunately, I have to admit no.

> I suggest you take a look at the differences between vfs_init_default()
> and vfs_init_custom() - specifically what (doesn't) happen to the
> vfs_handles pointer in the connection struct :-) :-).
> 
> Yeah - you probably found a mis-design (ie. it never gets initialized
> in the default case) but the code you committed could never have worked :-) :-).

Hmm, I see. Yes, I'd argue that this is a bug, but it is something I
should have caught.

> It left conn->vfs_handles = 0x0 - which doesn't work too well with
> dereferencing :-) :-).

At which point anything in vfs-wrap that needs a connection_struct
bombs :(

I'll back out r15929 and r15931 and start again.

-- 
James Peach | jpeach at samba.org



More information about the samba-technical mailing list