On Mon, May 14, 2012 at 08:09:18PM +0200, Joerg Sonnenberger wrote: > Why don't you just provide each CPU with a copy of the ucode and let it > free it once done? Even for 256 CPU with 16KB ucode, it would be only > 4MB of temporary memory.
Or simply ref-count the memory. However (I have seen the crash myself), I can not reproduce the problem once no kind of printf is involved. I would suggest to not use a broadcast xcall here, but do it for each cpu in turn, which will make the output readable. Alternatively: collect a list of results and print them all after all cores are done. Martin