Tagged Check-ins

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Check-ins with non-propagating tags:

2024-03-14
18:08
Genode 24.02 support: just update jamrules-pkg-version with newer libc hash ; check-in: c21c4339e3 user: user tags: new-genode-rev, trunk
2024-02-16
10:56
(release: 24.1) Clean-up networking work-around: * system composition: use proper "sleep" (not provided in this public repo yet) to delay launch of pc_nic_drv, by 8 seconds ; * system composition: silence nic_router logging, and revert quota bumps, now that we fixed networking ; * also increase DHCP timeout from 10 to 15, you never know ; Fix-up FillArc: * interface/GeCanvas: fix a couple off-by-one's that resulted in not painting all pixels in FillArc(), leaving "blank" lines ; * tests tweak: help visually detect pixels that are not painted by FillArc/FillRoundRect() ; -- TESTS -- * all looks A-Ok on both test machines (including M73, including networking), let's put this in tester hands ; check-in: 82400465a0 user: user tags: release, trunk
2023-12-20
16:17
Genode 23.08 and 23.11 support: Compatibility: * nic_drv: switch over from ipxe_nic_drv to (Linux-based) pc_nic_drv ; * platform_drv: increase caps and ram, enable IOMMU reporting, enable "info=yes" for nic_drv ; * vfs_ntfs, media: don't pollute Genode C++ files with -DDEBUG macro (as of 23.08 there is now a DEBUG enum in cpu_state.h) ; * GeDepot and run_depot: use the latest version of Falkon and textedit, aka 2023-10-23 ; Simplification: * use lwip (instead of lxip) everywhere ; * use cached_fs_rom (instead of fs_rom) everywhere ; Misc: * BTextView: actually enable the Invalidate() work-arounds and document their use path ; * benchmarks: tighten vfs figures as Genode performs better (several figures are cut almost in half) ; * build: make it easier to build the extra "whole shebang", with a unique switch $(BUILD_DISTRO) in deskbar.run ; -- TESTS -- * no change with new Nic driver: still no networking on M73 (filed a ticket) ; * the new Falkon etc perform beautifully as before ; * same with AC ; check-in: e6680ff281 user: user tags: new-genode-rev, trunk
2023-11-03
16:20
(release: 23.3) * Jamrules: #define __HAIKU__ so as to get proper builds of (e.g.) src/bin/ utilities ; * Jamrules: implement rule UseHeaders properly, as used in e.g. src/bin/ utilities ; * mime_db: adapt todo comment, now that the __HAIKU__ define compiles it in full ; * InitPilot: fix memory leak ; * InitPilot: tweak to generate shorter app name/path, to keep logs more compact & readable ; * broker_server: make logging a tad less verbose ; check-in: 56da641d59 user: user tags: release, trunk
2023-09-22
10:38
(release: 23.2) * tweak some ToDo markers ; check-in: ffa0866517 user: user tags: release, trunk
2023-07-17
09:21
Genode 23.05 support : -- Adapt to Genode 23.05 changes -- * adapt to snprintf.h header new location/namespace/library ; * adapt to Genode::Connection new ctor ; * adapt to new libc and stdcxx packages ; -- Misc -- * bench: several benchmarks perform faster (except find_thread() which shoots way up, oddly) ; * indexer: downgrade a warning() ; * toolchain/gcc 12 compiler notes: I can still compile with gcc10 (using the associated stdcxx), with 4 minor changes to the genode repo ; * some clean-ups after the previous commit (xattr vfs handle overhaul) ; -- TESTS -- * vfs is still 100% solid (and we no longer need to patch Genode for stability) ; * there might be a new *regression* with pthread_create() though: it seems to sometimes leak 1 capability ; check-in: 7f9bf0a1a8 user: user tags: new-genode-rev, trunk
2023-06-24
10:32
Genode 23.02 support, plus some tweaks : -- Adapt to Genode 23.02 APIs -- * adapt to Byte_range_ptr API usage ; * adapt to size_t API usage ; * adapt to deprecated base/debug.h Genode header ; * adapt to deprecated Genode::abs() function ; -- Adapt to Genode 23.02 build and integration -- * build new rev of grub2 ; * add new argument (bender "serial") needed by new grub2 (otherwise boot-up fails) ; * adapt to new acpica policy in platform_drv config (otherwise power-off fails) ; * add a note to make SURE integrators enable /dev/rtc in broker (otherwise broker fails to write to vfs pipes) ; -- Tweak FS to tolerate 'extreme' test-suite modes -- * vfs_ntfs: make it (partially) compatible with use-case where indexer is client-side whereas vfs_ntfs is server-side ; * works for GetNextAttrName() (needed strncpy symbol, and improvements in leaf_path() and directory()) ; * works (seemingly) for BQuery aka dev_for_path("/boot/newfile") ; * failed GetAttrInfo()/B_ENTRY_NOT_FOUND test: would need patching fs_file_system.h/_complete_read() to generate READ_ERR_INVALID instead of READ_ERR_IO ; -- Misc -- * indexer: fix the downstream libntfs-3g warning about "un-normalized path" by using an alternate variant of path.import() which does NOT create an un-normalized path to begin with ; * test-suite: return to local-fs mode for now that I'm no longer working on FS stability (if ever needed again, will need to put ALL vfs plug-ins server-side, like in production, otherwise I keep chasing extreme corner/pathological cases) ; * benchmarks: some tweaks, plus opendir() takes a bit longer ; -- TESTS -- * we're stable doing FS writing at last ! AutoCast has been running for a few days with ReportLog enable, with zero issue ; * credit goes to Genode Labs' ruthless quest for code clean-ups, which helped bring the bug's root cause to the fore and forced me to investigate :-) ; * that's with a custom-made fs_file_system patch though (forced wakeup_vfs_user() in _handle_ack()) ; * that's also with a post-23.02 vfs/pipe/plugin.cc patch cherry-picked/back-ported from #4785 (might be necessary, together with the /dev/rtc thing) ; * next I'll overhaul the xattr code so as to no longer need that patch ; * can't compile/run vnc_server any more though, but I'll upgrade to 23.05 later on, that one has an official binary available ; check-in: 91b37516e8 user: user tags: new-genode-rev, trunk
2023-04-14
08:58
(release: 23.1) -- Tweak MediaKit, InterfaceKit -- * BMediaFile et al: add wiring for HasData(), though that does not seem to improve detection of aborted decodings (ogg/vorbis eg) ; * replace open-ended loop with bounded loop, to make infinite looping impossible ; * only fill the samples FIFO up to 50%, seems to make a difference ; * todo markers: plan ahead to clean up the mess ; * BWindow.UpdateIfNeeded(): release the window lock after (not before) we're done painting ; -- TESTS -- * stability seems to improve with the above changes ; * let's widen the test pool to gather more data ; check-in: 23de9e0e66 user: user tags: release, trunk
2023-03-23
12:42
Genode 22.11 support, plus various tweaks -- * acpica/Deskbar build-and-run: acpica now requires a report route for the "suspend" state, so we provide a placeholder in the run script for now (will try to actually implement suspend later, sounds intriguing) ; * adopted change re. intel_hwp boot module ; * Genode's hardware abstration layer now uses a pci_decode component, and requires adding info="yes" policy attributes to platform_drv, we follow suit ; * also adopt the change re. using the "devices" file ; * attempt fixing the "bad symlink on first ever build" issue (not sure it works tho) ; * crank up boot-module slots from 60 to 65 (fixes growth issue with TTS distro) and provide for proper exhaustion warning next time I run out of slots ; * configure Qemu with 1 GB RAM instead of 768 MB (helps with TTS distro) ; * libc: enable "pthread placement=all-cpus" (helps with TTS apps) ; * comment out vfs_oss (no longer being used with TTS apps for now) ; -- TESTS -- * no longer seeing AC lock-ups since the upgrade to Genode 22.11, looks like I'll base my distro on this Genode rev! ; check-in: d6d6d9c2dd user: user tags: new-genode-rev, trunk
2022-10-10
09:29
Genode 22.08 support -- * no real change required on our side ; * build looks better if silencing -Wno-deprecated-copy though, so do that ; TESTS (BARE METAL) -- Tested on everything I have in reach here ; acpica works again, something must have changed in Genode 22.08 ; no regression found ; now let's apply vfs optimizations (in next iteration) and find out whether I can tie that off ! check-in: a9750f0df8 user: user tags: new-genode-rev, trunk
2022-10-06
16:51
Genode 22.05 support -- * build/integration: use new hash for jpeg lib ; * build/integration: use "legacy_pc_usb_host_drv" instead of "x86_pc_usb_host_drv" (was true in 22.02 as well but forgot it in the previous commit) ; * that might disappear in the future, at which point I'll need to find out why I can't build the new usb-host ; TESTS (BARE METAL) -- * audio tested ok on a couple TPs ; * usb-hid tested ok on a couple TPs ; * acpica reset still no-go on TPs (and on TC?), same as in 22.02, turns out it crashes on start : "acpica: detected ec", followed by "quota guard <Ram> error... abort", and that does not go away even if the ram quota is increased to 150 MB ; check-in: 9939527bdc user: user tags: new-genode-rev, trunk
2022-10-04
12:45
Genode 22.02 support: * indexer: class Genode::Token now requires a second predicate -> add it ; * build/integration: seems 'platform_drv' is now named 'legacy_pc_platform_drv' -> adapt build ; * build system: default to gcc10 (not gcc8), now we're in sync with the Wiki ; * build system: another fix, in interface_private ; * build system: fix out-of-tree app builds (refer to the hog tree, not to the out-of-tree app) ; * build system: fix build of broker (only "haiku" apps should link against haiku.lib.so, not "GenodeExe" apps) ; check-in: b97d6aa6a2 user: user tags: new-genode-rev, trunk
2022-09-27
19:31
Genode 21.11 support: * Fix build basics (running late), how to find headers etc ; * Add support for official (GCC10-based) toolchain - various build fixes, stricter header requirements, use "genode world" foldername/hash for libav as per updated build directions, etc ; * Tweak nitpicker "focus", that fixes the build (that wasn't an issue in my other repo though) ; TESTING: I'm in a rush to get to 22.02 and test the block/vfs speed-ups, but jam t6 looks good in qemu at least ; check-in: af4cad46e4 user: user tags: new-genode-rev, trunk
2021-10-29
13:06
Genode 21.08 support: - Use new LibC foldername/hash in jam files ; - Modify USB-HID usage in jam files (the monolithic all-in-one usb_drv has been retired, must now package and refer to 2 distinct components, "usb_host_drv" and "usb_hid_drv") ; - TESTING: the past few weeks I had succeeded in getting USB mouse/kbd to work on my T410 (probably with the "bios handover" flag?), will test to check for regression when going from 21.05 to 21.08, looks good so far; QEMU testing is conclusive check-in: d33a06ff8d user: ttcoder tags: new-genode-rev, trunk
2021-06-14
19:57
Enable Mandelbrot and Clock; jam feels a little... imperfect, at times. check-in: 0ff682ea2b user: ttcoder tags: release, trunk
2021-06-10
16:00
Genode 21.05 support: - Jamrules: the toolchain now lives at /usr/local/..../21.05 (not 19.05 any more) ; - contrib: new jpeg and stdcxx libs so adjust "contrib" folder paths (also one change in Jamrules, for stdcxx headers). I'm now all caught up with Genode's latest and greatest. Will commit my "pthread" fix soon, and then resume talks. TESTING: demos, AutoCast, all seems fine in qemu and bare metal ; my old T410 still only has ps/2 mouse input though, maybe a regression in the USB driver ? or maybe using "BIOS handover" would help ? check-in: 55b1abfa99 user: ttcoder tags: new-genode-rev, trunk
2021-06-08
20:03
Genode 21.02 support: - seems "core-nova.o" is now named "core-nova.a" ; - re-enabled event_filter -- does not restore xray mode etc but should restore full mouse support ; - fixed routing mishap in config of platform_drv which was tolerated until now, but would now make it fail ; Off-repo notes: - updated terminal_log stuff for AC (connect directly to nitpicker, no longer use gui_fb) ; - regression of sorts: when set for an initial size of 800x600, the terminal 1) gets to full-screen size, on both qemu in bare metal (mildly annoying) and 2) gets in front of of the AC window (only on bare metal, not qemu), making it inaccessible ; both issues will be solved once I use a proper WindowManager probably ? - gcc6 adventures: gcc couldn't find the "this" pointer in a lambda inside platform_drv, so had to create a local var with a copy of "this" and have it captured by the lambda ; easy peasy once I understood the situation ; check-in: de16e88551 user: ttcoder tags: new-genode-rev, trunk
2021-06-07
15:31
Genode 20.11 support: - the audio driver is now named "pci_audio_drv" (instead of "audio_drv") ; - add support for USB-OHCI, might help with my T410 among others ; (or maybe the problem is due to the T410 using ps2 primarily, at the exclusion of USB, due to event_filter being remed out ?) ; - also did some heavy work dealing with pthreads and the like, but will commit only later check-in: c2093165a4 user: ttcoder tags: new-genode-rev, trunk
2021-06-02
19:08
Genode 20.08 support: - gui: apply new "Gui::" namespace in C++, tweak run files and so on ; the Genode release notes are of great help here ; - libroot and kinda-kernel: use Mutex instead of Lock ; - stdcxx: dodged a new update ; took (silly-)me a while to figure out I have to revert not only contrib/ but also repos/libports/stdcxx stuff! ; - grub2: got updated, so refactor my run files to handle the change cleanly ; - libc: git messed up bad (after doig "git checkout.."), took me a while to realize that the tons of errors I was seeing were due to the awful mess if made of the source tree ; apparently it got confused because the commit entailed moving files around ; had to start off clean with a "git clone" instead, sigh, par for the course with git ; BUG/REGRESSION: mouse/keyboard input via USB does not work ([init -> event_filter] Warning: no policy defined for label 'usb_drv -> ') ; only ps/2 input works; I must have missed (and messed) something, will look into it. check-in: d5036882ed user: ttcoder tags: new-genode-rev, trunk
2021-05-31
14:29
Genode 20.05 support: - Kinda-kernel: class Genode::Semaphore is now a NonCopyable, so tweak code to no longer use copy ctor/operator= (i.e. use std::map on pointers to structures, not directly on structure instances) ; - Jamrules: link against "ldso_so_support.lib.a" (new name, instead of "ldso-startup.lib.a") ; - Nitpicker: node type "configfile" is deprecated/obsoleted in 20.05, replace with config "ROM" instead ; (otherwise we get errors like "[init -> nitpicker] Warning: no policy defined for label 'global_keys_handler -> input'" ) ; TESTED up until now on qemu and real hardware. check-in: 885b477103 user: ttcoder tags: new-genode-rev, trunk
2021-05-28
19:39
Genode 20.02 support: The pthread/libc "warning" from 19.11 has turned into a crash of Haiku apps. I'll rewrite my code to use pthreads later on, but for now a stop-gap is a one-line "patch" of Genode. Added an assertion in start-up code, to check for the presence of the patch, make sure that pthread_self() does not return NULL indeed. The patch means "errno" is not set correctly, but we don't depend on it yet in the current scenarios. TESTS: seeing no regression with updated HDA driver, but no progression on AMD system either -- probably needs some tweaking, will look into it soon. check-in: f962414507 user: ttcoder tags: new-genode-rev, trunk
17:09
Genode 19.11 support: Initially got the "rom error" at runtime again, so adusted my jam files some more, to be a closer match to Genode's build system (i.e. generalize the "abi" stuff, similar to how we link against "libc.abi.so" instead of "lib.lib.so", and seemingly crucially, we now "cd" to the folder so that the linker can be provided with the very minimal lib filenames). Applications work as usual, except that at runtime I'm getting messages like this one a lot with the libc update: "[init -> Clock] Error: pthread_self() called from alien thread named 'main BApplication thread'..". Seems to cause no harm though (update: trouble came later, in 20.02). Likely related to this: https://github.com/genodelabs/genode/commit/2d55ac7174d0385649a6fa4d9bda2ab4d4cbdd74 -- "Note, any call to libc code from a non-pthread (beside the first entrypoint) is not supported." check-in: b5c37e7227 user: ttcoder tags: new-genode-rev, trunk
2021-05-24
16:08
Genode 19.08 support: - it's still possible to compile Genode with gcc6, with an additional tweak: need to rem out "Hex_range.." in libports/src/lib/libc/task.cc ; - libc raises a link/relocation error (relocation R_X86_64_PC32 against symbol `__libc_sigprocmask' can not be used) : need to edit contrib/libc-9252999ee23cfb811e707887ef05bf1283a41597/src/lib/libc/lib/libc/amd64/gen/sigsetjmp.S and apply this patch, which is similar to Genode's "cdefs-no-hidden.patch": - delete call __libc_sigprocmask - add call PIC_PLT(CNAME(_sigprocmask)) TESTED from t1 to t7 test levels, and AutoCast run scenario. check-in: 2737f3ffd0 user: ttcoder tags: new-genode-rev, trunk
09:06
Genode 19.02 and 19.05 support (might as well squash both in one commit): 19.02: changes timer driver's build location, but that has little to no bearing on jamfiles or on the wiki ; 19.05: adapt jamfiles for renaming of VESA FrameBuffer driver: fb_drv -> vesa_fb_drv ; adapt to new version of libav and zlib ; interestingly, 19.05 is the rev that switches from Gcc6 to Gcc8, but it's possible to keep compiling with Gcc6, at least this very version, so long as one keeps using the previous stdcxx (using a symlink hack), by passing an empty string to Session_label ctor (include/base/session_label.h, base/trace/types.h, etc), by remming out -Wno-error=implicit-fallthrough (gcc6 does not know that switch, unlike gcc8), and by disabling some "fatal" warnings concerning fallthrough (-Wno-attributes) ; added the latter to Jamrules as it's just the one harmless line, but as to the rest of it, I won't pollute the wiki with (more extensive) Haiku-only hacks only I have to use ; check-in: 5aeb4d01bc user: ttcoder tags: new-genode-rev, trunk
2021-05-22
15:28
Genode 18.11 : we'll consider this commit as the reference Genode 18.11 one, before upgrading in the next few days ; Libroot-alternate: enable build ; this implements a number of 'syscalls', which no longer need to be stubbed out, so adjust stub list (and make it subject to "layering") ; NodeRef.h seems to be CR-LF in the haiku source tree, adjust to unix line feeds ; add thread-safety guards in critical places to protect access to shared (static) vars, since we'll use this "alternate" libroot as an actual libroot in a live, multi-threaded OS ; Build jamfiles: factor out "contrib" package version numbers (and depot versions) to an easy-to-maintain auxiliary Jamrules include ; will come in handy when upgrading to Genode 19.x ; link against "ABI" of libc, as linking directly against the "LIB.so" will no longer work in 19.05 ; remove a stray call to "strip" (the host's toolchain, not the Genode toolchain !) that's been there for months, piggy-backing on top of genode-x86-objcopy ... seems it was causing no harm, but still ; add an undocumented "layer zero", to deal with particularly difficult build situations where even linking against libc is undesirable ; add BMediaFile in layer 7 ; InterfaceKit: fix initial painting of BWindow, which would remain previously black in some cases ; MediaKit: add jamfile (but not cpp's for now) ; check-in: 7e2c0234c7 user: ttcoder tags: new-genode-rev, trunk
2021-04-30
16:54
LEAK FIX in kinda-kernel: fix leak of Genode::Thread object (which leaks heap and a few capabilities) ; when a thread completes on its own, it now marks itself as "zombie", and is cleaned up shortly afterwards. OPTIM in Interface Kit: make painting/Invalidate much faster (less wasteful) ; maintain a "dirty rect" for the window, set it in Invalidate(), clear it after painting, and make sure painting occurs only within said rect's bounds; Canvas.SetOriginAndClipping() now takes two distinct parameters, as the view clipping/dirty rect might be separated from the view origin ; the work-around in Clock is now to call Invalidate(). TESTED on desktop, looks good. Sending an ISO to Dane tonight, but will continue committing this week's past changes, over the next few days. check-in: 86f65ae5f7 user: ttcoder tags: release, trunk