Opened 13 days ago

Last modified 38 hours ago

#14993 new bug

Latest 32-bit build fails to boot

Reported by: Evgen Owned by: nobody
Priority: normal Milestone: Unscheduled
Component: System/Boot Loader Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Has a Patch: no Platform: x86

Description

I have updated form hrev53021 to hrev53042 using via bootable USB. With USB hrev53042 boots normally. Main HDD (where Haiku is installed) is visible and can be mounted. When I reboot machine Haiku Boot Loader stops and brings the menu where it says: Select boot volume (Current: None) and option "Continue booting" is inaccessible. If I plug USB and try to rescan to find bootable media, it fails to do that. When I revert back to hrev53021, it boots normally. I wasn't able to find log file, but it seems that problem is with packagefs.cpp file

Attachments (6)

9.JPG (416.8 KB) - added by Evgen 13 days ago.
End of the log
IMG_1299.JPG (110.0 KB) - added by Evgen 12 days ago.
checkfs results
all_packages.txt (5.3 KB) - added by Evgen 11 days ago.
list of packages
IMG_1301.JPG (48.1 KB) - added by Evgen 11 days ago.
IMG_1304.JPG (222.8 KB) - added by Evgen 8 days ago.
Booting from HDD (hrev53062), end of the log
IMG_1307.JPG (692.2 KB) - added by Evgen 3 days ago.
checksums

Download all attachments as: .zip

Change History (29)

Changed 13 days ago by Evgen

Attachment: 9.JPG added

End of the log

comment:1 Changed 13 days ago by waddlesplash

The bootloader packagefs code has not changed in some time, so, I'm guessing your disk is actually corrupted. Could you mount it from the USB and run a checkfs?

Changed 12 days ago by Evgen

Attachment: IMG_1299.JPG added

checkfs results

comment:2 Changed 12 days ago by Evgen

Done. checkfs did not report any trouble with HDD where HAIKU lives (see attachment). I will try latest build and tell here how it goes, but again - Haiku Boot Loader fails to rescan and detect this bootable USB which I used right now

comment:3 Changed 12 days ago by Evgen

No, latest build (hrev53052) doesn't work. I wonder, what has changed after hrev53021 that broke my setup? hrev53024 already is broken for me. Can you generate an anyboot ISO 32-bit for me for hrev53022 and hrev53023, so I can install them and we'll have more accurate info where trouble comes from?

comment:4 Changed 12 days ago by waddlesplash

Can you upload a copy of the "activated-packages" file from your main HDD, please?

Changed 11 days ago by Evgen

Attachment: all_packages.txt added

list of packages

comment:5 Changed 11 days ago by Evgen

Sorry, not sure that I know how to do that. With HaikuDepot I obviously can see what packages are installed, which are marked as Active and as Available, but I cannot generate list of activated-packages. What I did then is

cd /Haiku1/system/packages (my main HDD)

ls > all_packgaes.txt (attached)

Not quite sure that it is exactly what you want me to do. If not, please give a hint

comment:6 Changed 11 days ago by diver

Please attach this file /system/packages/administrative/activated-packages.

Changed 11 days ago by Evgen

Attachment: IMG_1301.JPG added

comment:7 Changed 11 days ago by Evgen

There is no such file in this directory (neither in HDD, nor in booted USB). Screenshot attached

comment:8 Changed 9 days ago by waddlesplash

