Commit Graph

63177 Commits

Author SHA1 Message Date
Augustin Cavalier
dab646ac9a nvme_disk & virtio_block: Remove unneeded log2.
It was used, but then the result discarded. We have a log2()
in kernel/util/BitUtils.h anyway, so if it is really needed,
that should be used instead.
2021-10-27 12:40:31 -04:00
Augustin Cavalier
6bef34f853 launch/user: Put env in both target desktop and service app_server.
It seems launch_daemon does not actually support root "env"s,
and adding support for that does not appear to be trivial.
2021-10-27 12:33:51 -04:00
Adrien Destugues
4492fde7bf intel_extreme: reduce use of display_mode where display_timing is enough
In most cases we don't need to use the complete display_mode struct and
we just need the timings. This will avoid future confusion between the
virtual width/height and the actual display timings, if we implement
scrolling someday.

Change-Id: I6c4430b84130b956a47ea0a01afb0843f5a34fd2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4665
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-10-27 14:33:46 +00:00
Adrien Destugues
0cabd8891f intel_extreme: fix regression introduced in hrev55419.
Apparently my comment about the width and height being swapped in this
register was not visible enough, so I make it a bit more obvious by
adding some uppercase.

Change-Id: I27621032d071ed09f82aa109f37482178351db04
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4664
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-10-27 14:33:46 +00:00
David Karoly
a1f7cb5d4e ldscripts/arm/kernel: discard exidx sections
Change-Id: I88523e1efc3968828df588c2fdad8d7eb1a531c7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4662
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
2021-10-27 07:25:45 +00:00
Andrew Lindesay
0d4fa3e526 HaikuDepot: Show Publish Date
Add a column to the table to show the publish
date.  Also add text on the featured packages
view to show the publish date.  Supports
sorting.

Fixes #13006

Change-Id: I19d9bc5bf7f44b5673c2ade5d00de8fdadbe1b06
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4649
Reviewed-by: humdinger <humdingerb@gmail.com>
Reviewed-by: Andrew Lindesay <apl@lindesay.co.nz>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
2021-10-27 05:27:53 +00:00
Alexander von Gluck IV
491592688d system/boot: Fix build of bootloader without zstd build-package
Change-Id: I39b52def6892f77f5b3b1c088b01459b689c80e2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4648
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
2021-10-26 22:13:45 +00:00
Augustin Cavalier
1d5de1d840 Remove firmware licenses that now are in their own packages. 2021-10-26 17:54:58 -04:00
Augustin Cavalier
4acd233580 Package Kit: Scale compression levels to the method's levels.
Zlib has (for now?) 1-9 as its compression levels, but Zstd has
1-22, so we need to scale and round based on *_COMPRESSION_LEVEL_BEST.
2021-10-26 16:51:09 -04:00
Augustin Cavalier
a89813083e ZstdCompressionAlgorithm: 22 is now "best" in libzstd.
Ideally we would use ZSTD_MAX_CLEVEL, but we cannot use zstd headers
in here...
2021-10-26 16:47:50 -04:00
Augustin Cavalier
fd276f19fe package command: -z now takes an argument to specify the compression method.
The upcoming change to use zstd by default will make the -z no-argument
variant obsolete, so instead we need to support passing "zstd" or "zlib"
to actually indicate the compression method we want to use.
2021-10-26 16:24:22 -04:00
Augustin Cavalier
fd7438acec package command: Remove duplicate code in recompress. 2021-10-26 16:24:22 -04:00
Augustin Cavalier
04a7f3ede0 package command: De-wrap help lines.
Now that the coding style limit is 100. Slight tweaks as well.
2021-10-26 16:24:22 -04:00
Augustin Cavalier
3d4e153c9f libbe_build: Compile with support for Zstd.
This way, the build package commands will be able to deal with
and create Zstd-compressed packages.
2021-10-26 16:24:22 -04:00
Augustin Cavalier
0cf34918bf Remove ZSTD_ENABLED checks from the Package Kit.
BZstdCompressionAlgorithm already has these #ifdefs and will
return error codes appropriately if built without libzstd,
so we do not need to check again inside the Package Kit.

This should not break the no-zstd build (well, it is broken
somewhat right now anyway, but this will not break it further),
and it simplifies logic somewhat.
2021-10-26 16:24:22 -04:00
Augustin Cavalier
a04b2f4c5e Launch app_server in user context.
This way, we get the user's environment variables, and so should
input_server, which is started by app_server.

This should, after 6 years, fix #12534. We may need to revisit this
when/if we add multiuser support, but that is a problem for another day.

