We set flags above the timeout check, so we need to use |= and
not lose the SHARED flag we already set.
Fixes some testcases in the POSIX testsuite, and the shared
semaphore code in Gecko/Firefox.
Except on kernel_cpp.cpp. We don't use it for most of libroot, so
we don't need it for most of runtime_loader either. The two preceding
changes were all that's necessary to fix things with builtins enabled.
Very slight performance improvement (the "run 1000 shells" benchmark
seems to decrease by about 0.4 seconds out of 16.5 or so.)
Tooling used by HaikuDepotServer relies on typing features that
exist in Python >= 3.9.
Change-Id: I926d464130a3cef331a00b9a6abbbad5edfcefda
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8326
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
* Don't use ASID-delimited flushes for kernel space. The ASID comes
from TTBR0_EL1, but kernel address space comes from TTBR1_EL1, so
this never works.
* Adjust ProcessRange to operate on unmasked VAs. This means that
the kernel space tag bits are preserved and passed into the
callback, which can then pass to them to whatever flushes are
necessary correctly.
Change-Id: If86aeea105f50fc4f294ce1c85cea5dfc938f5cf
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8324
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
* Extract clean/dirty logic into helpers that can be reused.
* Make sure helpers handle both SWDBM and HWDBM.
* Preparation for the introduction of a SWDIRTY flag in a subsequent
change.
Change-Id: I18b695b73294b9f8a1623bc2daec3f537316dd67
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8317
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Fix off-by-one issue and the init of the
default language in the case there's no
network connectivity.
Resolves #19090
Change-Id: I3d89bde16f67a8f50f4a08eead3d619a9f9d82f3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8328
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
* also set the active checkbox on edit
* part of #7930
Change-Id: Ia91e5f7295e7868647cf940aa1f281bd8dab1918
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8323
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
* Added all Tigerlake PCI IDs from Intel documentation with all possible
host bridge configurations.
* Tested on 0x9a78 with 0x9A02 host bridge.
* Fixed uppercase letters in PCI IDs to lowercase to match existing code
Change-Id: I5ac8b857b952a2daa93364d9b1c640621d680f5d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8156
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
It was disabled when adding the hypervisor CPUID leaf reading to
the bootloader, but that's not really necessary. This way, if
a hypervisor does not provide that CPUID leaf but does provide
the value in the standard CPUID or MSR, we will still read it
correctly anyway.
This reverts commit 0caf23319c.
This change is not safe because changing MAIR may invalidate
early mappings. It's also not clear if it's needed, as e.g.
FreeBSD does not use Device GRE mappings.
Change-Id: I95a904ee928281d44989ce707ed1ac59985a308d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8268
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Haiku-Format: Haiku-format Bot <no-reply+haikuformatbot@haiku-os.org>
Reviewed-by: Milek7 Milek7 <me@milek7.pl>
* Use fInitialLevel throughout
* Fix a mix-up of platform-independent and platform-dependent flags.
* Use break-before-make in Protect()
Change-Id: Idfd69727ca5c438fe89df830d5e61780c3fb6a36
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8258
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: Milek7 Milek7 <me@milek7.pl>
EntryCacheEntry was padded out to 40 bytes, so this doesn't increase
its size (on 64-bit platforms).
Also increase entriesSize to actually be a power of 2.
This saves us a string comparison when the hashes don't match.
It saved around ~1400 such string comparisons during a boot, and then
rebuilding HaikuDepot, it saved around ~10,000 (both numbers after
factoring in the hashes that compared equal but the directory
values differed, as we skip the string comparisons in that case too.)
Time to compile HaikuDepot seems slightly improved, on average.
If system RAM is very low, avoid potentially long waiting for entry
cache to be populated. If entry couldn't be cached, nothing serious
is going to happen.
Signed-off-by: Augustin Cavalier <waddlesplash@gmail.com>