Commit Graph

61344 Commits

Author SHA1 Message Date
Niels Sascha Reedijk
f766999fae Network preference: show localized name in Deskbar
Switch to B_TRANSLATE_SYSTEM_NAME to use translations in Deskbar.

Reported by victordomingos, thanks!

Change-Id: Ie841b5b19009858ac20f789fc99551df177fbff4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2508
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-24 15:25:56 +00:00
Augustin Cavalier
d26bbf4c90 build: Remove perl from the Development set.
This caused the nightly builds to fail, because perl is apparently
a dependency of something in the base set already.
2020-04-23 21:26:43 -04:00
Jérôme Duval
19692eed95 OptionalPackages: add missing dependencies
for Development: automake and autoconf require perl
for DevelopmentMin: makefile_engine requires make and mkdepend

Change-Id: Ica2bace17a233e2e589e139208e468870b1cc84e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2507
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-23 15:43:08 +00:00
Augustin Cavalier
5332b1ce28 freebsd_network: Remove bogus KASSERT.
As pointed out by halamix, root_size is set to > 0 during
radix_bitmap creation, and never changed after that. So
this is a bogus check.

Fixes #14941.
2020-04-23 01:05:33 -04:00
Augustin Cavalier
ccb11fb4f2 libnvme_haiku: Name mutexes after the function they are allocated in. 2020-04-23 01:02:36 -04:00
Augustin Cavalier
9f703d301c libnvme: Unset ctrlr on teardown.
This way we do not attempt to tear down more than once,
which triggers an assert in mutex destruction.
2020-04-23 01:02:17 -04:00
Augustin Cavalier
9a3a70f437 libnvme: Add better asserts in SGL-to-PRP request conversion.
Taken from upstream (SPDK).
2020-04-23 01:01:47 -04:00
Augustin Cavalier
b0460580c5 libnvme: Export controller SGL support in nvme_ctrlr_stat.
libnvme has routines to convert SGL requests into PRP ones,
but they can only go so far, so some requests are truly
SGL-only.
2020-04-23 01:01:11 -04:00
Augustin Cavalier
b36c8cff54 libnvme: Add comments about what data buffers must be physically contiguous. 2020-04-23 00:59:18 -04:00
Jérôme Duval
ddcb56f2ac bootloader: support older kernels.
if no microcode is found, we can also omit the optional fields.
should help with #15891

Change-Id: I2fcb63ccb0cdf77caf7d5e1770c254561b231a18
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2506
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-21 16:46:10 +00:00
Niels Sascha Reedijk
5d573f8375 Various translation fixes.
Closes tickets #15892 and #15893
2020-04-21 13:38:36 +01:00
Augustin Cavalier
d4304f4384 nvme_disk: Correct get_memory_map invocation.
Passing "1" as the bytes argument instead of "0" means that
get_memory_map would never return an error in the case that
one physical_entry was not enough for the vaddr's map.

This reveals the true cause of the disk corruptions:
libnvme is assuming some of the passed buffers are
physically contiguous, and they are not.
2020-04-21 00:41:57 -04:00
Augustin Cavalier
21b312b61e nvme_disk: Queue requests if there are already requests queued.
This way, we don't do I/O out-of-order within a qpair under
heavy load conditions.
2020-04-20 23:53:12 -04:00
Augustin Cavalier
fdfb71a406 nvme_disk: Further rework of qpair locking behavior.
This makes the logic, especially around queued requests,
much more robust.
2020-04-20 23:50:46 -04:00
Augustin Cavalier
b6fccb7930 nvme_disk: Add an interrupt await timeout.
This way, if something stalls in an unexpected way, the whole system
won't just hang.

