Jon Turney via Cygwin-apps writes:
> If the executable is hardlinked under multiple names, then parallel
> instances of __prestrip_one are going to extract debug info to
> multiple .dbg files, then fight over which one gets to set the
> debuglink to point at one of those .dbg files.
>
> This occurs with the 'bvi' package, where bview and bvedit are
> hardlinked to bvi.

Ugh…

> Now, maybe this already doing the wrong thing in the old,
> non-parallelized code as well (or maybe it worked OK, because if a
> debuglink was already present, we don't try to strip the file again
> the subsequent times we process it?)

Whatever it does it from your description it would seem to mean that you
can then debug one of the hardlinked executables, but not the other?

> So, idk how this should be written correctly? Make sure we only
> process each inode once?

Create a .dbg for one and then hardlink the others, it would seem.
Which means that we'd need to figure out which of the files that are
coming in are linked to each other and filter out the duplicates I
think.


Regards,
Achim.
-- 
+<[Q+ Matrix-12 WAVE#46+305 Neuron microQkb Andromeda XTk Blofeld]>+

Wavetables for the Terratec KOMPLEXER:
http://Synth.Stromeko.net/Downloads.html#KomplexerWaves

Reply via email to