Please try moving the "administrative" directory on your HDD to somewhere else on the filesystem (e.g. ~) so that it is ignored. (Don't delete it altogether just yet.)

Changed 8 days ago by Evgen

Attachment: IMG_1304.JPG added

Booting from HDD (hrev53062), end of the log

comment:9 Changed 8 days ago by Evgen

No, it does not help. Yes, kernel complains in log that it cannot open this directory (see attachment) and Haiku Boot Loader i.s stuck Moreover (if it may help), in bootable hrev53021 this file /system/packages/administrative/activated-packages does not exist too.

comment:10 Changed 8 days ago by waddlesplash

Well, I am stumped; nothing particularly changed with the bootloader packagefs as I said. So I don't really understand what could have possibly broken here.

comment:11 Changed 8 days ago by waddlesplash

Ah wait, I just realized the last "bad data" is coming from here: http://xref.plausible.coop/source/xref/haiku/src/system/boot/loader/file_systems/packagefs/packagefs.cpp#838

So this means one of your package files is corrupt. We probably should log a message there when that happens.

comment:12 Changed 7 days ago by Evgen

Look, there is a bunch of changes made in here https://git.haiku-os.org/haiku/commit/?h=hrev53022&id=f10ebdb1f74093594a5440651ca26be231a9bd2b I wonder is it still possible to generate an ISO image with this particular hrev that I can test?

comment:13 Changed 7 days ago by waddlesplash

These changes are completely irrelevant; none affect the bootloader packagefs. If they somehow affect this, then that still is not the real problem.

Since nobody else has reported boot failures, and the final error in your log is that one of your package files can't be read (actually looking at the code more closely, it's the system package).

As you can boot off a USB stick, this further implies that your package files on the main HDD are somehow corrupt.

comment:14 Changed 7 days ago by Evgen

What package file you're talking about? I AM REPORTING BOOT FAILURE HERE! Could you please to re-read the whole ticket again

comment:15 Changed 7 days ago by waddlesplash

The main Haiku package, namely "haiku-hrev1~beta1_hrev53052-1-x86_gcc2.hpkg" from your ls. The bootloader is trying to read it, and finds that it's invalid. That's what the last error message in your picture means.

Since you can boot successfully off a USB stick, this probably means the package file on your HDD is just corrupt.

comment:16 Changed 7 days ago by Evgen

Sir, look, I do the full wipe out and reinstall with the latest hrev. To tackle the issue I even did the full reformatting the HDD and making new partition table etc., as documentation advices. All get crooked after with HDD reboot. If I revert back to hrev53021 all is shining.

comment:17 Changed 7 days ago by waddlesplash

I really don't know what to tell you; the problem is obviously not a hardware compatibility change or the like since you can boot from USB.

Can you try getting the checksum of the package file on your HDD?

Changed 3 days ago by Evgen

Attachment: IMG_1307.JPG added

checksums

comment:18 Changed 3 days ago by Evgen

This file haiku-hrev1~beta1_hrev53052-1-x86_gcc2.hpkg does not exist. Please see screenshot to pick the right one. Upper terminal shows output for bootable USB, bottom one for unbootable HDD. So, what else you suggest to do?

comment:19 Changed 3 days ago by Evgen

Let me outline things the way I see it:

  1. All hrevs are bootable via USB.
  2. All hrevs after 53021 are stumbling up on Haiku Boot Loader.
  3. File /system/packages/administrative/activated-packages you have asked to show does not exit neither on bootable USB not on HDD after fresh install in any hrev, including ones which boots normally from HDD. Do you want me to ask people at forum if it's available in their 32-bit systems?
  4. Checksums are identical, which means that if they are wrong (for particular package you have asked) and package is broken, it's broken already in nightly ISO build.

comment:20 Changed 3 days ago by waddlesplash

Since you can boot from USB just fine, I really don't know what the problem could be here. As stated before, the bootloader did not particularly change.

comment:21 Changed 2 days ago by Evgen

Yes, that's pretty strange. I'm looking through changes made in both 53022 and 53023 and do not see anything crucial. Still something is wrong. Again, can you build two ISO for me for these two revisions?

comment:22 Changed 38 hours ago by waddlesplash

I am really busy and don't particularly have time to make a full custom build and upload it right now. Can you please try and do it yourself?

comment:23 Changed 38 hours ago by waddlesplash

Actually, perhaps try this first: Move the "administrative" directory out of /system/packages, then put the *older* "haiku_loader" hpkg there, and remove the *newer* one. If it's a problem with the loader somehow, that will expose it.

Note: See TracTickets for help on using tickets.