Vajíčka nelétala. Účastníci taky měli dost práce sami se sebou, aby se při té míře nachcanosti udrželi vůbec na nohou. To byla podívaná.
As it happens, we still use CVS in our operating system project (there are reasons for doing this, but migration to git would indeed make sense).
While working on our project, we occasionally have to do a full checkout of the whole codebase, which is several gigabytes. Over time, this operation has gotten very, very, very slow - I mean "2+ hours to perform a checkout" slow.
This was getting quite ridiculous. Even though it's CVS, it shouldn't crawl like this. A quick build of CVS with debug symbols and sampling the "cvs server" process with Linux perf showed something peculiar: The code was spending the majority of the time inside one function.
So what is this get_memnode() function? Turns out this is a support function from Gnulib that enables page-aligned memory allocations. (NOTE: I have no clue why CVS thinks doing page-aligned allocations is beneficial here - but here we are.)
The code in question has support for three different backend allocators:
1. mmap
2. posix_memalign
3. malloc
Sounds nice, except that both 1 and 3 use a linked list to track the allocations. The get_memnode() function is called when deallocating memory to find out the original pointer to pass to the backend deallocation function: The node search code appears as:
for (c = *p_next; c != NULL; p_next = &c->next, c = c->next)
if (c->aligned_ptr == aligned_ptr)
break;
The get_memnode() function is called from pagealign_free():
#if HAVE_MMAP
if (munmap (aligned_ptr, get_memnode (aligned_ptr)) < 0)
error (EXIT_FAILURE, errno, "Failed to unmap memory");
#elif HAVE_POSIX_MEMALIGN
free (aligned_ptr);
#else
free (get_memnode (aligned_ptr));
#endif
This is an O(n) operation. CVS must be allocating a huge number of small allocations, which will result in it spending most of the CPU time in get_memnode() trying to find the node to remove from the list.
Why should we care? This is "just CVS" after all. Well, Gnulib is used in a lot of projects, not just CVS. While pagealign_alloc() is likely not the most used functionality, it can still end up hurting performance in many places.
The obvious easy fix is to prefer the posix_memalign method over the other options (I quickly made this happen for my personal CVS build by adding tactical #undef HAVE_MMAP). Even better, the list code should be replaced with something more sensible. In fact, there is no need to store the original pointer in a list; a better solution is to allocate enough memory and store the pointer before the calculated aligned pointer. This way, the original pointer can be fetched from the negative offset of the pointer passed to pagealign_free(). This way, it will be O(1).
I tried to report this to the Gnulib project, but I have trouble reaching gnu.org services currently. I'll be sure to do that once things recover.
Took a tumble on the road today, swerving to avoid an ebike delivery guy that cut me off. I'm fine - scraped an elbow, and I think I'm going to have a pretty good bruise on my tailbone, but I successfully avoided the guy.
I know a bunch of people who think delivery e-bikers are some sort of menace, but the truth of it is that Toronto's bike lanes are terrible. Far too narrow, people parking in them and blocking them all the time. Half a lane wide, in place where there's four lanes for cars.
AT&T did that in the US. And probably other big corp.
Hunger games, but for a job.
I can't get the Z-Wave ZWA-2 device to pass through to a bhyve VM where I'm running Home Assistant because it only allows full PCI pass through of a device or USB controller. It does get exposed as a serial device which I can sorta pass through to byhyve, but it doesn't really work.
I was able to get a console on the HASS VM and figure out which serial device was matching com2 that I was connecting into it and I could connect from the host and pass through some ascii chars back and forth, but when HASS tried to talk to the device it kept saying there were errors talking to it. Very odd. Lights were blinking on the device though confirming communication of some sort was happening. I looked at the Z-Wave-JS code and saw it was using 115200,8n,0 essentially so that's what I used... no dice.
Someone on the FreeBSD forums suggested using a virtual null modem device inbetween and then using socat to connect to the other end of the virtual null modem cable, but that didn't work either.
However, I can configure HASS to talk to zwave-js-server running in a FreeBSD Jail as you can custom configure the websocket connection to point to anywhere instead of localhost. That did seem to work! It found the device and even did a firmware update on it. So it "works".
I need to clean up this setup because I'm literally running it as root at the moment and I'm using a git clone of their master branch 🥲
Now I just need to figure out how to ensure I can have a consistent serial device name in /dev so this doesn't break in the future.
Once that's sorted I'll have to write a blog post about it
github.com/zwave-js/zwave-js-s…
GitHub - zwave-js/zwave-js-server: Small server wrapper around Z-Wave JS to access it via a WebSocket
Small server wrapper around Z-Wave JS to access it via a WebSocket - zwave-js/zwave-js-serverGitHub
Yesterday G and I took her sister to the yearly Mexican Concert, at the nNational University's cultural center. It was, as usual, awesome, but for me the special treat was listening to one of my favorite orchestral pieces live for the first time. Now I'd like to share this beautifully violent masterpiece with you. 🎼😉
Silvestre Revueltas - Sensemayá
«Sensemayá» de Revueltas con la OFUNAM - Ciclos sinfónicos UNAM
Ciclos sinfónicos UNAM núm. 34Orquesta Filarmónica de la UNAMPrimera Temporada 2019Programa 523 de febrero de 2019Massimo Quarta, director artísticoDescarga ...YouTube
On Mastodon you can search just your own posts by including the phrase "from:me" in your search.
There are lots of these special phrases (called "operators") which let you customise your Mastodon search, so that you get a very specific set of search results.
You can see a complete list of Mastodon search operators in this guide:
➡️ fedi.tips/how-do-i-search-for-…
You can combine several operators in one search, or use a minus sign - before an operator to exclude it from the search.
How do I search for stuff on Mastodon? | Fedi.Tips – An Unofficial Guide to Mastodon and the Fediverse
An unofficial guide to using Mastodon and the Fediversefedi.tips
We interrupt this broadcast about a well known person being shot for a report of more regular school kids being shot.
When will Republicans come to the table about gun violence?
At least 3 students injured in shooting at Colorado high school: Officials - ABC News
abcnews.go.com/US/shooting-rep…
At least 4 students, including shooter, injured in shooting at Colorado high school: Officials
The suspect is believed to be among the injured, police said.Megan Forrester (ABC News)
Championing inclusive language
"Language reflects culture. It shapes how people perceive themselves and one another..."
tetralogical.com/blog/2025/09/…
Championing inclusive language - TetraLogical
Language reflects culture. It shapes how people perceive themselves and one another; whether they belong, whether they’re valued, and whether the space is designed with them in mind. Inclusive language isn’t just polite; it’s powerful.TetraLogical
reshared this
NEW: Programs for #Students With Hearing and Vision Loss Harmed by Trump’s Anti-Diversity Push
==
Federal funding for organizations that help students with hearing and vision loss across eight states will stop at the end of the month, according to letters sent by a top #Education Dept. official and obtained by ProPublica.
#news #kids #trump #government #DEI
propublica.org/article/trump-d…
Education Dept. Halts Funds to Programs for Deafblind Students Over DEI Concerns
Citing concerns about DEI, the U.S. Department of Education has halted funding for programs that support students with combined hearing and vision loss in eight states. “How low can you go?” one advocate asked. “How can you do this to children?”ProPublica
Basically I see 3 audio games shut down within well, as for sbyw, let's say about 1.5 years. And most of these shutdowns are just so uncalled for, though with the stw one I sympathise most.
Now the city of devision one though? Check out their discord and shit I tell you it's ridiculous. Sell a broken audio fps for fuckin' 1500 dollars. What????
Not even sbyw which is by far the greatest of those titles in my humble opinion would be worth 1.5k. O, and out of a sudden, yeah let's sell last shot too now! Maybe it's cuz they suddenly need to pay their apartments and blindy stupitity is the way to get that income from.
I'm speechless.
Anyone running #FreeBSD on one of Oracle's free tier?
I tried once, gave up. I don't recall the block.
Das Amtsgericht betonte, bei der Aktion seien lediglich bestehende Schmierereien übermalt worden. Um Sachbeschädigung handele es sich nicht, weil sich das Erscheinungsbild des Hauses nicht "im rechtsgutsspezifischen Sinne" verändert habe.
📝 ndr.de/nachrichten/niedersachs…
Göttingen: Übermalen von Hakenkreuzen laut Gericht keine Sachbeschädigung
Das "Bündnis gegen Rechts" in Göttingen hatte Hakenkreuze in einem Wohnhaus übermalt. Die Hausverwaltung erstattete Anzeige.ndr.de
What’s New in TalkBack Version 16.1 - Accessible Android
Google has started rolling out version 16.1 of the TalkBack screen reader. Here’s what’s new in this release. The rollout reaches devices in batches and mayEditorial Staff (Accessible Android)
Now Playing
youtube.com/watch?v=R0IUR4gkPI…
Wu-Tang Clan - Protect Ya Neck (Official HD Video)
Official HD Video for "Protect Your Neck” by Wu-Tang ClanListen to Wu-Tang Clan: https://Wu-TangClan.lnk.to/listenYD Watch more videos by Wu-Tang Clan: htt...YouTube
Wow. At the time, it was a shooting. Now, it's a death. How horrible. What a horrible day. I don't care whether he was a conservative. By all accounts this man felt like a decent debater from what I heard, even if his ideas were divisive to some, that's no reason to go around killing him. Jeesh, people lost all care and empathy today, they just think, "oh, this guy says hateful stuff, he deserves to die!" Well nobody does. Life is a treasure and any shooting without self-defense justifications is senseless. Gosh. So distracted from work stuff, must get back to it for another hour.
"They erased the new Banksy mural in London. But the stain remains." Adrian and Shane (on Bluesky)
"The stain remains"
I'll say.
Archos
in reply to Robin Bedrunka 🐞 • • •Robin Bedrunka 🐞
in reply to Archos • • •Archos
in reply to Robin Bedrunka 🐞 • • •Ještě když jsem viděl video, jak tam včera Okamura běhal s tou motorovou kosou 🤦