Commit Graph
67363 Commits
Author SHA1 Message Date
PulkoMandy 1fd7b2f396 3dfx driver: enable -Werror and fix warnings
Change-Id: I8278dab0456dbad86c27e483fcb91a9c21d3f517
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8701
Reviewed-by: Adrien Destugues <[email protected]>
2024-12-22 14:27:47 +00:00
cafeina 102726ea26 Haiku Book: Added GameSound, Shelf
Change-Id: I1377ab80e7128a5406bf9f0523564e5e7f9e9f1b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8624
Reviewed-by: Adrien Destugues <[email protected]>
Haiku-Format: Haiku-format Bot <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2024-12-22 08:40:35 +00:00
PulkoMandy a4d7ac5b5f ArchitectureRules: enable -Werror for more video drivers
Change-Id: I446716f1b767f390dc589715f8bd41f50de325f2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8699
Reviewed-by: Adrien Destugues <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2024-12-22 08:38:02 +00:00
PulkoMandy 3b119ad9e1 ps2: check error bit behavior before enabling active multiplexing
The synaptics specification changes the meaning of the system bit when
there is incoming data from the AUX (mouse) port, to indicate that the
incoming byte is an error. This also allows to detect if the active
multiplexing is not enabled correctly or has been reset.

Use this as an additional check so that active multiplexing is disabled
on my laptop, where it doesn't work.

Keeps #19266 fixed while avoiding the long timeout on my machine.

Change-Id: Ia8277e135a149cfa25a2a3022c87c3e05aacb6d5
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8632
Haiku-Format: Haiku-format Bot <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2024-12-22 08:34:43 +00:00
John Scipione 512a94bc18 BTextView docs: Document GetFontAndColor() and SetFontAndColor()
Change-Id: Ie284c63690e955d7cfae7e9e66949a63205e8e31
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8270
Reviewed-by: nephele nephele <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2024-12-21 17:32:52 +00:00
Augustin Cavalier 5ac9e49426 SCSI: Ensure the condition variable is idle before freeing the CCB.
If the completion was just notified by another thread, it's possible
we were awoken and are trying to free this CCB before the other thread
released the condition variable's lock. So, call NotifyAll again
to serialize.

Should fix #17522.
2024-12-21 12:18:22 -05:00
Augustin Cavalier 18443c583a Drivers.h: Add B_SOCKET_IO_BASE declaration.
All the SIO... codes are in the 8900 range.

Change-Id: I7b319877d2430eba2573a0c8fd68cb7fc3b221d8
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8693
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2024-12-21 17:00:00 +00:00
PulkoMandy 1ad0f6ade6 via graphics: fix compiler warnings
Change-Id: I4ac406b2024acc85feff41c2c702b1ba49fca1fb
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8698
Reviewed-by: waddlesplash <[email protected]>
2024-12-21 15:26:23 +00:00
PulkoMandy 63c2738059 radeon: fix compiler warnings
Change-Id: I952abcec52bd00a05193cf4a96b1b2a63947080c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8697
Reviewed-by: waddlesplash <[email protected]>
2024-12-21 15:26:23 +00:00
PulkoMandy e0d66c025d nvidia: fix compiler warnings
Change-Id: I49acd914c2f0a67dc2f4cbe7abd0ee0111db5309
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8696
Reviewed-by: waddlesplash <[email protected]>
2024-12-21 15:26:23 +00:00
PulkoMandy bed6017a15 matrox: fix compiler warnings
Change-Id: I5dce7230fcf5098bd361b459fc77e2be0af4f5d2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8695
Reviewed-by: waddlesplash <[email protected]>
2024-12-21 15:26:23 +00:00
PulkoMandy 53143b25da hda: missing const
Change-Id: I0af1c02beaa18a7a0b17cf76632abde96685895e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8694
Reviewed-by: waddlesplash <[email protected]>
2024-12-21 15:26:23 +00:00
Lt-Henry d3f6f52ffc intel graphics: Added new device
Added the ID for Haswell ULT GT3 Mobile, also known as Iris 5100

Change-Id: If340b0ce200b385ddd8ec4f0f03cf2f1ae450cd4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8700
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
2024-12-21 12:40:19 +00:00
Autocomitter 978a931ea9 Update translations from Pootle 2024-12-21 08:10:01 +00:00
Anarchos 4d3a68fb7d netboot: bump size for tar decompression
Add network add-ons drivers to the archive for x86_64 architecture too.

