Commit Graph
69273 Commits
Author SHA1 Message Date
waddlesplash 3aa6bdccbd kernel_debug_config: Fix KDEBUG_LEVEL. 2026-08-10 18:27:49 +00:00
Humdinger dba385556b Installer: draw background in optional package list
Fixes #20239

Change-Id: I37c3e70f88d9463f9646da3cb6cd663167ecd546
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11492
Haiku-Format: Haiku-format Bot <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
(cherry picked from commit 50e89f9299e4b04e2514173c271f4f567ae46976)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11511
2026-08-10 18:24:14 +00:00
Augustin Cavalier a964c2cdaf kernel/vm: Move page ACCESS state up in VMCache::Delete.
Should fix #20240.
(cherry picked from commit 5e3fdaa3cc70c1c9a09d6995e585ca400451cf56)

Change-Id: I090439121e036bf3ba5cccd9bac2bbb081aa77e1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11500
Reviewed-by: waddlesplash <[email protected]>
2026-08-08 17:24:38 +00:00
Augustin Cavalier 8c1b894d60 multiuser: Use setresgid, setresuid and fix checks.
pw_gid and pw_uid aren't pointers, so checking them for 0 just
meant we didn't change the UIDs if we were something other
than root.
(cherry picked from commit acf0e80dc0fe1ae63d89211dfd28133a254a9753)

Change-Id: Ia567d61f645356bb122dd1bce99c581369f8f19f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11498
Reviewed-by: waddlesplash <[email protected]>
2026-08-08 17:13:13 +00:00
Augustin Cavalier b86ecd28ca su: Fix authentication when passwords are in the shadow file.
As they usually are.

Also delete an unused utility function.
(cherry picked from commit 8cd127ed218340c7d293f1dd94a60ab479204c92)

Change-Id: I43ad195f24c2bd26e875715ea18a63b1222d4e52
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11496
Reviewed-by: waddlesplash <[email protected]>
2026-08-08 16:58:22 +00:00
Augustin Cavalier 1f47d9a206 freebsd_wlan: Reinstate the IEEE80211_SCAN_NOJOIN flag set.
It was accidentally lost in e67600e2a4.
(cherry picked from commit 9f618d40ff38a8128d4b621d1923cb0882503474)

Change-Id: I6ba6acfb1f25825d630e700828af3f6910f23ae5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11494
Reviewed-by: waddlesplash <[email protected]>
2026-08-08 16:40:37 +00:00
John Scipione a7b8bf7b99 Tracker: Do not start edit while dragging, fixes #20176.
We have to check for dragging in Pulse(), it's too late to check
this by the time we have gotten to StartEdit().

A bit of additional cleanup including some related comments.

Change-Id: Id292d73593d12028e7368c50dac0869c4a7df94b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11439
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
Haiku-Format: Haiku-format Bot <[email protected]>
2026-08-07 22:42:35 -04:00
Augustin Cavalier d2fee32bba kernel/x86: Add locking around IO-APIC register accesses.
On SMP systems, we may call ioapic_assign_interrupt_to_cpu from
multiple CPUs at a time, at least under low-latency mode.

May fix #18588.

Change-Id: Ie76e4127b05a8abc5f411d7719997dcfff9c2ff0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11491
Reviewed-by: waddlesplash <[email protected]>
2026-08-07 21:57:59 +00:00
Augustin Cavalier 02fad68b15 kernel/util: Always clear next/prev in list_remove_link.
The C++ DoublyLinkedList does the same.

Change-Id: I22b2f0ba1dfacd6509360dfa903457fcbb80b4d6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11486
Reviewed-by: waddlesplash <[email protected]>
(cherry picked from commit 428c5b99988817ae35e93cd62e47d969ebf2985d)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11488
2026-08-07 20:27:26 +00:00
Augustin Cavalier edd8271a9c kernel/fs: Institute a "vnode undertaker".
This is a separate thread that takes care of actually freeing vnodes,
so we can avoid doing that (or doing an expensive "free unused vnodes")
from some random thread that called put_vnode.

We still (try to) free vnodes directly in unlink(), though, so that
removal writes go through.

Note that the "reenter" parameter is now load-bearing, as put()
calls that come from a filesystem are executed directly instead of
being deferred. This is necessary in the unmount case.

