mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* Linux Ext2 Inode question
@ 2002-02-06  4:02 Jim Lu
  2002-02-06  7:01 ` Andreas Dilger
  0 siblings, 1 reply; 2+ messages in thread
From: Jim Lu @ 2002-02-06  4:02 UTC (permalink / raw)
  To: linux-kernel

(Please CC me on replies)

I have a question regarding the inode number on the EXT2 filesystem. If I 
get a Inode number, is there a way I can calculate the block address (with 
respect to the filesystem) on this inode base on the inode number?
I know for UFS, you can calculate the address of the inode base on the inode 
number.

Also, I remember reading somewhere that not all the EXT2 block groups have 
superblock information. So would the beginning of those block group look 
like this " group descriptor | block bitmap | inode bitmap | inode table | 
data " ? And, could someone please tell me which block groups have 
superblock info.

Thank you for your time.

Jim

_________________________________________________________________
Get your FREE download of MSN Explorer at http://explorer.msn.com/intl.asp.


^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: Linux Ext2 Inode question
  2002-02-06  4:02 Linux Ext2 Inode question Jim Lu
@ 2002-02-06  7:01 ` Andreas Dilger
  0 siblings, 0 replies; 2+ messages in thread
From: Andreas Dilger @ 2002-02-06  7:01 UTC (permalink / raw)
  To: Jim Lu; +Cc: linux-kernel

On Feb 05, 2002  20:02 -0800, Jim Lu wrote:
> I have a question regarding the inode number on the EXT2 filesystem. If I 
> get a Inode number, is there a way I can calculate the block address (with 
> respect to the filesystem) on this inode base on the inode number?

Yes.  This is done in several places in the ext2 kernel sources, like
ext2_read_inode().  Note that it is not a simple calculation, because
the position of the inode table can (although generally does not) vary
on a per-group basis.  On a cold cache, you would need to do 2 reads
to calculate the inode block location (superblock + group descriptor).

> Also, I remember reading somewhere that not all the EXT2 block groups have 
> superblock information. So would the beginning of those block group look 
> like this " group descriptor | block bitmap | inode bitmap | inode table | 
> data " ? And, could someone please tell me which block groups have 
> superblock info.

On a "sparse superblock" filesystem, superblock and group descriptor
backups are kept in groups 0 and those numbered 3^n, 5^n, 7^n, where
n is an integer.  So, 0, 1, 3, 5, 7, 9, 15, 25, 27.

Groups that do not have backups generally will contain the block bitmap,
inode bitmap, inode table, and data.  However, the actual position will
be given in the group descriptor table.

Cheers, Andreas
--
Andreas Dilger
http://sourceforge.net/projects/ext2resize/
http://www-mddsp.enel.ucalgary.ca/People/adilger/


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2002-02-06  7:01 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-02-06  4:02 Linux Ext2 Inode question Jim Lu
2002-02-06  7:01 ` Andreas Dilger

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

all inboxes | Powered by JetHome®