This is the mail archive of the cygwin mailing list for the Cygwin project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: Maintainer for git?


On Jan 23 11:51, Corinna Vinschen wrote:
> On Jan 22 16:42, Chris O'Bryan wrote:
> > > On Mon, Jan 20, 2014 at 5:31 PM, Steven Penny wrote:
> > >
> > >> Are you certain the bug is present in Adamâs version? He has tested it here
> > >>
> > >>     http://cygwin.com/ml/cygwin/2014-01/msg00085.html
> > >
> > > I just tried cloning something big again (the linux kernel). See
> > > below. The first one was with git-1.7.9 the default Cygwin version.
> > >[...]
> > > x86$ git clone https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
> > > linux-git-1.8.5.2
> > > Cloning into 'linux-git-1.8.5.2'...
> > > remote: Counting objects: 3366700, done.
> > > remote: Compressing objects: 100% (508113/508113), done.
> > > remote: Total 3366700 (delta 2833563), reused 3362434 (delta 2829537)
> > > Receiving objects: 100% (3366700/3366700), 703.64 MiB | 2.16 MiB/s, done.
> > > fatal: pack is corrupted (SHA1 mismatch)
> > > fatal: index-pack failed
> > >[...]
> 
> Even if it's an OpenSSL issue, I'm not sure what to do about it.  I'm
> building OpenSSL for Cygwin, but I have no knowledge of the crypto
> stuff...
> 
> I don't see anything unusual in the build process, except, maybe, that
> for SHA1 the x86 assembler code is used.  I'm wondering what happens
> when taking out -DSHA1_ASM from the build process.  Or what happens when
> using -O2 instead of -O3.

I have a hunch that this is not a OpenSSL but a Cygwin problem.

The default case in OpenSSL is to use SSE2 instructions in the x86
assembler code.  However, SSE2 instructions utilize the x86 XMM
registers, which are not saved and restored in setjmp/longjmp, nor are
they stored and restored in signal handling under Cygwin.

In the long run Cygwin should save and restore the XMM registers on
x86 as well, I guess.

For the time being, I've build a new OpenSSL version 1.0.1f-2 with the
"no-sse2" flag.  With this version I could clone the linx repo without
error.  Please give it a try.


Corinna

-- 
Corinna Vinschen                  Please, send mails regarding Cygwin to
Cygwin Maintainer                 cygwin AT cygwin DOT com
Red Hat

Attachment: pgpHOAkscUTVZ.pgp
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]