Re: [patch 23/35] fs: icache use per-CPU lists and locks for sb inode lists

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Oct 19, 2010 at 05:33:54PM +0200, Miklos Szeredi wrote:
> On Tue, 19 Oct 2010, npiggin@xxxxxxxx wrote:
> > +/**
> > + * inode_sb_list_add - add an inode to the sb's file list
> > + * @inode: inode to add
> > + * @sb: sb to add it to
> > + *
> > + * Use this function to associate an with the superblock it belongs to.
> 
>                                        ^^^inode

Yes, thanks.


> > @@ -1270,6 +1316,7 @@
> >  			continue;
> >  		if (!spin_trylock(&old->i_lock)) {
> >  			spin_unlock_bucket(b);
> > +			cpu_relax();
> 
> Doesn't this logically belong to a previous patch?

Yes, I had a couple of them leak out. I'll try to fix them
up... most trylocks get resolved with RCU later.

 
> > Index: linux-2.6/fs/super.c
> > ===================================================================
> > --- linux-2.6.orig/fs/super.c	2010-10-19 14:17:17.000000000 +1100
> > +++ linux-2.6/fs/super.c	2010-10-19 14:18:59.000000000 +1100
> > @@ -67,12 +67,25 @@
> >  			for_each_possible_cpu(i)
> >  				INIT_LIST_HEAD(per_cpu_ptr(s->s_files, i));
> >  		}
> > +		s->s_inodes = alloc_percpu(struct list_head);
> > +		if (!s->s_inodes) {
> > +			free_percpu(s->s_files);
> > +			security_sb_free(s);
> > +			kfree(s);
> > +			s = NULL;
> > +			goto out;
> 
> Factor out error cleanups to separate out labels?

OK... probably makes sense at this point.

--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux