Re: [Ext2-devel] [PATCH 2/2] ext2/3: Support2^32-1blocks(e2fsprogs)

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

 



On Mon, Mar 27, 2006 at 01:10:49PM -0800, Andrew Morton wrote:
> Mingming Cao <[email protected]> wrote:
> >
> > I am wondering if we have (or plan to have) "long long " type of percpu
> >  counters?  Andrew, Kiran, do you know?  
> > 
> >  It seems right now the percpu counters are used mostly by ext2/3 for
> >  filesystem free blocks accounting. Right now the counter is "long" type,
> >  which is not enough if we want to extend the filesystem limit from 2**31
> >  to 2**32 on 32 bit machine.
> > 
> >  The patch from Takashi copies the whole percpu_count.h  and create a new
> >  percpu_llcounter.h to support longlong type percpu counters. I am
> >  wondering is there any better way for this?
> > 
> 
> I can't immediately think of anything smarter.
> 
> One could of course implement a 64-bit percpu counter by simply
> concatenating two 32-bit counters.  That would be a little less efficient,
> but would introduce less source code and would mean that we don't need to
> keep two different implemetations in sync.  But one would need to do a bit
> of implementation, see how bad it looks.

Since long long is 64 bits on both 32bit and 64 bit arches, we can just
change percpu_counter type to long long (or s64) and just have one
implementation of percpu_counter?  
But reads and writes on 64 bit counters may not be atomic on all 32 bit arches.
So the implementation might have to be reviewed for that.

Thanks,
Kiran
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux