!VRULIdgoKmKPzJZzjj:nixos.org

Nix Hackers

901 Members
For people hacking on the Nix package manager itself189 Servers

Load older messages


SenderMessageTime
18 Mar 2025
@Ericson2314:matrix.orgJohn EricsonI am happy to redo the file split after your stuff is landed18:40:00
@Ericson2314:matrix.orgJohn Ericson Also I am unsure whether the cleanup change is correct 18:40:18
@Ericson2314:matrix.orgJohn Ericsonbecause exceptions and things can cause the destructure to run in other cases18:40:28
@Las:matrix.orgLas If you include that then I think 12668 first is easier because it’s more mechanical. 18:41:08
@Las:matrix.orgLas
In reply to @Ericson2314:matrix.org
Also I am unsure whether the cleanup change is correct
I don’t think it was ever used
18:41:31
@Las:matrix.orgLasWas it?18:41:37
@Las:matrix.orgLasIf you think for a test of it I’ll implement it18:42:16
@Las:matrix.orgLas * 18:42:24
@Las:matrix.orgLas * 18:42:31
@Ericson2314:matrix.orgJohn EricsonI am not sure, I am just saying that https://github.com/NixOS/nix/pull/12668/commits/ece3823c258e688b329f75886fe04659a2ea6175 is not mechanical18:43:32
@Ericson2314:matrix.orgJohn Ericsonwait18:43:50
@Ericson2314:matrix.orgJohn Ericsonoh it was never called from a destructure18:43:58
@Ericson2314:matrix.orgJohn Ericson Las: not sure if this is necessary, but if you split the coroutine part at the end of amDone 18:45:29
@Ericson2314:matrix.orgJohn Ericson make two functions on Goal and amDone calls both 18:45:37
@Ericson2314:matrix.orgJohn Ericsonthen this change can be 100% mechanical18:45:47
@Las:matrix.orgLas
In reply to @Ericson2314:matrix.org
Las: not sure if this is necessary, but if you split the coroutine part at the end of amDone
You mean the bug workaround?
18:46:09
@Ericson2314:matrix.orgJohn Ericsonwell the large point is I think we should live review both PRs commit by commit, take commits from each and land them18:46:53
@Ericson2314:matrix.orgJohn Ericsonso interview as necessary18:47:00
@Ericson2314:matrix.orgJohn Ericson I mean split amDone where cleanup used to be called 18:47:24
@Ericson2314:matrix.orgJohn Ericson amDonePart1 (returns void), amDonePart2 (co_return Done {}) 18:48:10
@Las:matrix.orgLasBut why18:48:20
@Ericson2314:matrix.orgJohn Ericson it might not be necessary, but see it could be important to call worker.removeGoal(shared_from_this()) before putting the goal in an invalid state 18:49:08
@Ericson2314:matrix.orgJohn Ericsonit is unclear to me whether it is possible for two threads to be messing with a goal at once18:49:24
@Ericson2314:matrix.orgJohn Ericsonbut if the goal is removed from worker, and from waitees/waiters, then I don't think another thread can find the goal very easily18:49:50
@Ericson2314:matrix.orgJohn EricsonIf Robert is busy today, well we at least have the Nix meeting tomorrow 18:50:11
@Las:matrix.orgLasYou can’t move around the worker interactions freely because you might mutate the data structures that are being iterated over at the same time18:50:38
@Las:matrix.orgLasMaybe not an issue there though18:50:48
@Las:matrix.orgLasGoals are single threaded18:51:12
@Las:matrix.orgLasMaybe in 2035 Mobile Element will support threads so I can respond it a thread18:52:03
@Las:matrix.orgLas * 18:52:12

Show newer messages


Back to Room ListRoom Version: 6