Change-Id: I8296586d5f2b1f3d4c08250e28aefd32428b21b9
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8522
Haiku-Format: Haiku-format Bot <[email protected]>
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: Adrien Destugues <[email protected]>
2024-12-21 07:46:10 +00:00
Augustin Cavalier d40db83a6c kernel/vm: Clean up vm_clone_area (and wait_if_address_range_is_wired).
* Put variable declarations near use.

 * Use AreaCacheLocker, which calls vm_area_get_locked_cache for us.

 * De-branchify now that a Locker is being used.

No functional changes intended.
2024-12-20 16:02:05 -05:00
Augustin Cavalier 2f7bf3b339 virtio_net: Don't print a message on SIOCGIFSTATS.
Fixes #19304, reduces syslog spam.

Change-Id: I219709645d516134f0e4948e662bd90ee00ab183
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8692
Reviewed-by: waddlesplash <[email protected]>
2024-12-20 16:22:51 +00:00
Augustin Cavalier 01e97ff280 KPartition: Drop SetParent().
A comment indicated it "must" only be called in Add/RemoveChild only.
So the field is just modified there now.
2024-12-19 17:21:04 -05:00
Augustin Cavalier 74ae79fed9 kernel/fs: Don't store the mount cookie in the KPartition.
Nothing uses it. If needed, it can be retrieved through the volume
(mount) ID.
2024-12-19 17:17:18 -05:00
Augustin Cavalier 46a1eb7da5 btrfs: Drop get_supported_operations.
Nothing ever calls it. The actually important method is the
file_system_module_info's DDM flags.
2024-12-19 16:59:35 -05:00
Augustin Cavalier 2164b5e177 NTFS: Fix new identification logic, and add needed flag to fix initialization. 2024-12-19 16:51:32 -05:00
Augustin Cavalier 59aafb9f3f btrfs: Don't pretend to support initializing or writing, yet.
We always mount read-only for the moment.
2024-12-19 16:39:01 -05:00
Augustin Cavalier 04c8e27efa BDiskSystemAddOn: Remove the Flags field.
Nothing used it. Instead the kernel addons' flags are used instead,
except in the case of PartitionDelegate, which calls SupportedOperations().
2024-12-19 16:34:16 -05:00
Augustin Cavalier f48a542cf4 file_systems: Split checking of superblock magic and superblock data.
This way, we can avoid printing anything if the superblock magic
doesn't match (i.e. the partition doesn't look like it's of the
filesystem), but print an error if the magic values match but the
rest of the data doesn't.

Reduces syslog spam.
2024-12-19 16:30:29 -05:00
Augustin Cavalier afe86e25ed partitioning_systems/intel: Code cleanup and logging improvements.
* Use more standard TRACE macro setup.

 * Log more errors to the syslog.

 * Log fewer debug messages to the syslog.
2024-12-19 15:19:05 -05:00
Augustin Cavalier f168963c18 Tracker: Clear filtered pose list in ClearPoses().
Fixes #19300.
2024-12-19 14:48:56 -05:00
Augustin Cavalier 4fa1556978 Tracker: Fix build under DEBUG. 2024-12-19 14:48:01 -05:00
Augustin Cavalier 03bec531f9 PowerStatus: Numerous improvements to battery display.
* Remove the "pause" indicator; it adds too much noise at small
   sizes and seems confusing at large ones. Instead, draw the
   battery in a blue color when it's not in use.

 * Reverse the direction of the battery bar. It now has the capacity
   on the right and the empty on the left, the opposite of the way
   regular progress bars are, but more in line with how this is
   displayed on other OSes (and smartphones.)

 * Tweak ratios to make the icon display larger in the deskbar.
   It now displays closer to the size that regular icon views do.

 * Tweak the lightning indicator to be a little larger, also for
   legibility at smaller sizes.

 * Other misc. cleanups.

Change-Id: I229fe120e769e43e17eeb87638b832418f5e7aaf
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8690
Reviewed-by: Sen Nordstrom <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2024-12-19 04:20:29 +00:00
Augustin Cavalier ae96a596c1 pkgman: Drop unused ResolvableExpressionComparator. 2024-12-18 21:12:16 -05:00
Augustin CavalierandOscar Lesta aaa81469a5 pkgman: Add "search --not-required".
List only the packages that are not required by any other package.

