public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: Rogier Wolff <R.E.Wolff@BitWizard.nl>
To: Oleg Drokin <green@namesys.com>
Cc: Rogier Wolff <R.E.Wolff@BitWizard.nl>,
	Hans Reiser <reiser@namesys.com>,
	linux-kernel@vger.kernel.org, Nikita Danilov <god@namesys.com>
Subject: Re: First impressions of reiserfs4
Date: Mon, 8 Sep 2003 12:05:31 +0200	[thread overview]
Message-ID: <20030908120531.A28937@bitwizard.nl> (raw)
In-Reply-To: <20030908094825.GD10487@namesys.com>

On Mon, Sep 08, 2003 at 01:48:25PM +0400, Oleg Drokin wrote:
> Hello!
> 
> On Mon, Sep 08, 2003 at 11:33:04AM +0200, Rogier Wolff wrote:
> > > > > > There  is no installation program that will fail with: "Sorry, 
> > > > > > you only have 100 million inodes free, this program will need
> > > > > > 132 million after installation", and it allows me a quick way 
> > > > > > of counting the number of actual files on the disk.... 
> > > > > You cannot. statfs(2) only exports "Total number of inodes on disk" and
> > > > > "number of free inodes on disk" values for fs. df substracts one from another one
> > > > > to get "number of inodes in use".
> > > > So, you report "oids_in_use + 100M" as total and "100M" as free inodes 
> > > > on disk. Voila!
> > > Yes, we thought about that too. Need to be careful to not overflow
> > > "long int".  
> > > And idea of filesystem with variable amount of inodes over time
> > > sounds confusing to me, too.  ]
> > SO? That's actually the case. So it's confusing. So you're confusing
> > people even more by telling nothing. Great. 
> 
> Well, but statfs(2) does not return an "inodes in use" value, that's it.
> 
> > #define LARGE_NUMBER 100000
> > out->total_inodes = fs->oids_in_use + LARGE_NUMBER; 
> > if (out->total_inodes < fs->oids_in_use) 
> >    out -> total_inods = MAXINT;
> > out -> free_inodes = LARGE_NUMBER; 
> > Three lines of code fixes that. 
> 
> Yes, and you get complete crap once you hit the overflow condition?

No. Not complete crap. It's a thirty two bit integer. What do you expect
when you hit the "limit"?

What will ext2 report when you have 4G inodes in use?

Just capping is the best way. 

And as Reiserfs has the option of still storing (at least)
LARGE_NUMBER more files it can simply report that as well. 

Anyway, I happen to (also) work for a company called
"harddisk-recovery.nl". We get to see varying types of uses for
harddisk and their contents. So far we've had two clients with more
than half a million files. One had 3.6 and the other had 4.7 million
files. Trust me, those are extreme. Oh, and we have on the order of 10
million files ourselves (but notquite that many inodes!). We're
extreme.

The tendency is that when disks get larger, so do the files. The
number of files grows much slower than the number of bytes. 

So a factor of 1000 will last us some 40 years instead of the 20 that
Mr Moore predicts. Now Alan is saying that by the time we have
512Mbyte of RAM on video cards we'll all be using 64 bit anyway. Well
I predict that he's a bit optimistic in that respect. But in 40 years,
you'll have your new 64 bit statfs. You can be certain of that.

> > > Well, if current interface does not allow to see all the stuff you want to,
> > > time to change (introduce new one) interface, anyway.
> > Fine, introduce a new interface. But report as much as you can on the
> > old interface. Remember you can read/write/seek files using the 32bit
> > interface even though the new (seek-, and stat-) interface uses 64
> > bits.
 
> You need to open a file with O_LARGEFILE first, so old binaries
> still won't work.

1) I can still work on files smaller than 2G without problems. 

2) If my shell uses O_LARGEFILE, I can redirect stdin and stdout
to large files anyway, even if the app would open without O_LARGEFILE. 

		Roger. 

-- 
** R.E.Wolff@BitWizard.nl ** http://www.BitWizard.nl/ ** +31-15-2600998 **
*-- BitWizard writes Linux device drivers for any device you may have! --*
**** "Linux is like a wigwam -  no windows, no gates, apache inside!" ****

  reply	other threads:[~2003-09-08 10:05 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2003-08-30 11:33 First impressions of reiserfs4 Erik Hensema
2003-08-30 17:06 ` Hans Reiser
2003-08-31 17:14   ` Rogier Wolff
2003-09-08  8:12     ` Oleg Drokin
2003-09-08  8:56       ` Rogier Wolff
2003-09-08  9:08         ` Oleg Drokin
2003-09-08  9:33           ` Rogier Wolff
2003-09-08  9:48             ` Oleg Drokin
2003-09-08 10:05               ` Rogier Wolff [this message]
2003-09-08 10:17                 ` Oleg Drokin
2003-09-08 12:59                   ` Herbert Poetzl
2003-09-08 22:24                   ` Mike Fedyk
2003-09-09  7:04                     ` Oleg Drokin
2003-09-09 19:10                       ` Mike Fedyk
2003-09-11 10:29                         ` Oleg Drokin
2003-09-11 17:15                           ` Reiser3/4 & Ext2/3 was: " Mike Fedyk
2003-09-11 17:27                             ` Oleg Drokin
2003-09-11 22:50                               ` Rogier Wolff
2003-09-12  1:20                                 ` Bernd Eckenfels
2003-09-12  4:48                                   ` Mike Fedyk
2003-10-01 21:06                                     ` Bernd Eckenfels
2003-10-02  6:36                                       ` Hans Reiser
2003-09-12  1:17                             ` Bernd Eckenfels
2003-09-08 20:11       ` Andreas Dilger

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=20030908120531.A28937@bitwizard.nl \
    --to=r.e.wolff@bitwizard.nl \
    --cc=god@namesys.com \
    --cc=green@namesys.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=reiser@namesys.com \
    /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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox