History log of /haiku/src/system/boot/loader/package_support.cpp
Revision Date Author Comments
# fce7f3a7 09-Dec-2020 X512 <danger_mail@list.ru>

integrate AutoDeleter's into pointers

Change-Id: I6c3925a7aec4d0647c76c2a03aad7b08985d7166
Reviewed-on: https://review.haiku-os.org/c/haiku/+/3490
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 6711cd9e 30-Dec-2020 PulkoMandy <pulkomandy@pulkomandy.tk>

bootloader: reduce stack usage

On Sparc Openboot, we get allocated a stack of only 8 kilobytes, and
each called function costs at least 176 bytes for the stack frame.

This means we need to be more careful than usual about stack usage. Move
some large-ish allocations off the stack by either making them static,
or allocated dynamically.

Add a compiler flag to error on functions which use too much stack. The
threshold is at 1023 bytes, because that's what allowed me to find the
two functions that were causing a stack overflow (open_from and
_ParseActivatedPackagesFile)

Change-Id: Ia0d13a9247e1a3fff4ce654bdffd6edb16e7cbc7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2371
Reviewed-by: waddlesplash <waddlesplash@gmail.com>


# 006add31 23-Dec-2019 Augustin Cavalier <waddlesplash@gmail.com>

boot_loader: Fix initializing old package volume states.

In hrev53370, leavengood refactored this function out of
PackageVolumeInfo::SetTo(). Inside that function, there
is a "state" variable which is initialized to the first,
default state, which is always the head state.

Refactoring it out of there and changing this to NULL meant
that GetNext would always return a NULL state, so the
states would never be initialized, and booting from an
old state would thus not be possible.

Fixes #15380.


# 7893e124 13-Aug-2019 Ryan Leavengood <leavengood@gmail.com>

boot_loader: Init state to NULL before iterating

Should fix a gcc2 build error, plus is more correct.

It is a crime that C and C++ do not initialize things. Go and Rust fixed that.


# c1c99c5c 11-Aug-2019 Ryan Leavengood <leavengood@gmail.com>

boot_loader: Only load old package states in the boot menu

Normal boots should not be slowed down by old package states.

Should fix #12498.

Later I will fix the package kit to merge old states so they don't build up
indefinitely.

Change-Id: I6830dd4ed65a3a659c0a68590238be0dcefff451
Reviewed-on: https://review.haiku-os.org/c/haiku/+/1703
Reviewed-by: Jessica Hamilton <jessica.l.hamilton@gmail.com>


# deeaee6f 14-Aug-2018 Humdinger <humdingerb@gmail.com>

Boot options: add help text to state selection

To indicate this is a menu you can enter to select a previous
state to boot. Also rename "Latest version" to "Latest state" as
that is more correct.
Thanks waddlesplash for pointers.

Fixes #14362


# 5c0f8450 14-Apr-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

Boot loader: Add support for choosing an old packages state

For potential boot volumes with older packages states the respective
item in the boot volume menu now has a sub menu for selecting a state.
The boot loader functionality for this feature is complete -- i.e. the
respective kernel is loaded and the name of the old state is added to
the kernel args -- but kernel packagefs and package daemon support is
still missing.


# 5c0f8450acfa799aaf13a0e86ba8941212a6bfb3 14-Apr-2014 Ingo Weinhold <ingo_weinhold@gmx.de>

Boot loader: Add support for choosing an old packages state

For potential boot volumes with older packages states the respective
item in the boot volume menu now has a sub menu for selecting a state.
The boot loader functionality for this feature is complete -- i.e. the
respective kernel is loaded and the name of the old state is added to
the kernel args -- but kernel packagefs and package daemon support is
still missing.