Opened 9 years ago

Closed 9 years ago

Last modified 9 years ago

#7607 closed defect (fixed)

OpenFirmware jffs2 hang on boot

Reported by: dsd Owned by: wmb@…
Priority: normal Milestone: 8.2.0 (was Update.2)
Component: ofw - open firmware Version:
Keywords: q2e11:- Cc: dsaxena
Blocked By: Blocking:
Deployments affected: Action Needed: never set
Verified: no


I upgraded my unsecured system (through copy-nand) from update1-703 to joyride-2181. When running "boot" it reflashed the firmware to q2e11 and then booted fine. I installed some activities, shut down, packed it up and went home.

When I got home I tried to boot it and it just hangs with no output. If I hit esc and run "boot" manually it also hangs, with no output.

Using the debugger I tracked this down to a seemingly infinite loop in scan-occupied inside the jffs2 driver.

This may be a regression in q2e11, or maybe something funky happened during shutdown or on the journey home, I'm not sure. Here's the disk image which should allow you to reproduce:

If helpful, I can wire up a serial console and provide you ssh access to a connected box so that you can diagnose on the affected system.

Change History (4)

comment:1 Changed 9 years ago by dsaxena

  • Cc dsaxena added

comment:2 Changed 9 years ago by wmb@…

  • Resolution set to fixed
  • Status changed from new to closed

The NAND image cited above contains a partially-written erase block. A JFFS2 dirent node spans a page boundary where the second page is all ff's, as if the power were turned off in the middle of a write sequence.

There was a bug in the OFW JFFS2 code that caused an infinite loop in that case.

Fixed by svn 858. The fix will appear in q2e12.

That checkin also adds a new OFW command "debug-jffs2" that will turn on warnings about bad nodes:

ok debug-jffs2 dir nand:\

comment:3 Changed 9 years ago by erikos

Had the same issue. It occurred to me after a freeze when showing a pippy example. I did a power cycle to reboot. Flashing this firmware did let me boot fine again

comment:4 Changed 9 years ago by Ivo

I had the same problem. Thank God it's fixed: my laptop boots again!

Note: See TracTickets for help on using tickets.