This should break the deadlock in #20234.

Change-Id: I458f4003b9b8014ca326d477df4782492d8db437
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11444
Reviewed-by: waddlesplash <[email protected]>
(cherry picked from commit bc46fb3e9a83dca0d684bc0d9f1518aafac945be)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11483
2026-08-07 04:45:13 +00:00
Augustin Cavalier 3ed9989152 HaikuPorts: Correct libvpx version on x86_gcc2.
(cherry picked from commit 52f0f2799ab995e46d97821110e402588c23404a)

Change-Id: I08995e0bd564bcfb951f5275928a51315b619a13
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11464
Reviewed-by: waddlesplash <[email protected]>
2026-08-07 02:33:34 +00:00
Augustin Cavalier 5b5b75a197 HaikuPorts: Synchronize x86_64 and x86_gcc2.
(cherry picked from commit 9baba7643dd0401c3e9baeedd219eeb0f417534e)

Change-Id: I5c06ae6f457748cd0b96f78eb9ffe3ad0e284054
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11447
Reviewed-by: waddlesplash <[email protected]>
2026-08-07 02:19:23 +00:00
Autocomitter 6dd55b35fd Update translations from Pootle 2026-08-07 01:27:36 +00:00
Augustin Cavalier 748825cf77 XHCI: Don't bail out early in CancelQueuedTransfers.
If the endpoint is in HALT state, we need to clear that.

Follows up on #20232.

Change-Id: I4249d34d1af3e4ce08900dd8b0a3ec98625378a7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11443
Reviewed-by: waddlesplash <[email protected]>
2026-08-06 18:22:45 +00:00
Augustin Cavalier f53d451b7a kernel/device_manager: Unlock before calling hooks in devfs_delete_vnode.
Should fix #6300.
(cherry picked from commit 86fb9229fa1207ad4c7066f909733f486ace53ca)

Change-Id: I885baa07341b81da5c2d03525ccc720d9a3d230c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11433
Reviewed-by: waddlesplash <[email protected]>
2026-08-05 16:53:48 +00:00
Augustin Cavalier feaf5c27d6 pthread: Add the start routine's image name to the thread name.
We do the same for mmap. This is at least a little better than
only having "pthread func" for pthreads that don't get renamed.
(cherry picked from commit fdc03c5ef9f386e84b9229c667ddba11fabed55e)

Change-Id: Iaaafc4f5393537d3c3e16da04ed12bc56adb88ff
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11423
Reviewed-by: waddlesplash <[email protected]>
2026-08-04 16:50:40 +00:00
Augustin Cavalier 0836d9e705 usb_disk: Call removed() from uninit() if necessary.
It seems this may happen in some cases if the device wasn't fully
initialized.

Should fix #20227.

Change-Id: I02d78c0e30c9fb790e317b8b069672f9129d3b48
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11422
Reviewed-by: waddlesplash <[email protected]>
2026-08-04 16:50:20 +00:00
Augustin Cavalier f70d950766 nvmm: preempt_disable should be able to be nested.
May fix #20224.

Change-Id: Ide859c35c76b525af1dd6bc5ab3b640e89039503
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11415
Reviewed-by: waddlesplash <[email protected]>
(cherry picked from commit 4fc9b717c3e4e5d22a9d434b25c032f78a56f5c4)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11418
2026-08-04 16:20:37 +00:00
Augustin Cavalier b87d2919ef kernel/device_manager: Remove the marker at the end of the _Scheduler loop.
Otherwise we could exit with it still in the list.

Change-Id: I8b159aa09b094b07de74536c9946ec2d261dc1c9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11416
Reviewed-by: waddlesplash <[email protected]>
(cherry picked from commit f6954953c950b424d85110d07335f123b5572f81)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11419
2026-08-04 16:20:31 +00:00
Augustin Cavalier 37d9955590 kernel: Make reschedule_disabled a uint8 instead of a boolean.
Allows some recursion.

Change-Id: I15cd36dd01dd59480e60c3106c4a741ae6284c80
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11414
Reviewed-by: waddlesplash <[email protected]>
(cherry picked from commit 19e3dda0f15d6183908132dd7385b3a6ca781c27)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11417
2026-08-04 16:19:07 +00:00
John Scipione 868b6993ea Tracker: Fix file handle leak while filtering poses
... closing the file handle it opens and fixing #20018.

