Bug#848298: [Pkg-mongodb-maintainers] Bug#848298: mongodb: Build for s390x

2017-01-02 Thread Apollon Oikonomopoulos
Hi Jeremy, Lászlo,

On 14:46 Sun 25 Dec , Jeremy Bicha wrote:
> Merry Christmas!
> 
> On Sun, Dec 25, 2016 at 10:05 AM, László Böszörményi (GCS)
>  wrote:
> >  Just for the record, Apollon packaged 3.4.1-3 and it just compiled on
> > s390x in experimental.
> 
> 3.4.1-2 built fine for s390x on Launchpad for Ubuntu:
> 
> https://launchpad.net/ubuntu/+source/mongodb/1:3.4.1-2/
> 
> So I tried without disabling hardware crc32 on s390x. It built but
> crashed when it tried to run the tests.
> 
> https://launchpad.net/ubuntu/+source/mongodb/1:3.4.1-2ubuntu2

It looks like hardware CRC32 support is not reliable/deterministic on 
non-x86 platforms and largely depends on the build environment and the 
runtime environment as well. Debian's s390x buildd's for instance don't 
seem to support the lay instruction, while Ubuntu's might do so.

I think this part needs to be worked out upstream and has to offer 
better runtime detection and/or use more portable (?!) asm instructions.

> 
> (I had the same build problem with arm64 with 1:3.4.1-1)
> 
> Attached are the changes I made if you want to apply them in Debian.
> In the second patch, I went ahead and left hardware crc32 disabled on
> s390x even on Ubuntu, but I showed how we could turn it on if we
> wanted to. I think the s390x patch could be submitted upstream.

Great, thanks! I'll have a look in the next couple of days and post a 
follow-up.

We still need to figure out whether 3.4 in Stretch is a good idea :)

Regards and best wishes for a Happy New Year!
Apollon



Bug#848298: [Pkg-mongodb-maintainers] Bug#848298: mongodb: Build for s390x

2016-12-25 Thread Jeremy Bicha
Merry Christmas!

On Sun, Dec 25, 2016 at 10:05 AM, László Böszörményi (GCS)
 wrote:
>  Just for the record, Apollon packaged 3.4.1-3 and it just compiled on
> s390x in experimental.

3.4.1-2 built fine for s390x on Launchpad for Ubuntu:

https://launchpad.net/ubuntu/+source/mongodb/1:3.4.1-2/

So I tried without disabling hardware crc32 on s390x. It built but
crashed when it tried to run the tests.

https://launchpad.net/ubuntu/+source/mongodb/1:3.4.1-2ubuntu2

(I had the same build problem with arm64 with 1:3.4.1-1)

Attached are the changes I made if you want to apply them in Debian.
In the second patch, I went ahead and left hardware crc32 disabled on
s390x even on Ubuntu, but I showed how we could turn it on if we
wanted to. I think the s390x patch could be submitted upstream.

Thank you,
Jeremy Bicha


0002-Use-a-configure-flag-to-disable-hardware-crc32-on-s3.patch
Description: Binary data


0001-Split-arm64-and-s390x-patches.patch
Description: Binary data


Bug#848298: [Pkg-mongodb-maintainers] Bug#848298: mongodb: Build for s390x

2016-12-25 Thread GCS
Hi Jeremy,

On Fri, Dec 16, 2016 at 9:10 AM, Jeremy Bicha  wrote:
> On Fri, Dec 16, 2016 at 2:38 AM, Apollon Oikonomopoulos
>  wrote:
>> Thanks for the heads-up. Although I'm not completely opposed to the
>> idea, there are at least two important reasons I think we should not do
>> this for 3.2 (and thus I'm marking it as wontfix, at least for now):
>
> I understand if you're hesitant to add the large patchset to the
> package you have to maintain for stretch.
>
> Hopefully, it will be a lot easier once 3.4 is packaged.
 Just for the record, Apollon packaged 3.4.1-3 and it just compiled on
s390x in experimental.

Regards,
Laszlo/GCS