Patch the kernel's build system to not use python tooling
for different configurations, instead we only support one
fixed configuration for x86 (32-bit) only.
Ref genodelabs/genode#5487
* add "or later" to GPLv2 license header where possible in order to make
it compatible with GPLv3 based licenses
* add license header to non-trivial files where missing
fixes#5486
This patch changes the 'Timestamp' type of the VFS and file-system
session to an unsigned 64-bit value holding the number of milliseconds
since the UNIX epoch (beginning of 1970).
The special case of an invalid timestamp has been removed as it was
never consistently handled anyway.
In contrast to the POSIX timespec, which represents tv_sec and tv_nsec
both as signed values, this patch uses an unsigned value because the
interpretation of negative tv_sec and tv_nsec values is muddy.
Hypothetical modification times older that 1970 are capped at 1970.
Fixes#3511
When trying to control the popup dialog with touch events, the dialog
was immediately closed (on any touch). This was a consequence of
evaluating the dialog's hover state without waiting for the
corresponding hover report. For regular motiong events, the hover report
is updated when the pointer moves. For touch events, however, the
hover report is only updated when the touch occurs. We therefore need to
wait for the hover report that corresponds to the touch event before
deciding about closing the popup dialog.
Since menu_view's hover report is not updated for clicks/touches outside any
dialog, we are now using nitpicker's hover report, which also got
augmented by the sequence number in order to be correlated with the
click/touch event.
Fixes#5485
Whenever the panorama changes, eagerly re-evaluate the validity of the
current pointer position. Otherwise, the pointer may stay at an invisible
position until the next input motion happens. During this intermediate
phase, the position featured in the hover report cannot reliably be
matched against the panorama report (as needed by the sculpt manager
to let the leitzentrale GUI follow the pointer).
Issue #5370
Don't omit either attribute whenever the value is 0. If the pointer is
defined, both attributes are reported. This way, the presence/absence
of the attribute expresses the validity of the pointer.
Issue #5370
This patch prevents the use of stale information (bounding box of most
recently closed capture session) unless no capture session is present.
Otherwise, an intermediately but no longer present capture client
(a high-res display at boot positioned at panorama position (0, 0))
would permit the pointer to move at the originally occupied area even
though the current capture client do not capture this whole area.
Issue #5370
As the panel dialog's min width is propagated via the menu-view config,
we need to re-generate the runtime config whenever the leitzentrale's
size changes. Otherwise the update merely happens as a side effect of
dynamically adjusting the font size, which does not happen with the
fixed config/fonts file.
Issue #5370
When inferring the global pointer position from input events referring
to the leitzentrale, we must take the leitzentrale's panorama position
into account. Otherwise, the hovered display cannot always be reliably
determined.
Issue #5370
The sdl2-compat library from version 2.30.54 will issue the warning
"#warning SDL_config.h might be incomplete, good luck"
on unrecognized platforms, introduced with commit f4abaea[1].
Add -Wno-error=cpp for fb_sdl to prevent this warning to be treated as
an error.
Fixes#5476
[1] f4abaea268u
node at all. Fixes a regression. W/o the commit, discrete only
configurations may not work properly, e.g. not showing content on
any display.
Issue #5415
* instead of sending packet-stream signals for each possible rx/tx packet
via genode_nic_client_notify_peers, call the wakeup_remote callback
which implements the Vfs::Remote_io interface in vfs/ip.
genode_nic_client_notify_peers will only be called in case the vfs goes idle.
measured speed up: TX x9.1, RX x1.6
* retrieve genode_socket_info from Linux ipconfig.c
issue #5471
* add genode_socket_wakeup_remote and genode_socket_register_wakeup
which are used to support Vfs::Remote_io on the IP stack side
* add genode_socket_info in order to retrieve the address configuration
from the IP stack
issue #5471
The suspend mechanism is obsolete, use monitor call to wait for data for
blocking sockets. The old implementation using 'suspend' will not block for
pthreads because the 'suspend' functor issues a 'monitor' call itself.
issue #5471
This plugin provides a PRNG based on the Xoroshiro128+ algorithm
that reseeds itself after a specific amount of state was consumed.
For more detailed information please take a look at its README in
'repos/os/src/lib/vfs/xoroshiro/README'.
Fixes#5407
Some control URBs have to be handled synchronously within the
libusb, to meet the semantics of get_device_descriptor, set_interface,
etc., but this was using the VFS libusb plugin in a way that it
polled actively during the control URB being active. This commit
removes the not desired polling behaviour.
Fixgenodelabs/genode#5469