Commit Graph

61029 Commits

Author SHA1 Message Date
Adrien Destugues
8769583f90 Build fix. 2020-02-03 22:19:22 +01:00
Adrien Destugues
3bea15adca BSecureSocket: retry reads after interrupted syscalls.
SSL_AUTO_RETRY does not cover this case (it only covers SSL errors, not
underlying socket ones), so we still need to retry reads manually here.

Fixes #14638.
2020-02-03 21:47:08 +01:00
Adrien Destugues
9762e2fe45 Update readme.compiling
- Clarify why building jam is not needed on Haiku
- Put the 64bit instuctions first, as they apply to both Haiku and other
  platforms and are the way to go for people discovering Haiku, usually
  (only oldtimers will care about BeOS compatibility)
- Remove the "from non-haiku platforms" from 64bit instructions because
  they work just fine on Haiku as well
2020-02-03 13:39:46 +01:00
Kyle Ambroff-Kao
e7fd54fcde tests/haikudepot: Fix build of ValidationUtilsTest
Changeset 835e7239d added some additional tests for HaikuDepot, but
ValidationUtilsTest::AddTest references a test method which doesn't
exist.

I think the intention was to have TestEmailInvalid defined, but it was
split into more granular tests like TestEmailInvalidNoDomain,
etc. Just removing this undefined test from the suite.

Change-Id: I858233df29657d07d78ad1784691572e65a26045
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2183
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-02-03 11:36:07 +00:00
Adrien Destugues
d439721d6c Bootloader menu: update copyright year. 2020-02-03 12:28:06 +01:00
Adrien Destugues
cc55d41273 efi loader: implement simple in-memory log
This lets us see the bootloader log from the boot menu, which is very helpful
on machines with no serial port or other way to debug.
2020-02-03 12:28:05 +01:00
Andrew Lindesay
835e7239d0 HaikuDepot: Refactor of Login
These changes cover a rework of the login and
account creation logic before making additional
changes related to the user usage conditions.

Relates to #15209

Change-Id: I90b7dbcee5b0285476938c6ced0afc89483d6227
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2023
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-02-03 08:51:55 +00:00
Adrien Destugues
dcee1c8ce4 Installer: do not Quit() the EULA window directly
Fixes #15021.
2020-02-03 09:45:46 +01:00
Adrien Destugues
af5b356d7d Installer: small tweak to layout
Should fix #14574.

Change-Id: I0aa13eda0af936d371664c678a6ff5b8ceabff79
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2181
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-02-02 23:45:05 +00:00
Adrien Destugues
8095ab5a4b Installer: use Walter as a placeholder logo
For non-official builds, Installer had no logo. This led to a window
sizing bug which is not seen in the official builds (both nightlies and
releases) as they both use the Haiku logo there.

Use Walter as a placeholder logo in that case. The png is generated from
the wonderbrush file in the separate artwork repo.

Change-Id: Iea361d7ac0fd2bdb147318632ff198c86c4b89c2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2180
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-02-02 23:45:05 +00:00
X512
c529e2a354 debug heap: implement malloc_usable_size
Change-Id: I49d7918df00cca4b889f6a3cf52c3f903ee5fa2a
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2179
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-02-02 23:38:37 +00:00
Adrien Destugues
fdc13d7d97 Installer: do not allow installing to read-only partitions.
This would probably not work, right?

Fixes #14614.
2020-02-02 22:14:39 +01:00
John Scipione
151a4f7f93 API Docs: Clarify BLooper::PostMessage and BMessenger::SendMessage
... docs to make it clear which methods work synchronously and which work
asynchronously. A small number of related edits are included as well as a
couple of pedantic whitespace changes. Clarify sync vs. async reply
handling better in BMessenger class description. Add The to make sentences.

