[SRU disco/cosmic/bionic] linux-buildinfo getabis enhancements

Andy Whitcroft apw at canonical.com
Tue Dec 4 21:32:00 UTC 2018


In reviewing the linux-buildinfo support it was pointed out that getabis
would have problems at the transition from one form to the other.  We have
also long had a problem with errors during downloads being hidden from the
user (as we expect some configurations to not have all of the packages).
This leads us to commit partial ABI information and us to have build
failures which could be avoided.

This patch kit does four things.  Firstly it adds descrimination
of download failures, separating transport failures (which it makes
instantly fatal) from server generated failures (404 etc).  Secondly it
uses this discrimination to allow us to identify the presence of valid
combinations of packages and avoid partial ABI downloads.  Thirdly it
uses this ability to identify valid combinations to iterate over the
combinations valid in any series, allowing us to use the same getabis
script for all series unmodified.  Finally it adds support for parsing
complete version numbers to simply execution.

Proposing for application on top of the linux-buildinfo fixes on disco,
cosmic, and bionic.

Below is an example transcript of this running in cosmic to make it
easier to see how the output is modified:

    $ ./debian/scripts/misc/getabis
    4.18.0-12.13
    Fetching generic(armhf)...
      set: linux-buildinfo=n
      set: linux-image-unsigned=n linux-modules=- linux-modules-extra=-
      set: linux-image-unsigned=n linux-modules=-
      set: linux-image=y linux-modules=y linux-modules-extra=n
      set: linux-image=y linux-modules=y
      extracting...
      images...
        GCC: (Ubuntu 8.2.0-7ubuntu1) 8.2.0
      done
    Fetching generic-lpae(armhf)...
      set: linux-buildinfo=n
      set: linux-image-unsigned=n linux-modules=- linux-modules-extra=-
      set: linux-image-unsigned=n linux-modules=-
      set: linux-image=y linux-modules=y linux-modules-extra=n
      set: linux-image=y linux-modules=y
      extracting...
      images...
        GCC: (Ubuntu 8.2.0-7ubuntu1) 8.2.0
      done
    Fetching generic(amd64)...
      set: linux-buildinfo=n
      set: linux-image-unsigned=y linux-modules=y linux-modules-extra=y
      extracting...
      images...
        GCC: (Ubuntu 8.2.0-7ubuntu1) 8.2.0
      done
    Fetching lowlatency(amd64)...
      set: linux-buildinfo=n
      set: linux-image-unsigned=y linux-modules=y linux-modules-extra=n
      set: linux-image-unsigned=y linux-modules=y
      extracting...
      images...
        GCC: (Ubuntu 8.2.0-7ubuntu1) 8.2.0
      done
    Fetching generic(i386)...
      set: linux-buildinfo=n
      set: linux-image-unsigned=n linux-modules=- linux-modules-extra=-
      set: linux-image-unsigned=n linux-modules=-
      set: linux-image=y linux-modules=y linux-modules-extra=y
      extracting...
      images...
        GCC: (Ubuntu 8.2.0-7ubuntu1) 8.2.0
      done
    Fetching lowlatency(i386)...
      set: linux-buildinfo=n
      set: linux-image-unsigned=n linux-modules=- linux-modules-extra=-
      set: linux-image-unsigned=n linux-modules=-
      set: linux-image=y linux-modules=y linux-modules-extra=n
      set: linux-image=y linux-modules=y
      extracting...
      images...
        GCC: (Ubuntu 8.2.0-7ubuntu1) 8.2.0
      done
    Fetching generic(arm64)...
      set: linux-buildinfo=n
      set: linux-image-unsigned=n linux-modules=- linux-modules-extra=-
      set: linux-image-unsigned=n linux-modules=-
      set: linux-image=y linux-modules=y linux-modules-extra=y
      extracting...
      images...
        GCC: (Ubuntu 8.2.0-7ubuntu1) 8.2.0
      done
    Fetching snapdragon(arm64)...
      set: linux-buildinfo=n
      set: linux-image-unsigned=n linux-modules=- linux-modules-extra=-
      set: linux-image-unsigned=n linux-modules=-
      set: linux-image=y linux-modules=y linux-modules-extra=n
      set: linux-image=y linux-modules=y
      extracting...
      images...
        GCC: (Ubuntu 8.2.0-7ubuntu1) 8.2.0
      done
    Fetching generic(ppc64el)...
      set: linux-buildinfo=n
      set: linux-image-unsigned=y linux-modules=y linux-modules-extra=y
      extracting...
      images...
        GCC: (Ubuntu 8.2.0-7ubuntu1) 8.2.0
      done
    Fetching generic(s390x)...
      set: linux-buildinfo=n
      set: linux-image-unsigned=n linux-modules=- linux-modules-extra=-
      set: linux-image-unsigned=n linux-modules=-
      set: linux-image=y linux-modules=y linux-modules-extra=y
      extracting...
      images...
        GCC: (Ubuntu 8.2.0-7ubuntu1) 8.2.0
      done
    rm 'debian.master/abi/4.18.0-11.12/abiname'
    [...]
    $

-apw



More information about the kernel-team mailing list