Most useful then used as "pkgman search --installed-only --non-required",
but works for non-installed packages too.

Based on OscarL's initial version, rewritten by me to use the real
dependency resolution system instead. One tweak from madmax to get
it to actually work properly.

Co-authored-by: Oscar Lesta <[email protected]>
2024-12-18 17:08:23 -05:00
Augustin Cavalier f664cdc7e0 kernel/vm: Allow private mappings beyond the end of files
It appears GCC uses this for precompiled headers.

Update the test expectations to match.

Fixes #19296.
2024-12-18 13:58:12 -05:00
John Scipione 10b1abbfde Tracker: Cancel type-ahead filtering on esc
Otherwise esc closes the file panel.

Differentiate between type-ahead and ref filtering in pose view
which is why this was not working in e.g. Expander a ref filter
was set so filtering was also set. We only want to cancel
type-ahead filtering on esc, not ref filtering.

Refer to 'ref filtering' as simply filtering e.g. IsFiltering()
and refer to type-ahead filtering explicity when that is meant.
Rename methods and variables to make it clear whether we're
referring to ref filtering or type-ahead filtering.

If we are ref filtering fill out the filtered pose list again
after stopping type-ahead filtering so that we don't get an empty
file panel in e.g. Expander on esc.

Fixes #13151

Change-Id: I96faf98c3b68d3bcb3d3892c3511ae2449c2f8a4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8689
Reviewed-by: waddlesplash <[email protected]>
Haiku-Format: Haiku-format Bot <[email protected]>
2024-12-18 18:55:05 +00:00
Augustin Cavalier c95edc2ba1 app_server: Get rid of RenderingBuffer::IsGraphicsMemory().
It was introduced in 778706215d
for DrawingEngine's sake, but it actually isn't needed even there
and was removed in the previous commit.
2024-12-18 12:28:26 -05:00
X512 aa453612ef app_server: remove GPU->GPU rect shifting code
It is not used anymore and is very slow on real hardware because it read
GPU memory by CPU.

Change-Id: I06f7ca072220b758d849921e844bb2aa75342e2c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8680
Tested-by: Commit checker robot <[email protected]>
Reviewed-by: waddlesplash <[email protected]>
2024-12-18 17:26:41 +00:00
John Scipione bd01f3f156 Tracker: Style fixes related to #13151
Some 100 char fixes
Put looper in a variable and use it a few times
Remove ASSERT statements, we B_DISPATCH_MESSAGE if NULL.
Refactor command modifier key code to use a nested switch
Explict comparisons to NULL

Change-Id: I068a0123461290731b4b5388b802bb4cc7bb2455
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8688
Reviewed-by: waddlesplash <[email protected]>
2024-12-18 04:24:26 +00:00
John Scipione 844099afc1 Expander: Add bottom spacing back in
Change-Id: I8672079196a370e0e4ec817771977372c30cda6c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8687
Reviewed-by: waddlesplash <[email protected]>
2024-12-18 04:24:26 +00:00
Augustin Cavalier 87eae1e3c8 bootloader: Properly enable __PRINTFLIKE for the boot stdio.
No new warnings or errors, it appears.
2024-12-17 19:49:23 -05:00
Oscar Lesta fed0e6149e Haiku Book: fix typo on _launch_intro.dox.
launch_daemon only understands "no_safemode".

Change-Id: Ib7efb6064a49c35185ffacba3e8642eacd1fe970
Reviewed-on: https://review.haiku-os.org/c/haiku/+/8686
Reviewed-by: waddlesplash <[email protected]>
Haiku-Format: Haiku-format Bot <[email protected]>
Tested-by: Commit checker robot <[email protected]>
2024-12-18 00:17:12 +00:00
Augustin Cavalier f836917f47 kernel/vm: Rework ordering of _RemoveConsumer and drop "unmergeable" flag.
This reverts a8877df135.

Previously, the "unmergeable" flag was necessary for the RAMFS,
because if the last vnode reference was released while there
was still a consumer (as the old ordering of _RemoveConsumer
had), then the release of the cache reference when the vnode
was removed would result in the cache trying to merge with
its now-only consumer and sole referrer.