Change-Id: I3069934fc5e82dda25331e85884d6d0c0c100dfd
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2178
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-02-02 00:52:41 +00:00
Humdinger
e557eb2c66 More email provider infos
Added provider info for mail.ru, courtesy of GCI 2019 student tejasmate.
Added missing provider infos in the Jamfile.
2020-02-01 16:57:46 +01:00
Panagiotis Vasilopoulos
5a57c0442c Mail: added email configurations
Change-Id: Ibe827df8be8141f0b2c775195c42d234ce2066c3
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2158
Reviewed-by: humdinger <humdingerb@gmail.com>
2020-02-01 15:53:29 +00:00
Kyle Ambroff-Kao
2112748284 tcp: Fix KDL when sockets are reused
This fixes a KDL that is triggered by the following scenario.

1. A socket is created, attempting to establish a session
   between (loopback, ephemeral port) => (remote address, remote
   port).
2. That socket ends up in the closed state because the remote is not
   accepting connections.
3. The socket is re-used to connect to a different (remote address,
   remote port).

The problem is that fConnectionHash is a BOpenHashTable<TCPEndpoint>,
and inserting endpoint multiple times can create a linked list
cycle (TCPEndpoint is an intrusive linked list node). That means that,
even though TCPEndpoint's destructor removes itself from
fConnectionHash, there will still be a pointer to it left behind,
which means that future accesses within that hash table bucket will
result in a segfault.

The added fConnectionHash.Remove(endpoint) here prevents the KDL, as
it ensures that socket reuse doesn't result in a cycle.

Fixes #13927, see that ticket for a detailed explanation of the
problem.

Also added some regression tests:
* Added SocketTests::ClientSocketReuseTest to PosixNetTest, which
  reproduces this KDL.
* BOpenHashTable: Added tests to cover RemoveUnchecked and removal
  of an object that isn't in the table.

Change-Id: If4bcc1e0d94350a5ad9ba8e7ae6f1b783b3f6d34
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2173
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>
2020-02-01 11:52:34 +00:00
Autocomitter
4a2bab12b1 Update translations from Pootle 2020-02-01 08:52:52 +00:00
Adrien Destugues
3aba70f980 install_wifi_firmwares: fix build of b43-fwcutter
byteswap.h was removed from glibc in current versions, so point to an
older git revision to get it.
2020-02-01 09:28:39 +01:00
Kyle Ambroff-Kao
e8a484b0f6 tests/kernel: Fix KPath tests
42e3c6f97 changed the default buffer size for KPath, but the tests
still assume the original default.

Change-Id: I2712d81bbdc678bbaae11e975b0a9a05f5a9151f
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2175
Reviewed-by: Axel Dörfler <axeld@pinc-software.de>
2020-01-31 15:22:55 +00:00
Murai Takashi
6a27de893b deskbar Fix PVS V595
Add NULL check for 'fBarView', since it might be NULL
at line 107.

Change-Id: I293e551dd4ab6ac33b7d4a6d1bf736bcd142cb80
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2170
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-01-31 11:49:51 +00:00
Murai Takashi
f67a677986 soundrecorder: Fix PVS V595
Add NULL check for 'fBitmap', since it might be NULL
at line 71.

Change-Id: I70bf4d29e20bbe1c62d972f576dc52d4783933d1
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2169
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-01-31 11:46:42 +00:00
X512
958d3f4375 BeBuild: set default visibility for _EXPORT
This is required for building shared libraries with hidden by default symbol
visiblility such as mesa.

Change-Id: I7150629aaea61d7c9b6e641d32913c5cc7c96543
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2159
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-01-30 00:32:32 +00:00
Kyle Ambroff-Kao
aa7ac127f8 tests/kernel: Add tests for BOpenHashTable
Linking libkernelutilstest.so with libbe to for use of BObjectList in
the tests.

