* virtio is sketchy still due to some non-architecture
specific bugs. This lets us control the VM until virtio
improves
Change-Id: I2b6805b7282f8b060fae6d831c675eb2dd2f84ef
* kputs uses the string printing functions per arch
which includes logic to detect \ n and add a \ r before it on
serial devices.
* kputchar uses the individual character printing arch code
which doesn't include this check. This results in a floating
prompt on serial kernel debugger sessions:
kdebug>
kdebug> help
Prints a command...
* Since kputchar is lower level and most would expect it to print
"a single untampered character", just convert these newline calls
to use kputs which includes the \ r check serial devices use.
Change-Id: I8389899e7670859597aeddbb6f58e9b7f7942230
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5992
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
These should return EBUSY instead of EDEADLK, so move the check
for deadlock into _Wait(), where the timeout can be checked prior
to the deadlock check.
Fixes the issue introduced in hrev56698.
Change-Id: I5717dd0579a93a117c15be93ce84136a0e065829
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5989
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
* Removed the old non-utilized "Basic" and "Bus" view tabs to make the "Device details" view default and more prominent
* The tab title now shows the name of the currently selected device, and the default width of the value column has been increased to show more text by default
* Removed non-referenced/skeleton code plus made various clean-up edits as suggested by reviewers
Change-Id: I32ece29aa04e357cb4a8a0672becb754e4ccdacf
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5908
Reviewed-by: KHH <haiku@xoblite.net>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Whilst these are "may fail" in POSIX, they're easy to detect,
so fail early instead of deadlocking.
Return EDEADLK when trying to obtain a read/write lock if the
current thread already has a write lock.
Fixes part of #17971.
Change-Id: I15a67c8f56f746b988f79443b6966a05122aa6a9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5985
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Change-Id: I325a33d224e4711c71e324ac2afeae2dffc8aaeb
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5952
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
* Convert x86 direct port I/O to our standard gUART.
* sSerial is plainly EFI Serial or EFI Stdout
* gUART is plainly hardware serial now
Change-Id: I5730fbc0ce3427851e4e2d1d0aa8c55f7765e444
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5982
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
* This is actually a generic Synopsys DesignWare ABP UART
which can be found on riscv boards like the StarFive as
well as ARM. Just make generic.
Change-Id: If3c047560d66ebb8a76410c55c22e216cbf5d4e2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5978
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Reviewed-by: David Karoly <karolyd577@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Note that zstd-compressed packages cannot be installed unless the
running system can already read them, even as part of a system
update transaction. This has been possible for some months now,
but if one has an older EFI bootloader, you may need to upgrade it.
Change-Id: I9e561459477723e498a871ee5c5caad560861b79
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4663
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
* Describe parameters in "usage".
* Change -m to explicitely mute, instead of toggling mute.
* Add -t to toggle muting, -u to unmute.
* Add long version options:
--mute, --unmute, --togglemute --increase, --decrease
* Accept a step size as additional parameter to in/decrease,
without it, the step size is 3 dB.
* Print muting state when toggling or un/muting.
* Update shortcut_settings to use "setvolume -t" to toggle muting.
Change-Id: Iacad5bcf4a40a6056c85161ac45379015392420c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5976
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Reviewed-by: nephele <nep@packageloss.eu>
This is needed to fix usage of POKE_GET_PHYSICAL_ADDRESS on
x86 32 bits (with PAE).
Change-Id: Ic00185ec7fcf9b6666ad6169a752d8b8edd2b61b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5975
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Some laptops like G713QM-HX121 or FX705DY have an ACPI WMI DSL, which evaluates five arguments
for all method IDs similar to
98e865a522
but with 5 arguments:
Method (WMNB, 3, Serialized)
{
P8XH (Zero, 0x11)
CreateDWordField (Arg2, Zero, IIA0)
CreateDWordField (Arg2, 0x04, IIA1)
CreateDWordField (Arg2, 0x08, IIA2)
CreateDWordField (Arg2, 0x0C, IIA3)
CreateDWordField (Arg2, 0x10, IIA4)
Local0 = (Arg1 & 0xFFFFFFFF)
Patch to fix proposed by Reijo F from russian haiku os chat on #18189
Change-Id: I4536029600e6e9608aceafa45b36af8f0ffe35b3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5977
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Triggers are a way to trigger menu items by ressing one of the letters
in their label. Normally that letter is underlined in the menu, but in
Haiku this is disabled by default and can't be enabled due to the lack
of a Menu preference (the code is there to draw the underline, still).
The trigger for each item is either assigned manually (using SetTrigger)
or automatically by the Interface Kit (picking a reasonable letter from
the label).
Triggers can be completly disabled at the menu level, however, in Haiku
this only disables drawing the underlines, and does not actually
disable the triggers, so items can still be invoked. This does not
match what is said in the Be Book. This commit actually disables the
triggers when SetTriggerEnabled(false) is called, making the keyboard
available for other uses if needed.
Possibly affected apps from a GitHub search on "SetTriggersEnabled":
- BeCJK
- 8dock
- Some of Tracker menus with lots of items, for example X-Ray menus
Change-Id: I1efa675b018fa524953c81e2dc2d456c28d6be8e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5971
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
listdev depends, through usb-utils.h, on the script-generated usbhdr.h.
Additionally, there's no dependency on kdevice_manager.h since 2008.
Change-Id: I77d36d6b5dca48415fcb98121ecb6d372cfa85ab
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5972
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Updated so that it can build Haiku R1 Beta 4. The intention is to use this to
create repeatable builds for Rust builds. The script has been tweaked to use
the latest stable debian as base image, to include the (now-required)
libzstd-devel package, and the g++-multilib package to support building 32 bit
in a 64 bit host. It also moves to python 3.x.
Additionally, the image now supports specifying custom git tags/branches for
the buildtools and Haiku itself, so that specific hrevs or branches can be
built
Change-Id: Ia43089ff7271256fdb6603bd4400ee3b9228ea1b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5965
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
* Set it to true when the client's message loop is started.
* Prevents a Window from sending messages to the client BWindow when
the BWindow's message loop is not running.
* If a Window sends an _UPDATE_ message to its client and does not
receive the expected reply, it will later refuse to draw to the area
that was updated. This can happen in the case of a BView that is a
child of an OffscreenWindow (BBitmap::fWindow).
* Fixes#9064.
Change-Id: I8ab840852f3875cb323842d927ee1e50b0aa3511
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5967
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
* Solves some insecure permission errors with
sshd subprocesses.
* More secure I guess not letting "anyone" write to /
Change-Id: I1bb31ff0142585639369f7b3d15cf9a2d5755598
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5962
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
If the file has multiple audio or video tracks, only one is converted.
But in this case there would be memory leaks of various objects for the
other (unused) tracks. Fix this for now by allowing only the first track
of each type to be used. Ideally, MediaConverter should allow converting
all tracks or selecting which ones to keep.
Change-Id: I78c0c31648c80c7760dd68b3b4f64537ad2cee88
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5744
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
The background color under the icon in the main window and
the attribute icon editor didn't change live.
Change-Id: I5618f66c3d2f91c5d18b6ee9870a87b02bbe3a38
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5960
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
* Left list now static in width
* Right dynamic
* Fix dynamic nature of right networkinterface info pane
Change-Id: I678a3355c95ed5c4c759b5b1e3715e5e170979fd
Reviewed-on: https://review.haiku-os.org/c/haiku/+/4962
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
the type lists are hardcoded for now.
Change-Id: Iae89046ee52d3812354de619bfd9625217479c49
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5597
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
* Add a function that updates the last-modified time of a fat
vnode; call it when the driver writes, creates, deletes,
or moves a file.
* The function optionally copies the new time from the vnode to the
corresponding direntry (useful if the calling function is not
going to do that anyway).
* Add a function that updates the last-modified time of the parent
directory of a fat vnode and copies the new time to the corresponding
direntry; call it when the driver deletes a file (not needed
for creating or moving because the parent directory vnodes are
directly accessible).
* Fixes#11119.
Change-Id: Ic7c0bda55190f236e9fd31d5d140d753138f7997
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5798
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Just like the one for HTML, we have to do a bit of guessing since there
is no easy structure. We can extend it with more keyowrds or remove some
if we find some problems with other files.
Tested so far with the Be Book and Haiku user guide CSS files.
Fixes#18144.
Change-Id: If04fba18846d17ba0eb28dd0bd12787f1fe32028
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5948
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Máximo Castañeda <antiswen@yahoo.es>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
Reviewed-by: nephele <nep@packageloss.eu>
This allows us to do HTTPS more easily and removes a lot of the code.
A file is converted to C++ to allow use of these APIs.
Now Google replies to the query with… a page asking to accept cookies,
and no results at all. They are definitely not cool anymore.
Change-Id: I4bed3b1f8630b324b979d26fbb71c4f05165fbb5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5494
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
It is currently not working because Google has changed its HTML since
this was written.
I plan to switch to using https://html.duckduckgo.com instead, which
would be a lot easier to parse. However, this requires switching to
HTTPS and I don't think doing TLS in the kernel is a sane idea.
So I suggest using userlandfs instead.
Change-Id: Iaf1f27680bbf1cd98806047122cea1a208b35bf0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5493
Tested-by: Commit checker robot <no-reply+buildbot@haiku-os.org>
Reviewed-by: Adrien Destugues <pulkomandy@pulkomandy.tk>
The _Setup method can be called several times if the parameters are
changed (for example when calling SetQuality). But it always allocated a
new context without freeinthe previous one, resulting in a leak.
Part of #9458, it fixes the largest leak there (10K bytes for each loop
of the provided test) but there are other leaks left as well, some of
which apparently need an update to a newer ffmpeg version removing some
deprecated fields.
Change-Id: Iad119dbda9cff1ce023b602a1978b100a1263f7d
Reviewed-on: https://review.haiku-os.org/c/haiku/+/5953
Reviewed-by: waddlesplash <waddlesplash@gmail.com>