Change-Id: I04698306bc68a585acd232e9f9d29c50bc170a1f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4506
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-10-26 19:20:53 +00:00
Augustin Cavalier
b69c9008dd nvme_disk: Re-enable MSI-X.
It now works in QEMU, probably following the addition of 64-bit
address support in hrev55542.
2021-10-26 14:17:43 -04:00
Augustin Cavalier
9710cdc6b3 nvme_disk: Move interrupt initialization to before qpair allocation.
At least QEMU's emulated controller seems to expect this.
2021-10-26 14:14:45 -04:00
Jessica Hamilton
69958ca2ef hda: subsystem is from the codec, not the PCI bus.
* Refactors so that we look for a codec subsystem ID, then the
  Audio Function Group subsystem ID if not found.
* Moves the order around a bit so that the quirks are set early
  enough.
* Also adds a quirk for MacBookAir 6,2, allows speakers to work.

Change-Id: I4c64f96936a82a5d7187d86d8558f28516fd4ecb
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4654
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
2021-10-24 09:58:55 +00:00
David Karoly
b594d76c81 boot/efi: use ROUNDUP for aligning the page directory
Change-Id: Ib52ca83cbc390f2e450c174741ed24e745fb7eab
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4655
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2021-10-24 09:05:47 +00:00
David Karoly
5ac73692f2 boot/efi: better logging for system memory map
Change-Id: Ie35061f5c80f8b82071bbbf6fdaa006aca50a8a2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4651
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
2021-10-24 09:04:55 +00:00
David Karoly
286a9c991c kernel/arch/arm/paging: ARMVMTranslationMap32Bit::Query shall return page start address
Change-Id: Ibe95f8808bc052c31765f055bef1daf0aa1eac6d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4652
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2021-10-24 09:04:29 +00:00
David Karoly
b05be77d78 kernel/scheduler: fix compile error when TRACE is enabled
Change-Id: I95da18c9faa343fb3a44c627c1227a778701ebbe
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4653
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2021-10-24 09:04:19 +00:00
Augustin Cavalier
7da3d33132 ipro100: Check interrupt status in HAIKU_CHECK_DISABLE_INTERRUPTS.
This should make ipro100 behave better on shared IRQ lines.

Should fix #17349.
2021-10-23 13:51:06 -04:00
Augustin Cavalier
91337da63b freebsd_network: Avoid using kernel thread structures in priv_check.
We can just use geteuid() here which does the exact same thing.
May help with testing #17337.
2021-10-23 13:16:36 -04:00
Rudolf Cornelissen
994794f2d4 intel extreme: skylake sets color, base and address, no resolution and refresh yet 2021-10-23 17:13:43 +00:00
Autocomitter
393c7b8b5c Update translations from Pootle 2021-10-23 08:45:35 +00:00
Augustin Cavalier
778706215d app_server: Drop gfxcpy and implement some TODOs about checking for graphics memory.
We still do not know if the accelerant buffers are graphics memory or not,
but in my testing (on the VESA driver), the only time I could get _CopyRect
to be called was where the buffer was in fact not graphics memory.
So that should provide a performance improvement there.

On the other end of things, this should resolve unaligned video memory
access problems on RISCV, and potentially other platforms, as gfxcpy32
did not attempt to align pointers; it should also improve performance
as memcpy will usually be faster than our custom gfxcpy here.

Most of this code has not been touched since 2006 or so.

Change-Id: I40b0345c5d47f2b45acafb14f03fd3a24d2042a8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4315
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
2021-10-23 00:40:53 +00:00
Augustin Cavalier
b419a79f8f app_server: Remove IsDoubleBuffered() default implementation from HWInterface.
It just causes confusion and is wrong in the case where double buffering
status changed during the object lifetime.

Change-Id: Ia1a9ae3f5a1b1b7d521b79c7d1c7be92cef60a06
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4633
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-10-22 21:05:35 +00:00
Augustin Cavalier
f638102196 Remove conditions for HOST_PLATFORM=msys.
It never really worked beyond the most basic of commands
and required a lot of hacks, and these days WSL should be used instead.
2021-10-22 17:03:44 -04:00
Augustin Cavalier
b6a6890f4c termcap: Remove.
It was removed from the build in the last commit.
2021-10-22 16:43:14 -04:00
Augustin Cavalier
87bdb69ccf Remove termcap from the build.
libtermcap was deprecated in favor of terminfo in 2013; the library was
removed then, and this file was only left because not all optional
packages had yet been rebuilt against ncurses. Well, that has now
long been completed, and indeed all applications continue to function
even after removing /etc/termcap.

In case any legacy applications that I have missed still do need it,
it should be provided by HaikuPorts and not Haiku itself.
2021-10-22 16:43:01 -04:00
PulkoMandy
d1ecc0955f sparc docs: write down some more useful things
These are better here than in my bash history...

Change-Id: Iab8940f4efed950e26a8bad29cb8954464270e8f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4645
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-10-22 20:23:01 +00:00
PulkoMandy
6711cd9e9e 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>
2021-10-22 20:23:01 +00:00
PulkoMandy
a9fed72b4b sparc: add arch-specific libroot stubs
These are helper functions for long double math. On sparc there is no
hardware implementation of long double instructions, and the ABI defines
these methods which must be part of the C library. GCC calls the methods
directly in its generated code.

