sheevaplug boot from nandfs hangs

Ian Lepore freebsd at
Thu Dec 13 17:31:47 UTC 2012

On Thu, 2012-12-13 at 02:06 +0100, Ronald Klop wrote:
> Hello,
> I succeeded in installing and booting my kernel (SHEEVAPLUG 10-current  
>  from 22 nov.) from nandfs. I followed all the advise at  
> But the rootfs will not mount/start.
> The end of the bootinfo is this:
> cryptosoft0: <software crypto>
> Timecounters tick every 1.000 msec
> ipfw2 initialized, divert loadable, nat loadable, default to accept,  
> logging disabled
> usbus0: 480Mbps High Speed USB v2.0
> ugen0.1: <Marvell> at usbus0
> uhub0: <Marvell EHCI root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus0
> uhub0: 1 port with 1 removable, self powered
> Root mount waiting for: usbus0
> ugen0.2: <USB 2.0> at usbus0
> umass0: <USB 2.0 USB Flash Drive, class 0/0, rev 2.00/11.00, addr 2> on  
> usbus0
> umass0:  SCSI over Bulk-Only; quirks = 0x4000
> umass0:0:0:-1: Attached to scbus0
> Trying to mount root from nandfs:/dev/gnand0s.root []...
> WARNING: NANDFS is considered to be a highly experimental feature in  
> FreeBSD.
> (probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 0 0 0 24 0
> (probe0:umass-sim0:0:0:0): CAM status: CCB request completed with an error
> (probe0:umass-sim0:0:0:0): Retrying command
> da0 at umass-sim0 bus 0 scbus0 target 0 lun 0
> da0: <USB 2.0 USB Flash Drive 1100> Removable Direct Access SCSI-0 device
> da0: 40.000MB/s transfers
> da0: 3894MB (7975296 512 byte sectors: 255H 63S/T 496C)
> The kernel is responsive because if I remove or insert the usb stick it  
> displays messages about it. (Not shown above)
> I'm connected via serial. What could be wrong? What information can I give  
> more?
> I installed /dev/gnand0s.root by tarring the content of / on my usb stick  
> to the mounted /dev/gnand0s.root. That looked ok.
> Regards,
> Ronald.

FYI, you should take that WARNING: line *very* seriously at this point.
Don't keep any vital data on that filesystem unless you back it up
frequently and can afford to "drop everything and restore/recover now"
at any moment.  

I'm finding it's pretty easy to lock up or panic the system while using
nandfs, and on reboot this is what you see if you were writing to the
filesystem when it locked up:

  Trying to mount root from nandfs:/dev/gnand0s.root []...
  WARNING: NANDFS is considered to be a highly experimental feature in FreeBSD.
  Cannot find valid SuperRoot
  Mounting from nandfs:/dev/gnand0s.root failed with error 22.

This leaves me at a mountroot> prompt (at which I cannot type, but
that's a general arm bug I've been living with for years).  

The only way I know of right now to recover from this is to boot from
some other device, and reformat and restore/regenerate the nandfs

Most of the problems I've been seeing are related to writing to the
nandfs filesystem; when populated once and then mounted readonly after
that it seems pretty stable.  I've also noticed that I absolutely cannot
mount a unionfs over a readonly nandfs -- that's pretty much a g'teed
panic related to locking.  I also had trouble using nullfs and nandfs
together, but I forget the details of that.  

Enabling WITNESS shows lots of nandfs locking troubles.

-- Ian

More information about the freebsd-arm mailing list