Change-Id: I1abb991e240dd522821a71ef54d22a1ca7957283
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2165
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-01-30 00:30:00 +00:00
Alexander von Gluck IV
e53e22439c efi/types: Only set ms_abi on x86
* Upstreamed to Fuchsia via:
  https://fuchsia-review.googlesource.com/c/fuchsia/+/358320

Change-Id: I3232cc1a5bf6194d5f2fa82f13668ca089faca92
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2174
Reviewed-by: waddlesplash <waddlesplash@gmail.com>
2020-01-30 00:21:54 +00:00
Murai Takashi
5529e8d2df deskbar: Fix PVS V757
Use dynamic_cast to menuItem after NULL checking to it.

Change-Id: I3fdabf5a091922587f498cf5fa116f8824bbfc6b
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2160
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
Reviewed-by: Jérôme Duval <jerome.duval@gmail.com>
2020-01-29 09:34:22 +00:00
Alexander von Gluck IV
250b21a583 system/u-boot: Some 64-bit cleanups to our u-boot code
Change-Id: I70c50b36cd56263dcb37faeffc4037dea4af88c0
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2171
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-01-28 18:32:09 +00:00
JaniceTr
3b11f603cf Adding 96 and 128 size icon options for Launchox
In the desktop the icons can reach 96 and 128 pixel. With the increase of resolution those are good dimensions.
The max size of icons in LaunchBox was 64, so new sizes were added.
Fixes #13835

Change-Id: Id4db66f52b265aa4f94742c83f7d65ed136ba9c2
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2172
Reviewed-by: Fredrik Holmqvist <fredrik.holmqvist@gmail.com>
2020-01-28 18:16:14 +00:00
Murai Takashi
2afe4c52c8 appserver: Fix PVS V595
Add NULL check for fAllocator, since it might return NULL.

Change-Id: Ifb72266b4d4c5f076f0c663066dc9b81e94fc201
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2162
Reviewed-by: Stephan Aßmus <superstippi@gmx.de>
2020-01-28 18:01:14 +00:00
Adrien Destugues
88d73c6cf8 intel_extreme: set the "image size" register on generation 4 and below
This is undocumented, but required for GMA 945 and probably earlier
devices as well. The register is reserved in later generation 4 devices,
and not mentionned at all in later versions.

Fixes #15655.
2020-01-28 18:56:59 +01:00
Alexander von Gluck IV
1d622b8d66 build/repositories: Add riscv64 HaikuPorts and fix Cross
Change-Id: I8963a66dd30e8d964c1a1cf0b9140615592f7e46
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2167
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
2020-01-28 13:45:49 +00:00
Adrien Destugues
d8572f79ba Fix x86_64 build.
__rdtsc is not directly a builtin, x86intrin.h needs to be included.
2020-01-28 13:04:39 +01:00
Alexander von Gluck IV
3a85d802ee libroot/riscv64: Fix build. Add MIT optimized bswap from rv8
Change-Id: I4d0e1ec34d1568594cac0f7378f87852c997ab81
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2166
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-01-28 11:48:42 +00:00
Alexander von Gluck IV
15fb7d88e9 riscv64: Add missing (slightly modified) fenv.h from FreeBSD
* A few tips for future folks follows.
* fenv.h gets wrapped in our buildtools
* If anything in the arch fenv.h "doesn't work" buildtools
  will silently fail early on (autotools HAVE_FENV_H)

Change-Id: Icae064fde42af3bbed5ea2eadfaa8c18c677e6a6
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2164
Reviewed-by: Alex von Gluck IV <kallisti5@unixzen.com>
Reviewed-by: Adrien Destugues <pulkomandy@gmail.com>
2020-01-28 11:48:42 +00:00
Adrien Destugues
2d697067b2 Further cleanup/optimization of system_time
On gcc4, we can use the __rdtsc builtin. On gcc2, provide a similar
inline-able version of rdtsc, and remove the rdtsc function written in
assembly, saving a call/ret on every call.