Now, instead, we remove the consumer before releasing the store
reference, so that there's no chance the cache will be merged
inside this method.

mmap_cut_tests still pass, web browsers using ramfs shared_memory
still seem to work.
2024-12-17 19:12:40 -05:00
Augustin Cavalier 7eeb28152e kernel/vm: Commit up-front in the middle-cut case.
This way, if the Resize() is supposed to take care of the commitment,
it will (and will fail early if it can't), while if we are the ones
responsible for adjusting the commitment, map_backing_store won't
commit at all (avoiding committing far more than will be necessary),
and we can just steal the commitment from the first cache for the second.
2024-12-17 18:33:34 -05:00
Augustin Cavalier 3280d3c47d kernel/vm: Rework cutting areas with source caches.
This reverts 3a81e9446d (2022).

That commit fixed #17556 by just checking if the area had an
underlying cache that wasn't a RAM cache. But there are cases
where there will be RAM source caches that we have to take
into account, too, not just vnode caches or the like. The
most common example of that would be all areas of a team
after a fork(); the original pages will be in a read-only
source cache.

This commit fixes the real underlying problem: if the first area
has a source cache, then the new second cache needs to have that
as its source, too; and furthermore must have the correct offsets
in order to access its pages correctly.

The test for #17556 that was added in 9ed77019b6
still works as before, as do all the applications I tested that
use cut_area. Some assertion failures that the cut tests triggered
(related to commitment sizes) are fixed by this, as well.

This also seems to fix the remaining instability on fork() in the
boehm-gc's "gctest".
2024-12-17 18:32:11 -05:00
Augustin Cavalier e5b76ada08 kernel/vm: Don't re-protect pages in cut_area.
The page_protections aren't changed at all, so all pages that exist
should already have the same protections as are specified in the array.
The only thing different is what cache and area they now belong to, but
the VMTranslationMap does not care about that.

So we don't need to loop over the pages and re-protect them in this case.
We already didn't for all cases where no page_protections were involved.

(It seems this logic was introduced in bdcc293fa8
along with general page_protections support in cut_area.)
2024-12-17 18:31:05 -05:00
Augustin Cavalier c59db548ab kernel/vm: More fixes to commitment handling in cut_area.
When the area has no page_protections but isn't writable,
we also want to use a smaller-than-default commitment.
So, adjust compute_area_page_commitment to handle that case,
and then use it in cut_area where appropriate.
2024-12-17 17:53:27 -05:00
Augustin Cavalier e0854909b2 kernel/vm: Fix an area/cache offset mixup in discard_area_range.
cache->virtual_base is the cache's start address, which no pages will
be found before. area->cache_offset on the other hand is the area's
offset into the cache (i.e. offset 0 in the area will be offset
0 + area->cache_offset in the cache.) These addresses may well be
the same (even if they're not 0), and in many situations they are,
but in situations with shared or cut areas, they may not be.

The only thing that uses this method is madvise(MADV_FREE), which
probably not many things besides the guarded_heap use at present.
2024-12-17 17:39:43 -05:00
Augustin Cavalier a8adb675e6 tests/kernel/vm: Add munmap calls and fix comments in map_cut_compare_test.
Makes it easier to debug in KDL, especially.
2024-12-17 17:10:40 -05:00
Augustin Cavalier feac1ed72d kernel/vm: Add assertion in VMCache::AddConsumer that source == NULL. 2024-12-17 17:05:37 -05:00
Augustin Cavalier a6938ffd24 kernel/riscv64: Drop unimplemented ProtectPage/ProtectArea.
These are implemented in the base class instead.
2024-12-17 17:04:54 -05:00
Augustin Cavalier 0bfdddcc75 userlandfs: Sort files in the libuserlandfs_haiku_kernel Jamfile.
Alphabetical order, proper sections, etc.
No functional change intended.
2024-12-17 14:04:21 -05:00
Augustin Cavalier 0cffc2aab9 userlandfs: Add AVLTreeBase to libuserlandfs_haiku_kernel.so.
Not sure why this wasn't needed before, but it seems to be now.
2024-12-17 13:58:06 -05:00
Augustin Cavalier 94eafb3b5b kernel/vm: Commitment sizes must be rounded up to the page size.
As the virtual_base and virtual_size may not be page aligned.

Fixes #19295.
2024-12-17 13:06:46 -05:00