Change-Id: Ic6da22bf46fa24ec5f056f468d334c2d6e41069e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11413
Reviewed-by: waddlesplash <[email protected]>
2026-08-04 04:28:10 +00:00
Augustin Cavalier be1b4b813d kernel/device_manager: Always use the marker in the IOScheduler.
When dropping the lock (or calling _Finisher) the owner could go away.
So we have to keep track of our position in the list a different way.

Fixes #20213.

Change-Id: I1f0857c05ec985c7fe2f913a75be20ea91e6994c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11405
Reviewed-by: waddlesplash <[email protected]>
(cherry picked from commit e6155d041190f459d601022bd63840819d2beecc)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11407
2026-08-04 02:49:05 +00:00
Augustin Cavalier 52d627b267 kernel/vm: Add handling for pages in MODIFIED state in VMCache::Delete.
Should fix #20221.
(cherry picked from commit 518a54b774411b901e99fc5a691a3c6dfc113c8d)

Change-Id: Ia626d379c293ca710671a741d2b7525c60b29347
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11404
Reviewed-by: waddlesplash <[email protected]>
2026-08-03 20:53:51 +00:00
Augustin Cavalier b641780cc9 kernel/util: Accept inputs of 0 bytes in utf16_to_utf8.
There's no reason to reject them; they should just result in
a zero-byte output.

Should fix #20222.
(cherry picked from commit 4b6aad38968f9fe91712e742aff9166fec6e67a1)

Change-Id: Ifdbe17618d74eca0b873a6808ec0b14a7d38189a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11402
Reviewed-by: waddlesplash <[email protected]>
2026-08-03 20:05:16 +00:00
Jérôme Duval f90957116e pthread: pthread_mutexattr_getprotocol default is PTHREAD_PRIO_NONE
see https://sortix.org/os-test/basic/pthread/pthread_mutexattr_setprotocol.c

Change-Id: I2969be22ea6c3ed360f8e91bb54528f25d9bf34b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11386
Reviewed-by: waddlesplash <[email protected]>
(cherry picked from commit baed5fcddd33f266804b7e27520e06609beab624)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11387
2026-07-29 17:18:44 +00:00
Augustin Cavalier 0de032d683 kernel/vm: Manage VMArea references to VMAddressSpace inside VMArea.
Instead of elsewhere. Fixes another missed Put(), in VMUserAddressSpace's
_InsertAreaIntoReservedRegion(), and guards against such problems
happening in the future.

Change-Id: If6d87d36225907e281e2341e8b53c461e6954f22
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11381
Reviewed-by: waddlesplash <[email protected]>
2026-07-28 20:28:04 +00:00
Augustin Cavalier 88e0124d1a kernel/vm: Fix handling of non-page-aligned addresses in get_memory_map_etc.
They were passed to TranslationMap::Query() directly, assuming that the
TranslationMap would just round down to the nearest page address. This
actually isn't guaranteed in the case of X86VMTranslationMap64Bit and
the physical map area, which uses hugepages, and so adds the offset
to the page address itself.

So, here the logic is rewritten to always pass page-aligned addresses
to Query(), and then re-add the offset for the first page only. We then
increment virtualAddress instead of an offset, making the next Query
naturally page-aligned.

This was the cause of #20142: when the BFS I/O hook was disabled,
virtual addresses in the physical map region were passed down to
the disk I/O routines, which were then mistranslated by this function,
resulting in corruption of adjacent pages by DMA, and incorrect
data in the pages where it was supposed to be read into.

Fixes #20142.

Change-Id: Ibacd00b7f5ce23a7b41c620224ddf8d338b6de4a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11377
Reviewed-by: waddlesplash <[email protected]>
2026-07-28 16:51:23 +00:00
Jérôme Duval d653556ecd uchar/wchar/wctype: reorganize definitions
uchar.h: only define char32_t and char16_t before c++11

found while testing libc++
https://en.cppreference.com/cpp/keyword/char16_t
https://en.cppreference.com/cpp/keyword/char32_t

