This report covers hrev57429 through hrev57493.
This report covers hrev57364 through hrev57428.
This report covers hrev57309 through hrev57363 (again a bit of a shorter month than average.)
This report covers hrev57257 through hrev57308.
This was a bit of a shorter month than usual (for me, at least.)
This report covers hrev57184 through hrev57256.
It’s worth noting: the main Haiku CI is currently offline as the developer who was hosting the build machine moved to a location with much slower internet. A new build machine and home for the CI has already been selected, but isn’t fully online yet, so the nightly builds are a bit behind at the moment.
As is the usual way of things, the monthly Activity Report is hereby combined with my Contract Report.
This report covers hrev57127 through hrev57183.
As is the usual way of things, the monthly Activity Report is hereby combined with my Contract Report.
This report covers hrev57061 through hrev57126.
As is the usual way of things, the monthly Activity Report is hereby combined with my Contract Report.
This report covers hrev56962 through hrev57061. It was quite a busy month!
As is the usual way of things, the monthly Activity Report is hereby combined with my Contract Report.
This report covers hrev56888 through hrev56961.
A few months after my contract with Haiku, Inc. began, I rewrote the implementation of the Haiku kernel’s condition variables (as opposed to our userspace condition variables, which are from POSIX.) As this new implementation has run in Haiku for over a year and shipped in the latest release with no sign of any remaining issues, I figured it is high time for a deep-dive on the API, its implementation history, and the design of the new implementation I wrote.
I expect this article will be of broader interest than just to Haiku’s community, because Haiku’s condition variables API has some notable (and powerful) features not found in those of other operating systems, and its implementation is thus likewise unique (at least, as far as I have been able to figure out.)