There has been some discussion about performance, but note that this is
only bootloader code, it is not used when the system is up and running,
therefore performance is not that critical.
2020-01-27 21:46:43 +01:00
Alexander von Gluck IV
97e67e3f63 repo/HaikuPorts: Bump gcc for sparc to resolve post-musl changes
Change-Id: I900712b13275f64c5f0955a7b9818b2e4d450a9f
2020-01-27 13:50:36 -06:00
Adrien Destugues
ec4e9ea8bc intel_extreme: remove unhandled generation defines
- 7xx (1st gen) has no driver in Haiku or is handled by the intel_810 driver
- PowerVR has no driver in Haiku

So there is no point in having those in the intel_extreme driver.

While I'm at it, fix the video timing/resolution constraints for
sanitize_video_mode.
2020-01-27 13:58:52 +01:00
Adrien Destugues
5cd8219db6 Remove annoying message at start of build. 2020-01-27 13:49:47 +01:00
X512
7512485b94 Optimize system_time function
The uint128 code does not optimize as well as expected. Since this
function can be called quite often, use a more optimal implementation
(quite similar to what we had for x86_64 before refactoring).

Unfortunately this is still not as good as the hand-optimized assembler
previously used for 32bit x86, unless compiled with clang, where it gets
pretty close.
2020-01-26 14:48:30 +01:00
Adrien Destugues
d6a742cafd DeskCalc: Use IsLocked() instead of Lock()
As suggested by korli.
2020-01-26 14:44:12 +01:00
Adrien Destugues
947faad871 Remove mercurial sources from release images
We don't ship the binaries, so I don't see why we would ship the
sources.
2020-01-26 12:40:01 +01:00
Adrien Destugues
edb3467aca BView::DrawBitmap: document "options" parameter 2020-01-26 11:24:04 +01:00
Adrien Destugues
f8969c78e5 DeskCalc: use an autolock to simplify clipboard handling. 2020-01-26 11:23:41 +01:00
Adrien Destugues
190d0372b3 Fix system_time implementation
When refactoring this and writing a common implementation for x86 and
x86_64 I missed a step in the calculation. We need to divide by 2^32 to
keep the value in the expected range.

Fixes #15658.
2020-01-26 10:44:05 +01:00
Adrien Destugues
3cba7254a8 DeskCalc: fix gcc8 build. 2020-01-25 22:52:50 +01:00
Adrien Destugues
cddaf7625c btrfs: fix build. 2020-01-25 22:09:42 +01:00
Adrien Destugues
670af4fc7b More build fixes. 2020-01-25 21:35:34 +01:00
Adrien Destugues
1bd3bfd038 DeskCalc: fix build.
Apparently, this code was submitted to Gerrit without checking if it
built.
2020-01-25 19:54:31 +01:00
Adrien Destugues
fadca4b173 intel_extreme: disable pipe configuration
This code just sets nonsensical things in the pipe control register, so
disable it and add FIXMEs if someone wants to get it to work someday
(but it's not needed for modesetting an already up and running display).

Also remove some other places where we write to non-existing registers.

Fixes #15628 (for real, this time).
2020-01-25 19:48:48 +01:00
Adrien Destugues
1fa0a12d75 intel_extreme: add a command to dump pipe config
I look at this all the time and entering register offsets and converting
from hex was getting annoying.
2020-01-25 19:48:47 +01:00
Adrien Destugues
03ee42a8eb intel_extreme: Keep LVDS on its assigned pipe also for SandyBridge
We don't manage to change the transcoder there, either, so just keep
using the selected one (A if no other display is connected, and B if
there is one, it seems).

We were configuring pipe B but the LVDS panel would still display pipe
A. And, we were not configuring pipe B properly, even. The whole
modesetting only worked by occasionally setting some registers for pipe
A ("just in case", said comments).

Now we actually configure the pipe we are using, which makes more sense
and brings us a step closer to multi monitor support.
2020-01-25 19:46:40 +01:00