add _wint_t.h and _mbstate_t.h
Change-Id: Ia5529cc9aa7316e091297f9842c3007a855f813e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11346
Reviewed-by: Adrien Destugues <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Jérôme Duval <[email protected]>
(cherry picked from commit bf1e1da47d6181dbf8122bc52801c08968e1a4ed)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11374
Reviewed-by: waddlesplash <[email protected]>
2026-07-28 16:40:41 +00:00
John Scipione 064878d320 Tracker: No Disks drop down on file panels.
Get rid of AddDisksIconToMenu() method, use AddItemToDirMenu() instead
which does the right thing and works for Disks.

Change-Id: Ib6d5976f6edde03bdb5086118d6c3e66c362c82c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11277
Tested-by: Commit checker robot <[email protected]>
Haiku-Format: Haiku-format Bot <[email protected]>
Reviewed-by: John Scipione <[email protected]>
(cherry picked from commit bc00558b5a7829e032d572eac0f1943f1e691214)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11350
2026-07-28 16:07:57 +00:00
Augustin Cavalier f0a83b8afe OverlayImage: Check fText actually exists before updating colors.
Should fix #20208.
(cherry picked from commit 472699848d96d84927e7992df1f6e575acd19414)

Change-Id: Ie057ecb43cccca1b348c083b0c0d963ef08a6ff5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11370
Reviewed-by: waddlesplash <[email protected]>
2026-07-27 17:21:49 +00:00
PulkoMandy 63b8fe3ae8 ffmpeg media add-on: add padding around video buffers
The video buffer used for colorspace conversion was not aligned enough
(it could need as much as 64 bytes alignment) and did not include enough
padding (the functions work on 64 bytes blocks at once in some cases).

This code could be made simpler by using sws_scale_frame instead of
sws_scale, but that's more refactoring than I'm willing to do right now.

Thanks to k32n13 for providing a script to generate test videos!

Fixes #20200.

Change-Id: I8b51fd777201cdb899ce1834152066378b258521
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11343
Reviewed-by: waddlesplash <[email protected]>
(cherry picked from commit a0bfeae472eee24a9855e9685a507f6f85d91673)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11344
2026-07-23 18:11:57 +00:00
PulkoMandy b812cfe777 cpu_type: cleanup Intel CPU strings some more
- remove "processor"
- remove repeated spaces
- clean up the "brand" ID as well

Should fix #20191.

Change-Id: Iaadfbf2d3ae6fd2555607e2ed05833ab570079de
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11341
Reviewed-by: waddlesplash <[email protected]>
(cherry picked from commit 8a8ae453bb124a63d33677fb4530d07ad8cd6df7)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11342
2026-07-23 17:22:25 +00:00
Augustin Cavalier 35487c6fba nvmm: Don't ever use B_FULL_LOCK.
vm_map_cache doesn't handle mapping pages, and it seems we don't need
to implement that here.

Change-Id: Ib8ff3e181c066275e2b55093485d44788632a110
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11339
Reviewed-by: waddlesplash <[email protected]>
(cherry picked from commit 6f168cbe77c0d211bea884c8980da086c09a2c76)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11340
2026-07-23 17:05:57 +00:00
PulkoMandy 9b5e2122ee BIOS module: don't copy the real VRAM when calling the BIOS
The BIOS module is used to run BIOS code in a "fake" machine so it can
be called from protected mode without having to go back to real mode.

To achieve this, it copies some parts of the physical memory into that
physical machine. It used to also map some of that memory directly
rather than copying it.

In hrev55544 this was changed to do a copy instead of a mapping. The
copy can then be written to, which opens the way for VESA BIOS live
patching.

However, the copy also means that the entire copied physical memory area
is accessed by the CPU. That area includes the VGA memory, which may not
exist or be masked. In particular this happens in QEMU by default (the
memory is only mapped when graphics mode is activated). In the case of
the NVMM virtualizer, this results in a crash of the virtualizer as
the guest attempts to access memory that doesn't exist.

To avoid the issue, the "fake" machine now includes a copy of the EBDA
(top of RAM) and the BIOS ROMs, but not the video RAM (that part of the
memory space is left uninitialized). This way, it doesn't matter if the
hardware has valid memory there or not.

