On Thu, Aug 11, 2011 at 20:19, H.J. Lu <hjl.to...@gmail.com> wrote: > On Thu, Aug 11, 2011 at 8:23 AM, Rainer Orth > <r...@cebitec.uni-bielefeld.de> wrote: >> Paolo Bonzini <bonz...@gnu.org> writes: >> >>> On 08/10/2011 06:05 PM, Rainer Orth wrote: >>>>>> >> True: it is called once per multilib. >>>>> > >>>>> > Just to doublecheck, are we sure that unwind.h is always the same? >>>> Yep: it's unwind-generic.h for almost all targets, just a few arm >>>> targets use config/arm/unwind-arm.h for all multilibs. >>> >>> Patch doing rm -f is preapproved then. >> >> Here's what I installed, after making libgcc/unwind-generic.h read-only, >> reconfiguring and rebuilding first without and with the patch and >> observe the bug gone on i386-pc-solaris2.10. >> >> Rainer >> >> >> 2011-08-11 Rainer Orth <r...@cebitec.uni-bielefeld.de> >> >> * Makefile.in (install-unwind_h): Remove destination file first. >> >> diff --git a/libgcc/Makefile.in b/libgcc/Makefile.in >> --- a/libgcc/Makefile.in >> +++ b/libgcc/Makefile.in >> @@ -994,6 +994,7 @@ gcc-extra-parts: >> all: $(extra-parts) >> >> install-unwind_h: >> + rm -f $(gcc_objdir)/include/unwind.h >> cp unwind.h $(gcc_objdir)/include/unwind.h >> chmod a+r $(gcc_objdir)/include/unwind.h >> > > It breaks bootstrap with "make -j12" on a 24 core Linux/x86-64 : > > http://gcc.gnu.org/ml/gcc-regression/2011-08/msg00179.html > > rm -f ../../.././gcc/include/unwind.h > cp unwind.h ../../.././gcc/include/unwind.h > rm -f ../.././gcc/include/unwind.h > chmod a+r ../../.././gcc/include/unwind.h > cp unwind.h ../.././gcc/include/unwind.h > chmod: cannot access `../../.././gcc/include/unwind.h': No such file > or directory > make[8]: *** [install-unwind_h] Error 1 > make[8]: *** Waiting for unfinished jobs.... > chmod a+r ../.././gcc/include/unwind.h > > We may have a race condition here.
Will take a look tomorrow. Paolo