Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 6 Jul 2000 23:00:03 -0700 (PDT)
From:      "Mark W. Krentel" <krentel@dreamscape.com>
To:        freebsd-bugs@FreeBSD.org
Subject:   Re: kern/19407: Panic running linux binary on ext2fs
Message-ID:  <200007070600.XAA83517@freefall.freebsd.org>

next in thread | raw e-mail | index | archive | help
The following reply was made to PR kern/19407; it has been noted by GNATS.

From: "Mark W. Krentel" <krentel@dreamscape.com>
To: freebsd-gnats-submit@FreeBSD.ORG
Cc:  
Subject: Re: kern/19407: Panic running linux binary on ext2fs
Date: Fri, 7 Jul 2000 01:53:55 -0400 (EDT)

 I've run some more experiments and I've narrowed the problem somewhat.
 
 Using the Slackware 7 live file system, I tar-copied /cdrom/live/bin
 onto ufs and ext2fs partitions.  Then I ran Slackware's ls from ufs,
 cdrom and ext2fs and listed directories on ufs, cdrom and ext2fs.
 Sometimes it worked ok, sometimes the output of ls was corrupt (too
 few files), and the pattern is quite clear.
 
                         directory listed on 
     binary on        ufs       cdrom       ext2fs
       ufs            ok       corrupt      corrupt
      cdrom           ok       corrupt      corrupt
      ext2fs          ok       corrupt      corrupt
 
 I also updated libncurses.so.5.0 and installed emacs's libexec and
 share files and repeated the above test with dired from emacs.  I got
 the same results, except that the corrupt directory listings were
 slightly different between ls and emacs.  For example, in one
 directory on ext2fs that actually has 77 files, ls reported 71 files,
 but dired listed only 29.  But they always either both worked or both
 had too few files.  And sometimes the bottom row panics, but not this
 time.
 
 For example, this is Slackware's ls (on ufs) listing a directory on
 ext2fs that actually has 89 files.
 
    % ./ls /mnt/bin
    awk    chmod         cp  gawk        keys;^  mkdir   mv     sed   touch
    bash   chown         dd  gawk-3.0.4  ln      mknod   rm     sh
    chgrp  consolechars  df  igawk       ls      mktemp  rmdir  sync
 
 And the same Linux ls listing a cdrom directory with 801 files.
 It comes up 792 files short.
 
    % ./ls /cdrom/live/usr/bin  
    00_TRANS.TBL  a2p  aafire  aainfo  aasavefont  aatest  aclocal  addr  addr2line
 
 So, apparently the Linux ls is having trouble reading non-ufs file
 systems.  And I noticed that dired was unable to do path completion.
 I typed /cdrom/li and hit tab, and emacs complained that there was no
 completion, probably because there is no /compat/linux/cdrom/li*.  But
 there is /cdrom/live/bin and dired listed it, although incorrectly.
 
 I'll take a wild guess and say that the Linuxulator opens a file or
 directory and gets an error, but it doesn't notice the error and
 proceeds blindly along.  Maybe where it chooses between lookups in
 /compat/linux or /.  But that's a wild guess.
 
 --Mark
 


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-bugs" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200007070600.XAA83517>