bug-guix
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

bug#43757: cuirass: Fail to fetch "guix" input.


From: Ludovic Courtès
Subject: bug#43757: cuirass: Fail to fetch "guix" input.
Date: Sat, 03 Oct 2020 14:00:42 +0200
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)

Hi,

Mathieu Othacehe <othacehe@gnu.org> skribis:

>> ERROR: In procedure make-stack:
>> Attempt to suspend fiber within continuation barrier
>
> Turns out "par-map" call does not seem suspendable, even though I'm not
> sure why. Maybe Ludo can help here :) ?

‘par-map’ is implemented in terms of futures, and futures use their own
thread pool.  What’s likely to block is ‘touch’: it essentially waits on
a condition variable, which Fibers cannot interrupt.

I’d say that mixing fibers and ‘par-map’ is a bad idea.  :-)

If we need such a thing, I think we should implement it on top of
Fibers.  Implementing futures on top of fibers + channels should be
easier than what (ice-9 futures) does.

> This is fixed with: 761443bca6178b4ac299a8bd368d1cac4abda5f8.

Why not just replace ‘par-map’ with ‘map’?  That sounds easier and I
suspect it doesn’t change much performance-wise.

(There’s a 2nd use of ‘par-map’ in that file.)

Thanks,
Ludo’.





reply via email to

[Prev in Thread] Current Thread [Next in Thread]