Should "fix" #15874, but there is probably some other underlying
problem.
2020-04-20 23:49:24 -04:00
Augustin Cavalier
6ef25b8505 nvme_disk: Request callbacks in libnvme are called with the qpair lock held.
Fixes #15880.
2020-04-20 23:48:25 -04:00
Augustin Cavalier
0f839b9e8c kernel/module: Panic if search_module is called during gKernelStartup.
The VFS has not been initialized at this point, so we can't use it.
Should catch #15865.
2020-04-20 23:47:46 -04:00
Jérôme Duval
12a968998a pch_i2c: build fix 2020-04-20 19:25:15 +02:00
Humdinger
367a1cd989 Input prefs: fix missing translation strings 2020-04-20 18:02:38 +02:00
Jérôme Duval
9aacbbbbc1 HaikuImage: add i2c bus manager and pch_i2c bus
add i2c bin tool

Change-Id: Id83e1ec4f008d3728120dcf5a7f43c4b621c1272
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2486
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-04-20 14:58:02 +00:00
Jérôme Duval
1baf45b64b wmi: add ACPI WMI implementation
add a WMI Asus driver, to control keyboard backlight brightness.

Change-Id: Ib86f70b4a407178b0a1f532269387a55915cc460
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2485
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-04-20 14:56:59 +00:00
Jérôme Duval
526752bc02 acpi: add ACPI_DEVICE_UID_ITEM
Change-Id: I6f1dba7d9d757859375e2339141ba92559d5cf9b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2484
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
2020-04-20 14:56:59 +00:00
X512
04ff1cfaef i2c bus_raw: fix passing cmdBuffer, handle large buffer size
Change-Id: Ia2965d465899d087f0cbf8f7b07a7a326ed305db
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2496
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-04-20 14:56:16 +00:00
X512
b29db8ebbb AutoDeleter: add Get method for FileDescriptorCloser
This allows to use FileDescriptorCloser as unique pointer for file descriptor.

Change-Id: I4c768fafba6ed35658b2fdb075b9b547f53bc8da
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2495
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-04-20 14:56:16 +00:00
X512
9219768a97 scsi: add device names
Change-Id: Ifca8911a095ee93daf1b4976a037dbd7c016e923
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2494
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-04-20 14:56:16 +00:00
Niels Sascha Reedijk
ffc770c1f4 HaikuDepot: remove double space after full stop
Reported by translator loic (thanks!). The double space is only removed in
user-facing strings, I did not touch the comments.

For those interested in an internet controversy, search the internet for
the origins of the double space after a period. In any case, for consistency with
other user facing strings, go to a single space after a period.
2020-04-20 08:45:46 +01:00
Andrew Lindesay
eaf026de4a HaikuDepot: Fix Label on User Rating
Resolves #11639

Change-Id: I45d3952d1dd0fc998cf589b5180c0a81ab1f63b6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2501
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-04-20 07:15:44 +00:00
Augustin Cavalier
ef78f1eda0 Add gmp and mpfr to the regular image package set.
GAWK is apparently built against them (do we really need that?)
so we can't just ship them with the optional package set.
2020-04-19 20:21:31 -04:00
Augustin Cavalier
7c2cc47436 DefaultBuildProfiles: Remove "gcc" from default source packages.
OptionalPackages will add its source package when shipping GCC itself.
2020-04-19 20:18:44 -04:00
Andrew Lindesay
30bd2c8c29 HaikuDepot: Fix Icon Backgrounds
Some icons are not correctly observing the color
of the background view they are drawing on.  This
commit will fix that problem.

Resolves #14587

Change-Id: Icdd3eda915c985eba3517f888f29ccb2f8278487
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2500
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-19 22:24:04 +00:00
Augustin Cavalier
55e10d7ca4 OptionalPackages: Rework following build-packages changes.
* perl must go in /system/packages as git requires it
 * mpc, gmp, mpfr needed by gcc
 * jpeg was replaced by libjpeg_turbo
 * glu not necessary
