[FTBFS] arm does not define __NR_migrate_pages

Bug #1711478 reported by Tiago Stürmer Daitx on 2017-08-18
10
This bug affects 1 person
Affects Status Importance Assigned to Milestone
numactl (Debian)
Fix Released
Unknown
numactl (Ubuntu)
Medium
dann frazier
Bionic
Medium
Unassigned

Bug Description

[Impact]

 * Due to arm not defining __NR_migrate_pages
   Backport upstream changes to fix this as part of an ongoing SRU.
   - https://github.com/numactl/numactl/commit/e13c9a841

[Test Case]

 * Does it build in -proposed (and PPAs to prove it)

[Regression Potential]

 * The change is minimal, therefore I hope that the regression risk
   is rather low.
   If anything then different libc/kernel behavior could make it regress,
   but then IMHO that would apply to the current build in the archive as
   well and not be part of this SRU.

[Other Info]

 * Found to affect Bionic when working on SRU for bug 1817258
 * Sorry for the short SRU template, but for FTBFS bugs I'm not sure if we need more

----

numactl currently FTBFS since arm does not define __NR_migrate_pages.

As described in the Debian bug comments [1] the function should just return -1 and set errno when __NR_migrate_pages is undefined. This prevents it from failing the build.

Failure from the buildlog [2]:

libtool: compile: gcc -DHAVE_CONFIG_H -I. -Wall -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -c syscall.c -fPIC -DPIC -o .libs/syscall.o
syscall.c:113:2: error: #error "Add syscalls for your architecture or update kernel headers"
 #error "Add syscalls for your architecture or update kernel headers"
  ^~~~~
syscall.c: In function ‘migrate_pages’:
syscall.c:209:17: error: ‘__NR_migrate_pages’ undeclared (first use in this function); did you mean ‘numa_migrate_pages’?
  return syscall(__NR_migrate_pages, pid, maxnode, frommask, tomask);
                 ^~~~~~~~~~~~~~~~~~
                 numa_migrate_pages
syscall.c:209:17: note: each undeclared identifier is reported only once for each function it appears in

[1] https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=796802#15
[2] https://launchpadlibrarian.net/332625047/buildlog_ubuntu-artful-armhf.numactl_2.0.11-2.1_BUILDING.txt.gz

Related branches

tags: added: artful ftbfs
tags: added: patch
Changed in numactl (Debian):
status: Unknown → New

Hi Tiago,
Thanks for also driving that to Debian - well the solution of the old Debian issue to be precise.

Do you have hope that with you doing the bulk of the work to get it uploaded in Debian soon and fix this with a sync?

Or do you want for somebody to review and sponsor this already without waiting for Debian.
I mean we can sync a week after FF as this is a bugfix-only change if the Debian upload would not change (much) anything else.

In general the debdiff LGTM but it needs a core-dev sponsor to upload, so my ack isn't worth a lot yet.

Maybe the ö/ü/... in the patch could be rewritten to ue/oe/... to avoid displaying issues.
But that is purely style and not required.

Tiago Stürmer Daitx (tdaitx) wrote :

Marking as invalid since this is not a regression: numactl never build on armhf. Unfortunately http://qa.ubuntuwire.com/ftbfs/ is unable to show this sort of information.

Hopefully Debian or upstream might still grab the patch/debdiff.

Changed in numactl (Ubuntu):
status: New → Invalid
Tiago Stürmer Daitx (tdaitx) wrote :

Christian,

Sorry, the last comment was done in an open tab, I didn't realize you had wrote something until I saw the emails.

As I added in comment #6 we are not going to drive this as it is not considered a regression.

Eric Desrochers (slashd) on 2017-12-06
tags: added: bionic
Changed in numactl (Debian):
status: New → Confirmed
dann frazier (dannf) wrote :

This is now fixed in upstream, and I've prepared an NMU to sid to fix it in Debian. This should therefore automatically be fixed after the first debian sync for 18.10.

Changed in numactl (Ubuntu):
status: Invalid → In Progress
assignee: nobody → dann frazier (dannf)
Changed in numactl (Debian):
status: Confirmed → Fix Released
Launchpad Janitor (janitor) wrote :

This bug was fixed in the package numactl - 2.0.11-2.2

---------------
numactl (2.0.11-2.2) unstable; urgency=medium

  * Non-maintainer upload.
  * debian/patches/Allow-building-on-ARM-systems.patch:
    - add __arm__ to avoid failure due to missing syscalls.
    - return -1 and set errno to ENOSYS on migrate_pages function
      if __NR_migrate_pages is undefined, thanks Uwe Kleine-König
      and Tiago Stürmer Daitx. Closes: #796802. LP: #1711478.
  * Install memhog and migspeed. Closes: #882873. Thanks Manoj Iyer.
  * debian/control: Correct project Homepage link. Closes: #894825.
  * Bump Standards-Version to 4.1.4:
    - libnuma-dev is now Priority: optional (extra is deprecated).
  * debian/patches/Add-NAME-section-to-numastat-manpage.patch: Add
    "NAME" section to manpage for proper parsing by commands like apropos
    and whatis.
  * debian/numactl.docs: The upstream changelog is already installed
    as /usr/share/doc/numactl/changelog.gz, no need to install another
    copy.

 -- dann frazier <email address hidden> Tue, 17 Apr 2018 16:11:23 -0600