With this fix, Haiku can boot even without the "Don't call the BIOS"
option set.

Thanks to sed4906 and waddlesplash for the help in locating the issue!

Fixes #20123.

Change-Id: Ide9b6900d2b2abe59138c0c370c8f37a856c4bcd
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11337
Haiku-Format: Haiku-format Bot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
(cherry picked from commit f8e60239a31589e57f0693f27bf731fa98ad1c52)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11338
2026-07-23 17:01:40 +00:00
Augustin Cavalier edc2131db9 kernel/vm: Always use uint64 for memory amounts.
We want to be able to support more than 4GB of swap even on 32-bit.

Change-Id: I52c3aa8c0b77bbbd60a9b9ac37a4a7ad254aa201
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11335
Reviewed-by: waddlesplash <[email protected]>
(cherry picked from commit e4c6bf453d4be138dbc8dd81a687c548cec6afdc)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11336
2026-07-23 16:53:17 +00:00
John Scipione cdcafe6d13 Tracker: Allow drag inside root window and save view state.
Fixes a pair of regressions listed in #20168 around hrev59677.

Change-Id: Id3f8e4e0ca57d11af5e178318869a87d6d8f2210
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11282
Haiku-Format: Haiku-format Bot <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
Reviewed-by: Máximo Castañeda <[email protected]>
Tested-by: Commit checker robot <[email protected]>
(cherry picked from commit 52f5d502d9be13f9fc42080f7e64ecfaf3277da9)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11327
2026-07-23 15:33:15 +00:00
Augustin Cavalier f360d43984 NVMM: Correct area wiring flags.
The cache may not have all pages needed to be fully locked. Therefore
we have to use B_LAZY_LOCK if it doesn't.

Fixes some KDLs I was seeing when using NVMM against a raw disk device.
(cherry picked from commit 0ea1a0a835e8093355c5ea4fbe08dc9be93e3eb5)

