Re: inode values in file system driver

Adrian McMenamin (adrian@mcmen.demon.co.uk)
Tue, 13 May 2003 19:54:24 +0100


On Tuesday 13 May 2003 15:56, Andreas Schwab wrote:
> Nikita Danilov <Nikita@Namesys.COM> writes:
> |> Andreas Schwab writes:
> |> > Erik Mouw <J.A.K.Mouw@its.tudelft.nl> writes:
> |> > |> On Sat, May 10, 2003 at 09:18:20PM +0100, Adrian McMenamin wrote:
> |> > |> > Am I allowed to assign the value 0 to an inode in a file system
> |> > |> > driver? I seem to be having problems with a file that is being
> |> > |> > assigned this inode value (its a FAT based filesystem so the
> |> > |> > inode values are totally artificial).
> |> > |>
> |> > |> Yes, you are. However, glibc thinks that inode 0 is special and
> |> > |> won't show it.
> |> >
> |> > BS. This has nothing at all to do with glibc.
> |>
> |> from glibc-2.2.4/sysdeps/unix/readdir.c:
> |>
> |> /* Skip deleted files. */
> |> } while (dp->d_ino == 0);
> |>
> |> In other words, readdir(3) will not return dirent for inode with ino 0.
>
> I stand corrected. I was thinking of getdirentries, which does not have
> this problem. But this is traditional Unix behaviour.
>
> Andreas.

Thanks. At least I know why my driver is failing now.

Adrian

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