2020-04-19 18:10:40 -04:00
Augustin Cavalier
26044ec39c package_infos: Clean up dependency on libpng. 2020-04-19 18:00:49 -04:00
Augustin Cavalier
f5a84636ec build: Replace jpeg with libjpeg_turbo for JPEGTranslator.
It works!
2020-04-19 18:00:31 -04:00
Augustin Cavalier
14af814156 build: Merge ilmbase and openexr build features.
Also only declare dependencies on OpenEXR libraries,
and let the ilmbase ones (which are now in the same package anyway)
get pulled in implicitly.
2020-04-19 17:59:57 -04:00
Augustin Cavalier
b8aadcd2df libnetapi: Adapt to OpenSSL 1.1 API changes.
Surprisingly easy: X509 was made opaque, and SSL_CTX_set_ecdh_auto
was removed (it is now the default internally.)
2020-04-19 17:58:00 -04:00
Augustin Cavalier
648cc69f8e HaikuPorts: Synchronize build-packages set.
Notable changes:
 * jpeg replaced with libjpeg_turbo across the board.
 * man replaced with mandoc.
 * ilmbase merged into openexr.
 * gnutls no longer needed in this set.

A few other packages unused in the local scripts were
also removed. Build fixes are in following commits.
2020-04-19 17:56:23 -04:00
Augustin Cavalier
dd419e59dc build_haiku_image: Distinguish between system (activated) and unactivated packages.
Previously, all packages on the image, both activated and unactivated,
were in $systemPackages, so if a package actually in /system/packages
had a dependency in the Installer optional package area, the dependency
checking would see no problem but the generated image would be broken.

Now, packages going into /system/packages are treated separately
from those going elsewhere, and error checks added so the above
condition will not occur.

(I ran into this while working on the build-package upgrade
in the following commits.)
2020-04-19 17:53:10 -04:00
Augustin Cavalier
5e15819d86 Jamfile: Remove most implicit dependencies from default installed packages.
No need to pull in e.g. "libpng16" explicitly when the appropriate
libpng version will automatically get selected by get_package_dependencies
at image build time.

I did however remove ctags altogether; nothing in the base install
uses it, so there's no reason to have it.
2020-04-19 17:50:43 -04:00
Adrien Destugues
c2895bebdf Build fix. 2020-04-19 17:00:02 +02:00
Adrien Destugues
8a397b0541 BTabView: use the back/forward buttons to switch tabs
Note that for this to work well, the child views in the tabs must
propagate MouseDown events up for these buttons.
2020-04-19 11:30:16 +02:00
Adrien Destugues
217641f5fe intel_extreme: do not pretend to handle modern devices
The accelerant just doesn't know what to do with these.
2020-04-19 09:39:04 +02:00
Andrew Lindesay
a6a45d1b92 HaikuDepot: Fix Oscillating Pkg Selection
The views for prominent and list packages were both
getting mouse click events and they were both sending
the "package changed" to the MainWindow which, with
the two queued messages, ended up in a feedback loop
constantly oscillating between the two packages from
the two views.  This problem is resolved in this
commit by stopping one of the views processing the
events if it is hidden -- because it is not the
selected tab.

Resolves #15884

Change-Id: I38f75baba26b26183fd0cd1a6909e404f9f37b9b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2498
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-19 03:52:50 +00:00
Augustin Cavalier
a2dbd0457f hardlink_packages: Use distutils to compare versions. 2020-04-18 18:04:38 -04:00
waddlesplash
47e83a42b0 Revert "BTabView: use the back/forward buttons to switch tabs"
This reverts commit 7ba52abdd3.

Reason for revert: Broke the build due to undeclared symbols.

Change-Id: If726d1f71a336f98428037dad2acfdaf961f1a84
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2497
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-18 18:40:02 +00:00
Adrien Destugues
dd0e8e49f3 intel_extreme: filter out some video modes
Only in the specific case of:
- Generation 2 or 3 hardware (with a limited panel fitter)
- No EDID is found (so we have no idea about timing limits)
- A VBT is found (so we know the native resolution of the LCD panel)

Only in this case, restrict available resolutions to the ones not larger
than the VBT mode. Larger resolutions don't work and result in a black
screen.