Change-Id: I403eaf2f14677101cdd327d4b99c12318815c116
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11332
Reviewed-by: waddlesplash <[email protected]>
2026-07-22 21:26:46 +00:00
Augustin Cavalier e20e66d8a2 packagefs: Add a missing initialization.
Discovered by compiling with UBSan (it triggered as a compile-time
warning; I don't know if this actually causes any problems at runtime.)
(cherry picked from commit 6b28f736c09757156abadd560e69b8e090e60f25)

Change-Id: I91f6930fd4b9e870ecc1bad357aae2722f252cd1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11329
Reviewed-by: waddlesplash <[email protected]>
2026-07-22 20:04:51 +00:00
Augustin Cavalier 9d80b76b46 kernel/vm: Use 64-bit signed types explicitly for memory computations.
off_t is a signed 64-bit type, but size_t isn't signed or 64-bit
on 32-bit platforms. That meant adding a sign bit caused strange
things to happen there.

Fixes incorrect free-memory computations on 32-bit.
(cherry picked from commit cc565c81afd2dfba34de6ced607199d757080a8d)

Change-Id: I294f92ac1279a6311347b5e25341542d8c862013
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11326
Reviewed-by: waddlesplash <[email protected]>
2026-07-22 17:37:42 +00:00
Augustin Cavalier 0178ddbc88 VMKernelAddressSpace: Disable the object depot for the RangesObjectCache.
We allocate/free ranges with the write lock held, so the depot is
just a waste, and actually in low-memory conditions hurts (if we
need a Range and there's none in the cache but there were in the
depots, a scenario I saw when trying to boot with a DEBUG=1 kernel
on my laptop.)
(cherry picked from commit ad189ca258d42e68f493c22bb3ce5f904e1589bc)

Change-Id: Id4af983a8b1337f8e90640218fe63402543355f8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11322
Reviewed-by: waddlesplash <[email protected]>
2026-07-22 15:51:38 +00:00
Andrew Lindesay bc55e4974a HaikuDepot: selection on filter
This change corrects the selection of a package
so that if it could not have been in the filtered
list of packages then it becomes unselected. Also
fix a problem where `StackedFeaturedPackagesView`
is getting pointer events and so getting
`MouseDown(..)` all the time. Also remove some
disused code.

Fixes #20195

Change-Id: I4e30a79d1bfe9cd59bca10113376e8fa87f37ec6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11318
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
Haiku-Format: Haiku-format Bot <[email protected]>
(cherry picked from commit a2cb86260ce9e1898ed31d9a45f8f76e718c0a1b)
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11319
2026-07-22 15:37:35 +00:00
Augustin Cavalier b5a3401119 Enable NVMM.
It works!
(cherry picked from commit 56c1178ccbc073733f10a10ab1dfac433bdec3fd)

Change-Id: Ie66aabbbbdac0923f78acc4edb895cf2f8810c9f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11317
Reviewed-by: waddlesplash <[email protected]>
2026-07-22 03:42:13 +00:00
Augustin Cavalier b0310ba160 nvmm: Always use B_FULL_LOCK for non-swapping caches.
Otherwise the page daemon will unmap pages unnecessarily.
2026-07-22 03:14:58 +00:00
Augustin Cavalier 27c16710b9 nvmm: Implement curthread_save/restore_fpu.
It actually is needed to reset MXCSR.

Doesn't seem to affect behavior, though.
2026-07-22 03:14:57 +00:00
Augustin Cavalier e0ff341bce kernel: Check early safemode options in frame_buffer_console_init.
(cherry picked from commit 596150abbbf4e79d6c50d253c867e5200ae60017)

Change-Id: I691540cad733a342f50ad54bcbcedb878a549863
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11315
Haiku-Format: Haiku-format Bot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2026-07-22 03:09:24 +00:00
Augustin Cavalier 7dc7df27e9 x86: Make "Disable BIOS calls" boot option actually work.
It was a complete no-op before. Now, when enabled, BIOS calls
won't be done past the bootloader, and the Framebuffer driver
will be used instead of VESA.
(cherry picked from commit 7f12208162a5fc676f7a03e050f7671919f4fb12)

Change-Id: Id7670cc060ab5273411222e27467a6dfdbbb9e7f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11313
Reviewed-by: waddlesplash <[email protected]>
2026-07-22 02:31:43 +00:00
Augustin Cavalier bb98e98305 safemode_defs: Sort and organize.
No functional change. Reasonably we should have architecture-specific
headers for some of these, but that can wait.
(cherry picked from commit 450728b4b717b3ea09fb2145daf2e6a24874c6de)

Change-Id: I887d37a54b44e127e4d1fe46675bf57bc2a392dc
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11312
Reviewed-by: waddlesplash <[email protected]>
2026-07-22 02:31:04 +00:00
Augustin Cavalier d56f3f2265 usb_disk: Change a dprintf to CALLED.
(cherry picked from commit b861fcbd866e04256d46725bd5a26f3ea1c5ff8c)

Change-Id: I314b98b8a5c7a0f1e3304b473b82fa759dff60f3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11307
Reviewed-by: waddlesplash <[email protected]>
2026-07-21 22:30:18 +00:00
Augustin Cavalier 0c29b31205 usb_disk: Unpublish devices in the driver removed hook.
We publish devices in the driver register hook, and if we try
to unpublish them from the device removed hook, not the driver
removed hook, we'll confuse the device_manager and cause it
to do use-after-frees on list iteration.

The two are called in quick succession of each other, so this
shouldn't cause problems.

Fixes a KDL reported by OscarL when unplugging a USB card reader
(which I reproduced with another USB card reader.) It seems the problem
would happen with any USB disk device that published more than
one LUN.
(cherry picked from commit a688b173e7c1e903845b6cac78baa7bd2ea23c31)

Change-Id: Ia9fae3428a45e199cb2c903acfe9c689dfa9bed4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11305
Reviewed-by: waddlesplash <[email protected]>
2026-07-21 22:25:07 +00:00
Augustin Cavalier 42371830dc usb_disk: Don't try to reset or test if the device was removed.
Avoids the media checker retrying uselessly after devices have been
removed.
(cherry picked from commit a88cbfae4fcaf80d8786d144fccbeb349c3bd91b)

Change-Id: I3fefcbe515bf46bb84b6a6476e9cef7dcbbb48eb
Reviewed-on: https://review.haiku-os.org/c/haiku/+/11304
Reviewed-by: waddlesplash <[email protected]>
2026-07-21 22:24:59 +00:00