Changed in numactl (Ubuntu):
status: In Progress → Fix Released

This now also affects (re-)build in Bionic so I'm adding a bug task and will make it part of the next SRU.

Changed in numactl (Ubuntu Bionic):
status: New → In Progress
assignee: nobody → Christian Ehrhardt  (paelzer)
description: updated

Works well in a PPA, waiting for verification of the main SRU bug 1817258

Changed in numactl (Ubuntu Bionic):
status: In Progress → Triaged
assignee: Christian Ehrhardt  (paelzer) → nobody
Changed in numactl (Ubuntu):
importance: Undecided → Medium
Changed in numactl (Ubuntu Bionic):
importance: Undecided → Medium

Hello Tiago, or anyone else affected,

Accepted numactl into bionic-proposed. The package will build now and be available at https://launchpad.net/ubuntu/+source/numactl/2.0.11-2.1ubuntu0.1 in a few hours, and then in the -proposed repository.

Please help us by testing this new package. See https://wiki.ubuntu.com/Testing/EnableProposed for documentation on how to enable and use -proposed. Your feedback will aid us getting this update out to other Ubuntu users.

If this package fixes the bug for you, please add a comment to this bug, mentioning the version of the package you tested and change the tag from verification-needed-bionic to verification-done-bionic. If it does not fix the bug for you, please add a comment stating that, and change the tag to verification-failed-bionic. In either case, without details of your testing we will not be able to proceed.

Further information regarding the verification process can be found at https://wiki.ubuntu.com/QATeam/PerformingSRUVerification . Thank you in advance for helping!

N.B. The updated package will be released to -updates after the bug(s) fixed by this package have been verified and the package has been in -proposed for a minimum of 7 days.

Changed in numactl (Ubuntu Bionic):
status: Triaged → Fix Committed
tags: added: verification-needed verification-needed-bionic
dann frazier (dannf) wrote :

It builds on armhf, so marking verified.

tags: added: verification-done verification-done-bionic
removed: verification-needed verification-needed-bionic

The new builds in bionic-proposed build fine - FTBFS fixed.
https://launchpad.net/ubuntu/+source/numactl/2.0.11-2.1ubuntu0.1

Setting verified

Well Dannf was faster :-/
I should reload and read updates :-)

Looking at the autopkgtest failures and especially the history of them indicates that the remaining few (most worked well) can be ignored.
Here references to the remaining issues and their history:
http://autopkgtest.ubuntu.com/packages/l/linux/bionic/i386
http://autopkgtest.ubuntu.com/packages/l/linux-gcp-edge/bionic/amd64
http://autopkgtest.ubuntu.com/packages/l/linux-oracle/bionic/amd64

@SRU Team - do you want me to get in touch with the kernel Team to mask these tests or can/will you ignore them as-is for the SRU release of this change?

Add the following to the same list (for Cosmic)
http://autopkgtest.ubuntu.com/packages/l/linux/cosmic/ppc64el

FYI: I was able to resolve the issue in cosmic, but I opened [1] for a discussion on the tests with the Kernel Team

[1]: https://code.launchpad.net/~paelzer/britney/hints-ubuntu-bionic-linux-fails-march-2019/+merge/365045

Launchpad Janitor (janitor) wrote :

This bug was fixed in the package numactl - 2.0.11-2.1ubuntu0.1

---------------
numactl (2.0.11-2.1ubuntu0.1) bionic; urgency=medium

  * d/p/lp1817258-Segment-fault-when-numa-nodes-not-sequential-or-cont.patch:
    fix segfault on uncommon numa node setups (LP: #1817258)
  * debian/patches/Allow-building-on-ARM-systems.patch:
    - add __arm__ to avoid failure due to missing syscalls.
    - return -1 and set errno to ENOSYS on migrate_pages function
      if __NR_migrate_pages is undefined, thanks Uwe Kleine-König
      and Tiago Stürmer Daitx (LP: #1711478).

 -- Christian Ehrhardt <email address hidden> Wed, 20 Jun 2018 16:36:20 +0200

Changed in numactl (Ubuntu Bionic):
status: Fix Committed → Fix Released

The verification of the Stable Release Update for numactl has completed successfully and the package has now been released to -updates. Subsequently, the Ubuntu Stable Release Updates Team is being unsubscribed and will not receive messages about this bug report. In the event that you encounter a regression using the package from -updates please report a new bug using ubuntu-bug and tag the bug report regression-update so we can easily find any regressions.

To post a comment you must log in.
This report contains Public information  Edit
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.