In all other cases, we should normally figure out appropriate
resolutions from the EDID limits and our well-known modes list.

Change-Id: I3bba9f53b92c4c647e0d644fa0181f6fe96d1fc4
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2235
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-18 18:25:19 +00:00
Niels Sascha Reedijk
6758018a21 HaikuBook: add remaining layout class documentation
This is the final contribution to #15368

* Tried to share more documentation in the various BLayoutBuilder classes
* Add missing GridView, GroupView, SpaceLayoutItem
* Also added AbstractLayoutItem, but hide the actual documentation behind
  an `INTERNAL` conditional block. This block identifier can be used to
  document parts of the API, to then hide them during a regular Doxygen run.
* Do some cleanup on other layout classes; add missing members, etc.
* The actual generated BLayoutBuilder::* html is a mess. I should investigate
  this at a later time. Especially the copied members seem to mix type
  definitions with member documentation. It is odd. Not unlikely to be a
  Doxygen bug.
* The general documentation for the layout system could use an overhaul as
  well, but this is for later.

Change-Id: I6db9ef105b4ae6de0f1ebb917f86f8b1c0d4ea2e
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2491
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-18 18:24:51 +00:00
waddlesplash
891edac940 kernel/vm: Revise overflow checking in user_strlcpy.
Change-Id: I6a066e7b2c51ff94d80381fcc940565f777209e7
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2376
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-18 18:22:49 +00:00
Kyle Ambroff-Kao
ee8cf35f07 bfs: Return B_NAME_TOO_LONG from BPlusTree::Find
This patch makes "UnitTester BNode" pass.

Several tests which attempt to create or access a directory entry that
exceeds the maximum length assume that B_NAME_TOO_LONG status will be
returned, since that is what BeOS does. When constructing a BNode with
a path like "/tmp/some really long filename larger than 256
characters...", the vfs eventually calls bfs_lookup() which calls
BPlusTree::Find(). In the case of a really long entry, Find() returns
B_BAD_VALUE.

This patch just changes BPlusTree::Find to return the more specific
error that matches BeOS.

Additionally this patch fixes some assertions in NodeTest. BeOS seems
to have been missing some error checking code in the initialization of
BNode, specifically with BNode(Directory*, const char*) and the
equivalent SetTo method. If you provide an empty string for the child
entry name to either of those, B_OK will be returned. But either way
you initialize the object, when you try to use it, like with
BNode::GetAttrInfo(), you'll get B_BAD_VALUE.

This just changes any assertions for this situation to expect
B_ENTRY_NOT_FOUND, which is the actual initialization error Haiku
sets.

This and the change to bfs resolves many assertions the following
storage tests:
* TestCaller BFile::Init Test 1
* TestCaller BFile::Init Test 2
* TestCaller BNode::Init Test1
* TestCaller BNode::Init Test2
* TestCaller BSymLink::Init Test 1
* TestCaller BSymLink::Init Test 2

Change-Id: I8598352aa341ffcab9f7bc3e6740ae1cb3dbab8c
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2490
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-18 18:22:04 +00:00
Adrien Destugues
7ba52abdd3 BTabView: use the back/forward buttons to switch tabs
Note that for this to work well, the child views in the tabs must
propagate MouseDown events up for these buttons.

Change-Id: I503d7203cb20e6ba85bd0d7e1cfaed988e3cf17b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2207
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-18 18:20:37 +00:00
Adrien Destugues
5bbf7f1be0 Actually handle more than 3 mouse buttons
The code in input_server was pretty much all set for this, but there was
no way to configure the extra buttons. Add them to the mouse view in
Input preferences (up to 5 buttons are handled now)

Define a new B_MOUSE_BUTTON(n) macro to generate the bitmask for a given
button (numbered from 1).

Change-Id: I9091082277937d89b08464ff474e7bbb5db82401
Reviewed-on: https://review.haiku-os.org/c/haiku/+/180
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-04-18 18:20:37 +00:00