Ticket #12678 (closed defect: fixed)

Opened 17 months ago

Last modified 16 months ago

q7b26 does not boot with an NTFS filesystem on USB drive attached

Reported by: Quozl Owned by: Quozl
Priority: normal Milestone: 13.2.0
Component: ofw - open firmware Version: Development firmware
Keywords: Cc: dsd
Action Needed: no action Verified: no
Deployments affected: Blocked By:
Blocking:

Description

reproducer: prepare an NTFS filesystem on a USB drive and attach to XO-4, then power up.

observed result: ok prompt.

expected result: normal boot.

Change History

Changed 17 months ago by Quozl

detailed reproducer: using a 128 MB USB drive, erase the partition table, use gparted to create an MS-DOS partition table, use gparted to creatge an NTFS filesystem, attach to an XO-4, then power up.

CForth built 2013-05-14 23:21 from commit 1c6dcd22...
Matrix mode on
releasing
USB devices:
/usb@d4208000/hub@0,0
/usb@d4208000/hub@0,0/scsi@2,0
/usb@d4208000/hub@0,0/scsi@2,0/disk
OLPC 4C1, 1196 MHz, 2 GiB memory, 8 GB internal storage, S/N SHC247006C2
OpenFirmware  Q7B30jb   EC Firmware 0.4.06   2013-05-15 00:14:00 UTC

Type the Esc key to interrupt automatic startup
Boot device: /usb/disk:\boot\olpc.fth  Arguments: 
The attempt to load a boot image failed.
OLPC 4C1, 1196 MHz, 2 GiB memory, 8 GB internal storage, S/N SHC247006C2
OpenFirmware  Q7B30jb   EC Firmware 0.4.06   2013-05-15 00:14:02 UTC

Type 'help' for more information.

ok 
  • reproduces with repeated boot commands,
  • load-size is zero, indicating that no boot file was loaded,
  • dir u:\ yields Unimplemented package interface procedure,
  • add-tag BD int:\boot\olpc.fth is a viable workaround,

Changed 17 months ago by Quozl

  • same problem occurs with non-NTFS filesystems and an empty file u:\boot\olpc.fth

Changed 17 months ago by Quozl

  • next_action changed from never set to package
  • milestone changed from Not Triaged to 13.2.0

Further research:

  • traced to /packages/disk-label method load, which returns zero size,
  • no filesystem driver was interposed by the disk-label package,
  • there is no filesystem driver for NTFS in Open Firmware,
  • a device open for u:\boot\olpc.fth does succeed, despite the missing filesystem driver,
  • if the device open would fail instead, the next device in the boot-device order will be tried,

 svn 3657 changes the disk-label package open method to abort rather than exit when a filesystem driver identified by the partition type is not present in the build.

A tested development build is available as  q7b30jd.rom.

Changed 17 months ago by Quozl

Results of further testing. Has no effect on secure boot, since the code path is not exercised. On unsecured systems, affects XO-1.75 in the same way; dropping to ok prompt. Hangs boot on unsecured XO-1 and XO-1.5.

Changed 17 months ago by Quozl

Will not be fixed on XO-1 and XO-1.5, since this is part of support for booting from NTFS filesystems. The MBR on the device is read and executed.

Changed 17 months ago by Quozl

  • cc dsd added
  • next_action changed from package to add to build

Is in Q4D30 and Q7B31.

Changed 17 months ago by dsd

  • next_action changed from add to build to test in build

Test in 13.2.0 build 7.

Changed 16 months ago by Quozl

  • status changed from new to closed
  • next_action changed from test in build to no action
  • resolution set to fixed

Works for me.

Changed 16 months ago by Quozl

Also fixes #12696.

Note: See TracTickets for help on using tickets.