On 1/4/07, Dave Kleikamp <[EMAIL PROTECTED]> wrote:
On Thu, 2007-01-04 at 12:34 +0100, Jens Nie wrote:
> I think i found a bug in the ext3 filesystem. It deals with
> dereferencing symlinks. I have installed a fresh openSUSE 10.2 on an
> ext3 filesystem.

No, it seems to be a bug in the coreutils.

I did a little playing around with strace and I suspect that it may have
something to do with ext3 returning DT_LNK to the filldir routine (which
gets returned through getdents64).  A lot of file systems always return
DT_UNKNOWN.  Maybe ls is handling the DT_UNKNOWN case alright, but not
the DT_LNK case.  (When DT_UNKNOWN is returned, ls calls stat64() which
would identify the symlink as a directory rather than a symlink.)

I guess your analysis is right. The problem is that ls only calls
stat() on DT_UNKNOWN entries but it should call it on DT_LNK too.

> I reported this on the opensuse mailing list first. Someone there was
> kind enough to point me directly to this list.

They forgot to tell you that not every bug is a kernel bug ;)

I opened a bug in bugzilla: https://bugzilla.novell.com/show_bug.cgi?id=231916
-
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to