They were already added to libroot, but they also need to be in the
stub, which is used during bootstrapping to link mpfr (during the
target gcc build).

I put these in a separate file because I assume the generation of the
stubs file from the real libroot.so will usually not be run on sparc,
and will not include these symbols otherwise. This may become a problem
if libroot for different architectures starts to diverge further.

Change-Id: I6070394c685fee35b3dc12a507f5a6271571b993
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4636
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-10-22 20:23:01 +00:00
Augustin Cavalier
e8ab10abd6 Fix return type of video_text_console_init. 2021-10-22 15:10:53 -04:00
Augustin Cavalier
5f682fd08d EFI: Add (disabled, partially broken) support for video_text_console usage.
See inline comments.

Change-Id: I7eaa5888b63aecaa582fe00f796b2f3f3c8be203
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4644
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-10-22 19:02:06 +00:00
Augustin Cavalier
4c73f34840 bootloader video_text_console: Refactor into the new ConsoleNode model.
Change-Id: I3dc59cbdfd28f1ada49b02e42d50ec2b52c40227
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4643
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-10-22 19:02:06 +00:00
Augustin Cavalier
5e43707307 bootloader: Refactor console functions into the VFS ConsoleNode class.
This way it becomes much easier to write multiple console implementations
in one bootloader.

Tested for bios_ia32 and efi.

Change-Id: I67134f5c3de109b15d46898864ba7f51c6592afc
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4642
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-10-22 19:02:06 +00:00
John Scipione
f6f9c751d6 Remove trailing whitespace from hid_shared
Introduced in https://review.haiku-os.org/c/haiku/+/4403

366e9a62e9 => hrev55413

This is a whitespace only change, no functional changes.
2021-10-22 11:12:24 -04:00
Augustin Cavalier
0d66d8d486 boot_loader: Add a video_text_console for potential use by bootloaders.
This uses the frame buffer console that KDL uses. It needs some work,
though, as the frame_buffer_console colors system is not quite compatible.
2021-10-22 10:43:27 -04:00
Augustin Cavalier
c80ba94c64 boot/arch: Remove kernel_stubs.cpp and frame_buffer_console.
They were never used anywhere.
2021-10-22 10:43:27 -04:00
PulkoMandy
2adb6e18db sparc: update haikuportscross to current state of repository
Most importantly include zstd, which is a new requirement for the
bootstrap build.

Change-Id: I981401e7d70fb7e1befaf7fc37f2fddc6d7e327d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4635
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-10-22 13:59:19 +00:00
PulkoMandy
60533c0e15 remove libicutu from icu build feature
This is an internal ICU library, used by their command line tools only.
libbe (or anything in Haiku sources) does not need to link to it.

Change-Id: Id322572c6833c225d5501a7e9520dd3dc82934f8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4634
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-10-22 13:59:19 +00:00
David Karoly
375c212924 kernel/arch/arm/paging: fix a few typos
Change-Id: Ia6c51f1d24f5a365564f127199df898c5531f274
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4640
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2021-10-22 12:02:27 +00:00
David Karoly
09e797786e virtio-mmio: fix compile error when TRACE is enabled
Change-Id: I8ac0497f8aa26e9e2b843c34771b83ca9baaa6d5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4641
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2021-10-22 12:01:43 +00:00
David Karoly
4d81ddab4f boot/efi: initialize mmu for arm
Change-Id: I918a459dfb4e5d0864ae4c8b806df059248d43b6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4630
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2021-10-22 11:22:10 +00:00
David Karoly
d88e69ae11 boot/efi: generate page tables for arm
Change-Id: I975048d7721efc0557d60d27ddf5bd5296aa9e51
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4632
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2021-10-22 11:21:02 +00:00
David Karoly
e6520f9064 boot/efi: generate memory map for arm
Change-Id: I02a7f8c27187f6375dd4deeeaf3587dad1e3349c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4631
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2021-10-22 08:42:04 +00:00
John Scipione
02ad92185d Network: Sort network menu items w/o deleting
* Delete dropped out networks.
* Add in newly discovered networks.
* Add static (aka class) compare method to WirelessNetworkMenuItem
  that is used to sort items by signal strength descending.

Add == operator to wireless_network struct to determine if
existing items have a known network attached.

Remove the non-network items from the menu, save them, sort
network menu items, then add non-network items back into the
menu.

Update NetworkStatus preflet to use same compare method as Network
preflet. signal_strength_compare function had a bool return value
instead of int which worked to sort items the first time, but does
not work on successive compares.

By not deleting and recreating the menu items each Pulse(),
the Network preflet no longer crashes on update. The menu flashes
on update still but doesn't crash.

Fixes #12024

Change-Id: Ie5b22cea4e66350b9c5df8e3b8de266ede50ad6d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4243
Reviewed-by: John Scipione <jscipione@gmail.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>
2021-10-22 08:12:05 +00:00