ChanServ changed the topic of #haiku to: Open-source operating system that specifically targets personal computing. | https://haiku-os.org | Nightlies: https://download.haiku-os.org | Bugtracker: https://dev.haiku-os.org | SCM: https://git.haiku-os.org/ | Logs: https://oftc.irclog.whitequark.org/haiku | Matrix: #haiku:matrix.org | XMPP: #haiku%irc.oftc.net@irc.jabberfr.org
dby has quit [Quit: Vision[]: i've been blurred!]
maylay has joined #haiku
maylay_ has quit [Ping timeout: 480 seconds]
TMM has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
TMM has joined #haiku
HaikuUser2 has joined #haiku
HaikuUser2 has quit []
<scanty> How does one go back to the system theme in "Theme Manager"?
<scanty> oh, i see it has a haiku mode, but it comes with problems.
wicknix has joined #haiku
mmu_man has quit [Ping timeout: 480 seconds]
janus has quit [Quit: janus]
<nekobot> [haiku/haiku] waddlesplash pushed 1 commit to master [hrev58727] - https://git.haiku-os.org/haiku/log/?qt=range&q=a97c4affc9c9+%5Eed5c4d8a2d2a
<nekobot> [haiku/haiku] a97c4affc9c9 - kernel: Rename basic "int" functions to "interrupt" (or at least "intr").
HaikuUser2 has joined #haiku
HaikuUser2 has quit []
kinkinkijkin has joined #haiku
Nasina has quit [Read error: Connection reset by peer]
Nasina has joined #haiku
Nasina has quit [Read error: Connection reset by peer]
dby has joined #haiku
Nasina has joined #haiku
Nasina has quit [Read error: Connection reset by peer]
Nasina has joined #haiku
Nasina has quit [Read error: Connection reset by peer]
<Begasus[m]> morning peeps
<erysdren> morning Begasus
<Begasus[m]> morning erysdren (@_oftc_erysdren:matrix.org)
Nasina has joined #haiku
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/c121c38b22af...ec831945bc55
<nekobot> • Begasus (ec831945): clamav_gui, new recipe (#11884)
Nasina has quit [Read error: Connection reset by peer]
Nasina has joined #haiku
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/ec831945bc55...3fda72264aaf
<nekobot> • Begasus (3fda7226): alligator, bump version (#11898)
dby has quit [Quit: Vision[]: i've been blurred!]
<Begasus[m]> I tend to forget to bump those version as I run master builds on some of those already :)
Nasina has quit [Read error: Connection reset by peer]
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/3fda72264aaf...76121eeb7ba9
<nekobot> • Begasus (76121eeb): neochat, bump version (#11899)
Nasina has joined #haiku
Nasina has quit [Read error: Connection reset by peer]
Nasina has joined #haiku
HaikuUser2 has joined #haiku
HaikuUser2 has quit []
<Begasus[m]> waddlesplash got an idea why I'm getting OOM quite often lately? cc1plus: out of memory allocating 273408 bytes after a total of 0 bytes
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/76121eeb7ba9...ec2b95918311
<nekobot> • Begasus (ec2b9591): tokodon, bump version (#11900)
vdamewood has quit [Quit: Textual IRC Client: www.textualapp.com]
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/ec2b95918311...b7f40bd0d9ea
<nekobot> • Begasus (b7f40bd0): libkdegames_kf6, bump version (#11901)
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/b7f40bd0d9ea...6195a4b1e226
<nekobot> • Begasus (6195a4b1): knetwalk, bump version (#11902)
<Begasus[m]> patch upstreamed for the last one, should be good for the next version (only need to patch for Haiku icons, can't push a change there as they are pretty much keen on keeping the breeze style) :)
dodo75 has quit [Quit: Vision[]: i've been blurred!]
dodo75 has joined #haiku
freddietilley has joined #haiku
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/6195a4b1e226...7ddbc155cc97
<nekobot> • Begasus (7ddbc155): libkgapi_kf6, bump version (#11903)
lanodan has joined #haiku
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/7ddbc155cc97...757a60501ace
<nekobot> • Begasus (757a6050): kdiamond, bump version (#11905)
erysdren has quit [Quit: Konversation terminated!]
pvalue has joined #haiku
<nekobot> • Begasus (b46563ff): kio_gdrive_kf6, bump version (#11906)
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/757a60501ace...b46563ff3da0
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/b46563ff3da0...8f39bb037ed1
<nekobot> • Begasus (8f39bb03): markdownpart_kf6, bump version (#11907)
pvalue has quit [Quit: Vision[]: i've been blurred!]
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/8f39bb037ed1...bdab1d69cf4e
<nekobot> • Begasus (bdab1d69): kmime_kf6, bump version (#11908)
<Begasus[m]> will be busy today :)
HaikuUser has quit [Quit: Vision[]: i've been blurred!]
<nekobot> • Begasus (0880890b): kpkpass_kf6, bump version (#11909)
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/bdab1d69cf4e...0880890bd3cf
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/0880890bd3cf...9dfe91f2bf5c
<nekobot> • Begasus (9dfe91f2): kitinerary_kf6, bump version (#11910)
Anarchos has joined #haiku
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/9dfe91f2bf5c...eb309af1ab63
<nekobot> • Begasus (eb309af1): khealthcertificate_kf6, bump version (#11911)
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/eb309af1ab63...806e5eaf3b1e
<nekobot> • Begasus (806e5eaf): kopeninghours_kf6, bump version (#11912)
<nekobot> • Begasus (a40e6b62): kpublictransport_kf6, bump version (#11913)
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/806e5eaf3b1e...a40e6b628c8c
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/a40e6b628c8c...87869ae959aa
<nekobot> • Begasus (87869ae9): kosmindoormap_kf6, bump version (#11914)
ChaiTRex has quit [Remote host closed the connection]
ChaiTRex has joined #haiku
dpirate has quit [Remote host closed the connection]
dpirate has joined #haiku
Nasina has quit [Read error: Connection reset by peer]
Nasina has joined #haiku
<Anarchos> hello
<nekobot> • Begasus (dc3ab93a): itinerary, bump version (#11915)
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/87869ae959aa...dc3ab93afc23
<waddlesplash> Begasus[m]: re. oom, are you on nightly or beta?
<Begasus[m]> beta still waddlesplash
<Begasus[m]> hi Anarchos
<waddlesplash> system has high memory usage when this happens?
<Begasus[m]> yeah but not extreme
<Begasus[m]> closed WebPositive and IceWeasel earlier, that helped
<Begasus[m]> it doesn't happen always also, should try to see if I can reproduce this with something reliable
<waddlesplash> does the memory usage go down to more normal amounts after stopping the build?
<waddlesplash> Iceweasel uses a ton of RAM
<waddlesplash> diver reported similar issues recently but on nightlies, I had figured it was a regression but maybe it isn't
<Begasus[m]> yeah, it peaks in the build, but once that stage is passed it turns to normal usage
<Begasus[m]> guess it's a bit down to how many tabs are open in iceweasel also
<Begasus[m]> bugger, if you want it to happen it won't be triggered
mmu_man has joined #haiku
Nasina has quit [Read error: Connection reset by peer]
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/dc3ab93afc23...00ffac022a73
<nekobot> • Begasus (00ffac02): libkomparediff2, bump KF6 version, rename recipes (#11916)
Nasina has joined #haiku
dpirate has quit [Remote host closed the connection]
dpirate has joined #haiku
Nasina has quit [Read error: Connection reset by peer]
Nasina has joined #haiku
Nasina has quit [Read error: Connection reset by peer]
BrunoSpr has joined #haiku
freddietilley has quit [Ping timeout: 480 seconds]
freddietilley has joined #haiku
HaikuUser has joined #haiku
HaikuUser has quit []
BrunoSpr has quit [Quit: Vision[]: Ich wurde eingeweicht!]
BrunoSpr has joined #haiku
BrunoSpr has quit []
<nekobot> • Begasus (cc940649): libkexiv2_kf6, bump version (#11917)
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/00ffac022a73...cc9406490b5a
<nekobot> [haiku/haiku] waddlesplash pushed 2 commits to master [hrev58728] - https://git.haiku-os.org/haiku/log/?qt=range&q=282c3b6e08ef+%5Ea97c4affc9c9
<nekobot> [haiku/haiku] 70c25855f4ae - kernel: Move convertutf to utils.
<nekobot> [haiku/haiku] 282c3b6e08ef - kernel/slab: Set write protection on MemoryManager areas.
<nekobot> [haiku/haiku] waddlesplash pushed 1 commit to master [hrev58729] - https://git.haiku-os.org/haiku/log/?qt=range&q=139c35c9b938+%5E282c3b6e08ef
<nekobot> [haiku/haiku] 139c35c9b938 - ProcessController: Fix return type of UpdateSituation.
<nekobot> [haiku/haiku] waddlesplash pushed 1 commit to master [hrev58730] - https://git.haiku-os.org/haiku/log/?qt=range&q=ed8ca688251b+%5E139c35c9b938
<nekobot> [haiku/haiku] ed8ca688251b - ProcessController: Use more BString::SetToFormat.
freddietilley has quit [Ping timeout: 480 seconds]
freddietilley has joined #haiku
xet7 has quit [Ping timeout: 480 seconds]
xet7 has joined #haiku
<Anarchos> again, a very nice activity report for february !!
<Begasus[m]> +1
<Begasus[m]> not time for beta6 yet? :°
<waddlesplash> it hasn't even been 6 months since beta5! :P
<Begasus[m]> progress increased also :P ;)
MisthaLu has joined #haiku
<Begasus[m]> reports still good :) (buildmasters*)
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/cc9406490b5a...66f0d20dcfd6
<nekobot> • kenmays (66f0d20d): libmahjongg: added 24.12.3 for KF6/QT6 (#11887)
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/66f0d20dcfd6...a0bf609f4d86
<nekobot> • Begasus (a0bf609f): libkeduvocdocument, new KDE library (used in games) (#11919)
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/a0bf609f4d86...0574de90ae72
<nekobot> • Begasus (0574de90): kshisen, bump version, switch to KF6 (#11920)
nexus6 has joined #haiku
amol[m] has joined #haiku
nephele has joined #haiku
<nexus6> did anyone tried to install Jekyll recently? I get a compilation error which did not happen before (a whie ago tbh)
nephele has quit [Quit: Vision[]: i've been blurred!]
nephele has joined #haiku
vezhlys has joined #haiku
nexus6 has quit [Ping timeout: 480 seconds]
nipos has left #haiku [Disconnected: Received SIGTERM]
nipos has joined #haiku
n_crm has quit [Ping timeout: 480 seconds]
Anarchos has quit [Remote host closed the connection]
Nasina has joined #haiku
<Begasus[m]> re
HaikuUser has joined #haiku
HaikuUser has quit []
freddietilley has quit [Quit: WeeChat 4.5.0]
Nasina has quit [Read error: Connection reset by peer]
Nasina has joined #haiku
Nasina has quit [Read error: Connection reset by peer]
nexus6 has joined #haiku
nephele has quit [Quit: Vision[]: i've been blurred!]
Nasina has joined #haiku
<Begasus[m]> man ... the whole day Webpositive went fine with github, now it's a pain :(
<Begasus[m]> hi nexus6 , what's this jekyll thing?
<Begasus[m]> can't find it in haikuports?
<Begasus[m]> repology mentions ruby for that, me not going there (not familiar with ruby) :)
nexus6 has quit [Ping timeout: 480 seconds]
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/0574de90ae72...27212158b376
<nekobot> • Begasus (27212158): kdeedu-data, add new KF6 recipe, required data for games (#11921)
kinkinkijkin has quit [Quit: Leaving]
Nasina has quit [Read error: Connection reset by peer]
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/27212158b376...b44842e05990
<nekobot> • Begasus (b44842e0): khangman, KDE hangman game (#11922)
Nasina has joined #haiku
n_crm has joined #haiku
Nasina has quit [Read error: Connection reset by peer]
neoncortex has quit [Ping timeout: 480 seconds]
<nekobot> [haiku/haiku] waddlesplash pushed 2 commits to master [hrev58731] - https://git.haiku-os.org/haiku/log/?qt=range&q=3d196bd28c39+%5Eed8ca688251b
<nekobot> [haiku/haiku] 92e002641e0e - kernel/x86_64: Clear the lower half of the kernel PML4 in LA57 mode.
<nekobot> [haiku/haiku] 3d196bd28c39 - kernel/x86_64: Handle LA57 paging in VMTranslationMap page table walks.
TMM has quit [Quit: https://quassel-irc.org - Chat comfortably. Anywhere.]
TMM has joined #haiku
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/b44842e05990...121c69c5132f
<nekobot> • kenmays (121c69c5): Kmahjongg: bump version (#11918)
Nasina has joined #haiku
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/121c69c5132f...d12c9b543b5b
<nekobot> • Begasus (d12c9b54): ksquares, bump version, switch to KF6 (#11923)
Nasina has quit [Read error: Connection reset by peer]
FreeFull has joined #haiku
neoncortex has joined #haiku
wicknix has quit [Read error: Connection reset by peer]
wicknix has joined #haiku
nexus6 has joined #haiku
Nasina has joined #haiku
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/d12c9b543b5b...8be207501692
<nekobot> • Begasus (8be20750): konsole_kf6, bump version (#11924)
<nekobot> • Begasus (a6d8a8a2): klickety, bump version, switch to KF6 (#11925)
<nekobot> [haikuports] Begasus pushed 1 commit to branch master: https://github.com/haikuports/haikuports/compare/8be207501692...a6d8a8a27e82
Nasina has quit [Ping timeout: 480 seconds]
Anarchos has joined #haiku
tigerbrother has quit [Quit: Ping timeout (120 seconds)]
tigerbrother has joined #haiku
nephele has joined #haiku
nexus6 has quit [Quit: Vision[]: i've been blurred!]
<nephele> waddlesplash: but but, we have so many improvements in the nightlies :D
<waddlesplash> that's always true though, lol
<nephele> gonna work a bit on webkit patches. those don't need the nightlies :P
* Anarchos will try again his bios drive checksum PR with recent master hrev.
Nasina has joined #haiku
Nasina has quit [Remote host closed the connection]
Nasina has joined #haiku
* Begasus[m] is closing down soon
<Begasus[m]> enough flooding the channel for one day :P
jmairboeck has joined #haiku
HaikuUser has joined #haiku
HaikuUser has quit [Quit: Vision[]: i've been blurred!]
<Begasus[m]> cu peeps!
erysdren has joined #haiku
<nephele> how am i supposed to test local website changes? I don't see a hugo package
<waddlesplash> we don't have one because hugo needs go
<nephele> so... no way to test changes? :/
<waddlesplash> nope, you'll have to use a Linux VM or something
<nephele> that sounds majorly inconvenient :)
<waddlesplash> it is what it is
<waddlesplash> at the time we were switching off Drupal I don't think any of the major static site generators had much chance of working on Haiku
<waddlesplash> so that wasn't a factor in the choice
<waddlesplash> nowadays the node.js-based ones probably would, with some effort
<nephele> node js sounds even worse than go
<nephele> my webkit build just build the web inspector sucessfully
<nephele> i didn't tell it to do that, so i was suprised. wondering if there is any way to invoke it
<Anarchos> waddlesplash i could install tiddlywiki with node.js on haiku
<dovsienko> waddlesplash: www.tcpdump.org uses two shell scripts to generate the pages, and there is no JavaScript
<dovsienko> there's a bit of PHP and mod_rewrite on top of the man page collection, but that's a matter of style and convenience, not the contents
MisthaLu has quit [Quit: Leaving]
<nephele> we don't need to switch the generator because of this...
<nephele> no javascript is not a good thing in and of itself either. It's good to not use it where it is uneccesary, but it should be used when relevant
HaikuUser has joined #haiku
HaikuUser is now known as jochwehg_
Nasina has quit [Ping timeout: 480 seconds]
* jochwehg_ is idle: BRB
<dovsienko> nephele: I agree with that, but millions of developers that produce web sites that take 5 seconds to respond to a mouse click probably have missed the point
<nephele> sure, but that isn't our websites ;)
<dovsienko> keep it this way then
frkazoid333 has quit [Read error: Connection reset by peer]
frkazoid333 has joined #haiku
Nasina has joined #haiku
orealis has quit [Quit: yap...]
tqh has joined #haiku
<waddlesplash> the website is statically generated and served via a CDN
<waddlesplash> the generation is also quite fast
<waddlesplash> so yes that's not a concern
orealis has joined #haiku
Nasina has quit [Read error: Connection reset by peer]
Nasina has joined #haiku
HaikuUser has joined #haiku
HaikuUser is now known as grexe
<grexe> somebody can help me with a pesky bogus pointer issue? want to show this at PKM Summit 2025 but some code that was working fine before doesn't seem to like the new malloc of latest Haiku Revs...
<waddlesplash> as always: use the guarded heap lol
tqh has quit [Quit: Leaving]
<waddlesplash> basically any memory problem on Haiku like that, first thing to try is the guarded heap
<grexe> oh you're there @wadllesplash, please I need an experienced memory wrangler, Clang is giving me the creeps.
<grexe> Github link incoming
<waddlesplash> creeps? what does that mean lol
<grexe> it's an include detector, works fine but crashes on exit:( simply launch with
<grexe> bin/bin/SenCodeExtractor <any cpp file>
<waddlesplash> did you try with the guarded heap?
<grexe> yeds
<grexe> always get a bogus pointer, no matter what I try. I guess it's some mixup with the smart pointers used by clang API.
<grexe> just check out the repo and issue a make (no need to the build.sh) in `sensei/src/extraction/sourcecode-extractor`
<waddlesplash> what happens with the guarded heap?
<grexe> i don't get any more info and it still crashes, but with a little more grace.
<waddlesplash> what does the message say?
<waddlesplash> in the debug report
<grexe> Active Threads:
<grexe> thread 14079: team 14076 debug task
<grexe> thread 14076: SenCodeExtractor (main)
<grexe> state: Call (generic segfault)
<grexe>
<grexe> FrameIPFunction Name
<grexe> -----------------------------------------------
<grexe> 000000000x78cd843267_kern_debugger + 0x7
<grexe> Disassembly:
<grexe> _kern_debugger:
<grexe> 0x00000078cd843260: 48c7c0eb000000 mov $0xeb, %rax
<grexe> 0x00000078cd843267: 0f05 syscall <--
<grexe>
<grexe> 0x7f6a197fb2200x78cd8cdafdpanic(char const*, ...) + 0xad
<grexe> 0x7f6a197fb2300x7fff5e53c23ccommpage_signal_handler + 0x2c
<grexe> 0x7f6a197fb7c00x78cd8cdc82guarded_heap_area_allocation_for(void*, int&) + 0x32
<grexe> 0x7f6a197fb8000x78cd8ce3dfheap_free(void*) + 0x6f
<grexe> 0x7f6a197fb8200x362b0312d2IncludeFinder::~IncludeFinder(void) + 0x24
<grexe> Variables:
<grexe> this: 0x7f6a197fc2a0 {
<grexe> includes: 0x9a56f09fe0
<grexe> compiler: 0x7f6a197fb920
<grexe> }
<grexe>
<grexe> 0x7f6a197fb8800x1aebdfe47efclang::Preprocessor::~Preprocessor() + 0x56f
<waddlesplash> don't paste whole reports here
<waddlesplash> use a pastebin
<grexe> yup sorry
<waddlesplash> this is with MALLOC_DEBUG=gr?
<grexe> just used g, wait...
<grexe> I should actually work on the presentation, but coding is so much more fun (normally)...;-0
<waddlesplash> it looks like free() was passed on an invalid address
<grexe> but I don't free manually, must come from clang tooling APi...
<grexe> would be cool to fix this in time for the presentation, would look nice...
<waddlesplash> your repo does not build here
<waddlesplash> App.cpp:19:10: fatal error: Sensei.h: No such file or directory
<waddlesplash> running "make" in sourcecode-extractor
<grexe> oh darn, yes these are external includes you need to get from the API repo and put it in local includes $(HOME)/config/non-packaged/include/sen
<waddlesplash> I would rather not put random stuff in my non-packaged
<waddlesplash> why not use a setup where the two repos can use each other?
<waddlesplash> BTW, clang and GCC both have flags to their main CLIs to dump a file's includes list
<grexe> but that path is meant for custom includes.
<grexe> SEN it meant to be checked out side by side and use common includes, they will be packaged as a developer-package later.
<waddlesplash> sure, and I just don't like putting random stuff in it
<waddlesplash> anyway I downloaded just the one header
<grexe> I wanted a more capable solution that would be extensible, and the clang tooling API is really awesome.
<grexe> oc, np, you just need to fix the include path and you're reeady to go.
<waddlesplash> grexe: I get a very different crash
<waddlesplash> state: Call (tried to free 0x6b16fabfa0 which points at page 58 which is not marked in use)
<waddlesplash> so, this is properly detecting a double-free
<waddlesplash> and the original crash from the bsdalloc also has a similar message
Nasina has quit [Read error: Connection reset by peer]
<grexe> wow I guess that's progress ;0
<grexe> but why is this different @waddlesplash?
<waddlesplash> no idea
<waddlesplash> I have clang 18 installed
<waddlesplash> do you have some other version?
<grexe> no I mean it sounds quite similar to my crash.
<grexe> same version here
jmairboeck has quit [Quit: Konversation terminated!]
Nasina has joined #haiku
<grexe> trying clang20 now, doesn't work anyway.
<waddlesplash> grexe: ClangWrapper also frees the path object
jochwehg_ has quit [Quit: Vision[]: i've been blurred!]
<waddlesplash> that's all, removing the delete from there fixes the problem
<waddlesplash> I just commented out "delete fSourcePath;" in ~ClangWrapper
<waddlesplash> no more crash
nephele has quit [Quit: Vision[]: i've been blurred!]
<grexe> darn, I could swear I tried that...
<grexe> but I've upgraded to clang-20 in the meantime and got the same crash, so with the fix I am up to date and running:)
<grexe> but why would it free my path object? hmmm...
<waddlesplash> who knows. either way, good to know the new allocator catches these sorts of bugs much more easily :)
<grexe> yes, that was really a milestone for Haiku!
<grexe> oh no, still getting that same error, let me check. Don't think it's the Clang-20 update...
neoncortex has quit []
<grexe> sure you didn't change anything else @waddlesplash? and does it run without the heap guard?
Nasina has quit [Ping timeout: 480 seconds]
jhj has joined #haiku
<jhj> Hi, Haiku is doing something really weird for me. :(
grexe has quit [Quit: Vision[]: i've been blurred!]
<jhj> I'm using dlopen/dlsym to load libhwloc, so I don't have to have a hard dependency on hwloc.
<jhj> This works pretty much everywhere - AIX, Linux, FreeBSD, macOS, Solaris, illumos, etc.
<jhj> On Haiku, it's giving me some output from ... somewhere - not my test program, and not working.
<jhj> resolve symbol "hwloc__xml_import_diff" returned: -2147478780
<jhj> I'm not doing anything with that symbol myself.
<jhj> One moment and I'll upload my test program.
AlienSoldier has joined #haiku
<jhj> Haiku has hwloc2 the package.
<jhj> cc -DTESTING test.c && ./a.out
<jhj> NOTICE: '/boot/system/lib/libhwloc.so.15' is valid 64-bit ELF.
<jhj> Found '/boot/system/lib/libhwloc.so.15'
<jhj> resolve symbol "hwloc__xml_import_diff" returned: -2147478780
<jhj> ERROR: hwloc_get_type_depth failure.
grexe has joined #haiku
grexe has quit [Quit: Vision[]: i've been blurred!]
<jhj> Trying to get just the version does work. I'm not so concerned with the "hwloc_get_type_depth failure" message, because that's just my error handling.
<jhj> But I don't want it spamming "resolve symbol returned -2147478780" stuff to stderr.
Nasina has joined #haiku
<jhj> Oh, weird. Haiku has a /boot/system/lib/hwloc/hwloc_xml_libxml.so file, and if I load that also, no stderr message at least.
<waddlesplash> that probably means hwloc__xml_import_diff was not found in the library you tried to dlopen
<waddlesplash> nor in any of its dependents
<waddlesplash> so we just failed loading
<jhj> But I'm not sure why I should have to do that.
<waddlesplash> probably means libhwloc isn't linked properly or something
<jhj> waddlesplash: I'm seeing this magical /boot/system/lib/hwloc/hwloc_xml_libxml.so only on Haiku. On every other OS I've tested (AIX, FreeBSD, Linux, macOS, Solaris, etc.) there is only libhwloc.so.
<waddlesplash> what version do you have installed, hwloc or hwloc2?
<jhj> hwloc2
<waddlesplash> do the other OSes have hwloc1?
<waddlesplash> either way this deserves a bug report at HaikuPorts
<jhj> No, hwloc2 everywhere. hwloc1 is EOL since forever, not sure why you package it.
<waddlesplash> anyway error -2147478780 is just "symbol not found"
<jhj> https://www.open-mpi.org/software/hwloc/ancient/ has even v2.8 as "ancient" :)
<waddlesplash> probably because something still needed it 6 years ago and nobody's removed it and/or dependencies since :)
<jhj> waddlesplash: So I'm assuming that dlopen libhwloc should automatically open the dependencies?
<jhj> Or really, why is there a dependency at all? :)
<waddlesplash> yes, and it isn't doing that here because the dependences are declared wrong
<waddlesplash> I have no idea, but inside the recipe, we just configure and build
<waddlesplash> so this is what hwloc itself decided to do
<jhj> LD_PRELOAD="/boot/system/lib/libhwloc.so.15.7.0 /boot/system/lib/hwloc/hwloc_xml_libxml.so" ./a.out
<jhj> NOTICE: '/boot/system/lib/libhwloc.so.15' is valid 64-bit ELF.
<jhj> ERROR: hwloc_get_type_depth failure.
<jhj> Found '/boot/system/lib/libhwloc.so.15'
<jhj> Still doesn't work that way, but it at least doesn't spam stderr with stuff.
<jhj> waddlesplash: Is there some Haiku-specific way I can get a count of cores (actual processors, so excluding hyperthreads)?
<waddlesplash> I don't know that we expose the CPU topology to userland
<waddlesplash> why would you need it?
<jhj> waddlesplash: Well, this isn't the Haiku case (because Haiku doesn't have POSIX real-time extensions), but, for real-time simulation.
<waddlesplash> just set REALTIME or greater priority on your threads
<waddlesplash> the scheduler should, ideally, take care of the rest
* Anarchos is looking for the command to list the hard drives/usb drives
<waddlesplash> but warning that you really have to know what you are doing if you do that, because unless "realtime" threads yield one way or another, you can lock up the whole OS by having realtime threads eat all CPU!
<jhj> waddlesplash: Well, what we do is we create a high-priority watchdog thread at the highest realtime priority, up to seven other threads with SCHED_RR, and then a lower-priorty watchdog thread. The low priority watchdog periodically talks to the high-priority watchdog, and in case it misses 5 checkins, it calls a recovery procedure that drops the real-time priority from the work threads.
<jhj> And yes, I'm very well aware of the issues.
<jhj> We have to check the number of CPUs available (which is easy enough) to make sure that the users who refuse to read documentation and enable RT don't get completely locked out of their systems.
<jhj> If they have just 4 CPUs or something and configure 4 or more RT workers.
<waddlesplash> you can easily get CPU count via system_info struct but this does not indicate HT
<jhj> Right, and if two realtime threads get scheduled on different hyperthreads on same physical CPU, it causes jitter, and the SCHED_RR algorithm (at least everywhere I've tested) doesn't prefer any kind kind of topology by default.
<waddlesplash> the Haiku thread scheduler is topology-aware
<jhj> hwloc has some nice tooling to do this - hwloc-distrib and hwloc-bind.
<jhj> But what I really want to do is to be able to provide the user a warning that they are probably not doing what they think they are doing.
<jhj> If they configure 7 workers on a "12 CPU" system that is really "6 cores, SMT2".
<dovsienko> my usual solution to that is disabling HT in the BIOS setup
<mmu_man> Hmm I'm getting "Too many open files" quite often today
<jhj> Yeah, if you know about it, that's all good. I want to be able to provide a warning to users who refuse to read the documentation and turn on RT :)
<waddlesplash> mmu_man: there's some open tickets about this with Tracker. I fixed a bug recently where Tracker would just crash in that situation
<waddlesplash> it seems to have a FD leak somewhere
tktech284 has joined #haiku
<mmu_man> OK
tktech28 has quit [Ping timeout: 480 seconds]
tktech284 is now known as tktech28
<jhj> waddlesplash: hwloc is pretty neat. Let's say you want to distribute N tasks equally, you can run hwloc-distrib N (--taskset gives you Linux taskset parameters). --single is for binding each to a single CPU.
<jhj> `hwloc-distrib 7 --taskset | hwloc-calc -q -H package.core | uniq -c` will tell me that I've overcommitted cores.
<jhj> (6-core SMT2)
<PulkoMandy> get_cpu_info has all the topoloygy info for the cpu (that was added by pdziepak a long time ago)
Nasina has quit [Read error: Connection reset by peer]
Anarchos has quit [Quit: Vision[]: i've been blurred!]
Nasina has joined #haiku
<jhj> Hrm, where is that documented, and is there a userland tool for it?
<jhj> The hwloc port should be updated to use it, so lstopo would work, since a lot of things use libhwloc to get the topology in a cross-platform way :)
<jhj> Intel TBB and also the base LLVM OpenMP runtime use libhwloc to know how to distribute threads.
<nekobot> [haiku/haiku] waddlesplash pushed 1 commit to master [hrev58732] - https://git.haiku-os.org/haiku/log/?qt=range&q=0d73795fc9ee+%5E3d196bd28c39
<nekobot> [haiku/haiku] 0d73795fc9ee - libroot/malloc: Make the guarded heap handle bogus pointers better.
<waddlesplash> PulkoMandy: it does?
<waddlesplash> ah, no, it doesn't, but there is another method right next to it that I missed: get_cpu_topology_info
<waddlesplash> so, there we go
<jhj> waddlesplash: Hrrm. ProcessController doesn't seem to understand the topology. If I start Haiku under qemu/kvm and use `-smp maxcpus=12,sockets=1,cores=6,threads=2` it shows I have 12 individual processors, and libhwloc2's lstopo utility also shows I have 12 individual processors. Let me see what get_cpu_topology_info does. :)
<waddlesplash> those 12 processors will all have unique APIC IDs
<waddlesplash> and will all behave as unique processors, from an OS perspective
<waddlesplash> so to the OS it's all managed the same
<waddlesplash> the topology info will show the real story
Nasina has quit [Read error: Connection reset by peer]
<jhj> Well, that is somewhat of an issue because we don't, ideally, want two workers threads sharing a physical core.
<jhj> Not the end of the world, just not ideal.
<waddlesplash> Linux behaves the same way I am pretty sure
<waddlesplash> i.e. in most monitors you will see "threads" as CPUs, not "cores"
<jhj> Yes, by default, but that's where libhwloc comes in.
<waddlesplash> okay, well ProcessController is just the same then
<jhj> Looks like I can figure it out from get_cpu_topology_info
<jhj> waddlesplash: I'll look into what it might take to get proper libhwloc support too upstream.
<waddlesplash> nice, thanks!
<jhj> That's the host on top, and the bottom is exposing the same topology to Haiku.
<jhj> I'm sure get_cpu_topology_info will be fine, it's just not nicely cross-platform.
<jhj> Nice, this is pretty easy, there is B_TOPOLOGY_SMT and B_TOPOLOGY_CORE.
<jhj> And PACKAGE and a ROOT. I'm assuming that a NUMA system might have multiple roots?
<jhj> Luckily I'm just going to count them.
<waddlesplash> appears to be an example use
<jhj> Thanks, but I just got it! :)
<jhj> ~> gcc topo.c && ./a.out
<jhj> CPU cores: 6
<jhj> CPU threads: 12
<jhj> appreciate the pointer.
Nasina has joined #haiku
Nasina has quit [Read error: Connection reset by peer]
Nasina has joined #haiku
Nasina has quit [Read error: Connection reset by peer]
nipos has left #haiku [Disconnected: Replaced by new connection]
nipos has joined #haiku