X-Original-To: alpine-devel@lists.alpinelinux.org Received: from sender163-mail.zoho.com (sender163-mail.zoho.com [74.201.84.163]) by lists.alpinelinux.org (Postfix) with ESMTP id 8D24F5C4421 for ; Mon, 21 Nov 2016 00:40:00 +0000 (GMT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1479688776; s=default; d=flatglobe.org; i=tmhoang@flatglobe.org; h=Date:From:To:Cc:Subject:Message-ID:In-Reply-To:References:MIME-Version:Content-Type; l=148411; bh=YW05rn9xidznM/WZu9FPyG9l8naAtwWMQQKqbRDzgxg=; b=HYZIpVPLoIX6Y7KHdn05GcWDe5NEWbRNhP5AT4D55oCOmKbLq73KmvvAZDHlvN0U IlL3cBNnHxtUasInnR20oD5oVNYu34MaQgliucJi3pr3gMC+dBPfrg+w/WuFFSYSI4G 0I4C04DAv4vXz3uPkmZEIfwkqmv9JHnyHK9SyJRs= Received: from emily (14.177.216.158 [14.177.216.158]) by mx.zohomail.com with SMTPS id 1479688776167265.8013141186151; Sun, 20 Nov 2016 16:39:36 -0800 (PST) Date: Mon, 21 Nov 2016 07:39:27 +0700 From: "Tuan M. Hoang" To: Timo Teras Cc: "alpine-devel" Subject: Re: [alpine-devel] Porting Alpine scripts Message-ID: <20161121073927.2d0a9e65.tmhoang@flatglobe.org> In-Reply-To: <20161119092109.13567a93@vostro> References: <155a8e57d76.f37920c130996.6728092923369604578@flatglobe.org> <20160705172656.788ec089@vostro.util.wtbts.net> <20160706172836.74bab5d1@vostro> <155e6497a8e.11ad265cf269464.7355344611305011615@flatglobe.org> <155f440c618.129c9f0aa5155.5728200182511575692@flatglobe.org> <20160718084038.23773fca@vostro.util.wtbts.net> <1560fbd5a78.dbf5aa7b48820.4632348656468847927@flatglobe.org> <20160722084514.7c01123f@vostro.util.wtbts.net> <15614c77014.1200f0e697958.371787825394349914@flatglobe.org> <20160723092945.0680e7fd@vostro> <1562340dbde.12a594a5120275.3795912911296475631@flatglobe.org> <156260c81a5.f458ee7355285.6767768145040849925@flatglobe.org> <20160726194654.69b12731@vostro> <15635238f98.e963f442298215.3433654478481171006@flatglobe.org> <20161116023639.23b44cf1.tmhoang@flatglobe.org> <20161117082440.7f5e0fa0@vostro.util.wtbts.net> <20161119041548.765e6513.tmhoang@flatglobe.org> <20161119092109.13567a93@vostro> X-Mailinglist: alpine-devel Precedence: list List-Id: Alpine Development List-Unsubscribe: List-Post: List-Help: List-Subscribe: MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="MP_/GRt=k0LD0+b8X_6TP/toA/K" X-Zoho-Virus-Status: 1 --MP_/GRt=k0LD0+b8X_6TP/toA/K Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline On Sat, 19 Nov 2016 09:21:09 +0200 Timo Teras wrote: > On Sat, 19 Nov 2016 04:15:48 +0700 > "Tuan M. Hoang" wrote: >=20 > > On Thu, 17 Nov 2016 08:24:40 +0200 > > Timo Teras wrote: > > =20 > > > > > > b) Then I run crossbuild script, and I need remove paxmark > > > > > > lines in gcc's APKBUILD as it returns an unknown error > > > > > > (while creat-cross script runs just fine). AFAIK, it is > > > > > > about security concerns, not system's functionality, so for > > > > > > now I guess it is okay. =20 > > > > > =20 > > > > > Your kernel is probably built without XATTR support. paxmark > > > > > requires XATTR enabled kernel. =20 > > > >=20 > > > > I guess my x86_64 machine running grsec kernel (linux-grsec > > > > package) is XATTR-enabled. I looked a little bit closer on the > > > > build log and see this : http://sprunge.us/EIVE. When I try to > > > > run those $ paxctl manually (code from /usr/sbin/paxmark), they > > > > just pass alright with no output on stdout nor stderr. I also > > > > tried adding --enable-xattr-support to configure script in gcc > > > > APKBUILD, but it won't help. What do you think ? =20 > > >=20 > > > The kernel should be xattr enabled. What filesystem are you using? > > > Perhaps there's some filesystem level knob (kernel config) or > > > limitation. =20 > >=20 > > $ df -T | grep sda > > /dev/sda3 ext4 20473424 6217272 13196368 32% / > > /dev/sda1 ext4 95054 16460 71426 > > 19% /boot $ cat /proc/fs/ext4/sda1/options | grep xattr > > user_xattr > > $ cat /proc/fs/ext4/sda3/options | grep xattr > > user_xattr =20 >=20 > IIRC, if it's grsec kernel, you don't even need the user_xattr mount > option as grsec kernel treats those xattrs specially. >=20 > Of course grsec does not support s390x so the markings are not really > needed for vanilla kernel. However would be good to figure out so we > get the build right from beginning. >=20 > You could try strace the attr command and see where it fails. >=20 I see that you didn't provide linux-grsec/config-grsec.aarch64. grsec does not support aarch64 neither? I have read some grsec patch and it looks like they do provide some s390/s390x patch like this one : http://dev.alpinelinux.org/~ncopa/grsec/grsecurity-3.1-4.4.32-201604252206-= alpine.patch I am not sure is this called "supported". Actually according to the log above, $ paxctl are those failed (ret=3D1). I will try to strace them this week. > > > > Another problem I am having is when cross-compiling > > > > linux-vanilla package using aports/scripts/bootstrap.sh : > > > > http://sprunge.us/AAcA. I am reading abuild source code to find > > > > the cause but still nothing new. It'd be nice if you help me to > > > > have a look. =20 > > >=20 > > > Bootstrap script was not yet updated for libressl change. I'll > > > take a look at this. I think the only change needed is to build > > > libressl instead of openssl. I'll push fix for this soon. =20 > >=20 > > Actually this occurred to me before libress was adopted. After > > libressl was introduced, I also changed Bootstrap script, libressl > > APKBUILD, kernel config to adop libressl too, but still the bug. So > > I guess it's more likely coming from abuild. Here are some of my > > patches, in case you might want to have a look. > > https://github.com/tmh1999/alpine-bootstrap-s390x/tree/master/patches/a= ports/scripts > > https://github.com/tmh1999/alpine-bootstrap-s390x/tree/master/patches/a= ports/main =20 > =20 > I would be happy to pick up some of these patches already now. Would > you be able to give them exported with "git format-patch" so you get > annotated as author and the commit log is preserved. >=20 > I could try bootstrap s390 too then and see if the same problem > happens and analyze it a bit more. >=20 > In any case I recently fixed the bootstrap script and few aports. I > was able to bootstrap again git master for armv7. >=20 > Cheers, > Timo Please find my patches in the attachments. There were some small changes that I did not include in those patches because I think it only (temporarily) affects my build. So I list here fyi: - scripts/bootstrap.sh : linux-headers & zlib-dev need to be explicitly installed (besides fortify-headers, libc-dev, build-base) even though linux-headers is zlib's makedends, zlib-dev is binutils's makedepends. If there was any problem, please kindly let me know. Cheers, Tuan --MP_/GRt=k0LD0+b8X_6TP/toA/K Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0001-main-apk-tools-add-s390x-support.patch >From 73d6644d6e2621324b154e49ae2f49f839431cf7 Mon Sep 17 00:00:00 2001 From: "Tuan M. Hoang" Date: Mon, 21 Nov 2016 05:23:28 +0700 Subject: [PATCH] main/apk-tools: add s390x support --- main/apk-tools/0001-add-s390x-headers.patch | 25 +++++++++++++++++++++++++ main/apk-tools/APKBUILD | 10 +++++++--- 2 files changed, 32 insertions(+), 3 deletions(-) create mode 100644 main/apk-tools/0001-add-s390x-headers.patch diff --git a/main/apk-tools/0001-add-s390x-headers.patch b/main/apk-tools/0001-add-s390x-headers.patch new file mode 100644 index 0000000..b05da49 --- /dev/null +++ b/main/apk-tools/0001-add-s390x-headers.patch @@ -0,0 +1,25 @@ +From 24636f5277d6279f7740a46ed446d1bc763c7e91 Mon Sep 17 00:00:00 2001 +From: "Tuan M. Hoang" +Date: Sun, 20 Nov 2016 22:39:44 +0700 +Subject: [PATCH] add s390x headers + +--- + src/apk_defines.h | 2 ++ + 1 file changed, 2 insertions(+) + +diff --git a/src/apk_defines.h b/src/apk_defines.h +index 9b2e904..7215360 100644 +--- a/src/apk_defines.h ++++ b/src/apk_defines.h +@@ -95,6 +95,8 @@ extern char **apk_argv; + #define APK_DEFAULT_ARCH "armel" + #elif defined(__aarch64__) && __BYTE_ORDER__ == __ORDER_LITTLE_ENDIAN__ + #define APK_DEFAULT_ARCH "aarch64" ++#elif defined(__s390x__) ++#define APK_DEFAULT_ARCH "s390x" + #else + #error APK_DEFAULT_ARCH not detected for this architecture + #endif +-- +2.10.2 + diff --git a/main/apk-tools/APKBUILD b/main/apk-tools/APKBUILD index ae2cac6..ca1b183 100644 --- a/main/apk-tools/APKBUILD +++ b/main/apk-tools/APKBUILD @@ -13,6 +13,7 @@ if [ "$CBUILD" = "$CHOST" ]; then makedepends="$makedepends lua5.2-dev" fi source="http://dev.alpinelinux.org/archive/$pkgname/$pkgname-$pkgver.tar.xz + 0001-add-s390x-headers.patch " url="http://git.alpinelinux.org/cgit/apk-tools/" @@ -82,6 +83,9 @@ luaapk() { mv "$pkgdir"/usr/lib "$subpkgdir"/usr/lib/ } -md5sums="cc3efedf3047c256f13549ba58df3291 apk-tools-2.6.8.tar.xz" -sha256sums="83f5cf9f0e75c19004a67150819eae2d4c859236b6c9c04d34d5b6968925f0d3 apk-tools-2.6.8.tar.xz" -sha512sums="03fb42616335de9edaf3e44fd64a8d1c5dd8b0f25b7f3b176940b751a6547b8be153549f0cee9a5d65491025f6747799b6f5ba22b15d850593d499c07b5cc4c6 apk-tools-2.6.8.tar.xz" +md5sums="cc3efedf3047c256f13549ba58df3291 apk-tools-2.6.8.tar.xz +f77a0ce3b4a67cbefed14c3a3ebf253f 0001-add-s390x-headers.patch" +sha256sums="83f5cf9f0e75c19004a67150819eae2d4c859236b6c9c04d34d5b6968925f0d3 apk-tools-2.6.8.tar.xz +db8519fd21f7b302e1b339d037b5b02cbcefcf197891b45af5362d17d8d66bd5 0001-add-s390x-headers.patch" +sha512sums="03fb42616335de9edaf3e44fd64a8d1c5dd8b0f25b7f3b176940b751a6547b8be153549f0cee9a5d65491025f6747799b6f5ba22b15d850593d499c07b5cc4c6 apk-tools-2.6.8.tar.xz +7ab0a174c86613631d85cf6e51925b4a5a7ce42b6b02db2166bc5629517edf42d6abc1f9404621161e647b1d61f01641bc4ef91060e98e20b7a4bd4a9758fab5 0001-add-s390x-headers.patch" -- 2.10.2 --MP_/GRt=k0LD0+b8X_6TP/toA/K Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0002-main-gcc-add-s390x-support.patch >From ce24c454471089c6e050950e48f8ac2044814450 Mon Sep 17 00:00:00 2001 From: "Tuan M. Hoang" Date: Mon, 21 Nov 2016 05:28:27 +0700 Subject: [PATCH] main/gcc: add s390x support libgcc_s.so.* and libatomic.so.* only move libgcc_s.so.1, libatomic.so.1.2.0 but not libgcc_s.so, libatomic.so. So when cross-compiling, the linkder ld complains about missing -lgcc_s --- ...00-main-gcc-add-musl-s390x-dynamic-linker.patch | 32 ++++++++++++++++++++++ main/gcc/APKBUILD | 19 ++++++++----- main/gcc/gcc-pure64.patch | 9 ++++++ 3 files changed, 53 insertions(+), 7 deletions(-) create mode 100644 main/gcc/300-main-gcc-add-musl-s390x-dynamic-linker.patch diff --git a/main/gcc/300-main-gcc-add-musl-s390x-dynamic-linker.patch b/main/gcc/300-main-gcc-add-musl-s390x-dynamic-linker.patch new file mode 100644 index 0000000..2419578 --- /dev/null +++ b/main/gcc/300-main-gcc-add-musl-s390x-dynamic-linker.patch @@ -0,0 +1,32 @@ +From be841c16dd544553c67faac79bd4cc3cd10a1dc0 Mon Sep 17 00:00:00 2001 +From: "Tuan M. Hoang" +Date: Mon, 21 Nov 2016 01:42:16 +0700 +Subject: [PATCH] main/gcc: add musl s390x dynamic linker + +--- + gcc/config/s390/linux.h | 9 +++++++++ + 1 file changed, 9 insertions(+) + +diff --git a/gcc/config/s390/linux.h b/gcc/config/s390/linux.h +index 1e3ed35..a244214 100644 +--- a/gcc/config/s390/linux.h ++++ b/gcc/config/s390/linux.h +@@ -63,6 +63,15 @@ along with GCC; see the file COPYING3. If not see + #define GLIBC_DYNAMIC_LINKER32 "/lib/ld.so.1" + #define GLIBC_DYNAMIC_LINKER64 "/lib/ld64.so.1" + ++#undef MUSL_DYNAMIC_LINKER ++#define MUSL_DYNAMIC_LINKER "/lib/ld-musl-s390x.so.1" ++#undef MUSL_DYNAMIC_LINKER32 ++#define MUSL_DYNAMIC_LINKER32 "/lib/ld-musl-s390x.so.1" ++#undef MUSL_DYNAMIC_LINKER64 ++#define MUSL_DYNAMIC_LINKER64 "/lib/ld-musl-s390x.so.1" ++#undef MUSL_DYNAMIC_LINKERX32 ++#define MUSL_DYNAMIC_LINKERX32 "/lib/ld-musl-s390x.so.1" ++ + #undef LINK_SPEC + #define LINK_SPEC \ + "%{m31:-m elf_s390}%{m64:-m elf64_s390} --as-needed \ +-- +2.10.2 + diff --git a/main/gcc/APKBUILD b/main/gcc/APKBUILD index f8cbbe7..dfa71cd 100644 --- a/main/gcc/APKBUILD +++ b/main/gcc/APKBUILD @@ -190,6 +190,8 @@ source="ftp://gcc.gnu.org/pub/gcc/releases/gcc-${_pkgbase:-$pkgver}/gcc-${_pkgba ada-fixes.patch ada-shared.patch ada-musl.patch + + 300-main-gcc-add-musl-s390x-dynamic-linker.patch " # we build out-of-tree @@ -242,6 +244,7 @@ build() { mipsel-*-*-*) _arch_configure="--with-arch-32=mips2 --with-tune-32=mips32 --with-fp-32=32 --with-mips-plt --with-float=hard --with-abi=32";; i486-*-*-*) _arch_configure="--with-arch=i486 --with-tune=generic --enable-cld";; i586-*-*-*) _arch_configure="--with-arch=i586 --with-tune=generic --enable-cld";; + s390x-*-*-*) _arch_configure="--with-long-double-128 --with-zarch --with-arch=z196 --with-tune=zEC12 --enable-decimal-float";; esac case "$CTARGET_LIBC" in @@ -316,7 +319,6 @@ build() { --with-system-zlib \ --with-linker-hash-style=gnu \ || return 1 - make || return 1 } @@ -388,7 +390,7 @@ libatomic() { replaces="gcc" mkdir -p "$subpkgdir"/usr/lib - mv "$pkgdir"/usr/${_cross:+$CTARGET/}lib/libatomic.so.* "$subpkgdir"/usr/lib/ || \ + mv "$pkgdir"/usr/${_cross:+$CTARGET/}lib/libatomic.so* "$subpkgdir"/usr/lib/ || \ return 1 } @@ -442,9 +444,8 @@ objc() { libgcc() { pkgdesc="GNU C compiler runtime libraries" depends= - mkdir -p "$subpkgdir"/usr/lib - mv "$pkgdir"/usr/${_cross:+$CTARGET/}lib/libgcc_s.so.* "$subpkgdir"/usr/lib/ || \ + mv "$pkgdir"/usr/${_cross:+$CTARGET/}lib/libgcc_s.so* "$subpkgdir"/usr/lib/ || \ return 1 } @@ -623,7 +624,7 @@ db9c8f0aa9193466a62fcfaaf71f6129 207-static-pie.patch 9e658e590bc51be611f39945183f6aa2 gcc-4.9-musl-fortify.patch 32c40cd9c22a01621c2b7d60ac4255a0 gcc-6.1-musl-libssp.patch 0ea0f556d4ef9c260d1353b7fd33970c boehm-gc-musl.patch -3cb420ef6240a8b96f52fb1b479ddaab gcc-pure64.patch +7a058cfe7d77cdf14218b114e60e23ef gcc-pure64.patch 1e143d6a88cdcbc4e3266b19208df0fd fix-gcj-stdgnu14-link.patch 14fc0a0b925ef911ce78cd030fe58902 fix-gcj-musl.patch e17bbb0fe802974e20645b4182b4c410 fix-gcj-iconv-musl.patch @@ -631,6 +632,7 @@ e17bbb0fe802974e20645b4182b4c410 fix-gcj-iconv-musl.patch 4aea37d334ab00bb6bba37cd8c481367 fix-cxxflags-passing.patch d00d7e4b0c00cb7448576af9cd7fcea8 ada-fixes.patch 20e2731c02ce50739ebdead2795f9c41 ada-shared.patch +29d7ce72d73cb920c6d1f276a2286f40 300-main-gcc-add-musl-s390x-dynamic-linker.patch bd2f71f7559e0aa38745ee62e5799601 ada-musl.patch" sha256sums="9944589fc722d3e66308c0ce5257788ebd7872982a718aa2516123940671b7c5 gcc-6.2.0.tar.bz2 9506e75b862f782213df61af67338eb7a23c35ff425d328affc65585477d34cd ecj-4.9.jar @@ -657,7 +659,7 @@ aa3e570f9ccd9dcaadf00369ed2c4ae26ba640c49256f32aee7e631e2b836771 libada-cross-s dc93f97dff28b872f9c7e241fb87a3eca0271f706534d196b3517781b05667fa gcc-4.9-musl-fortify.patch 4ece19529edb8e681e1778e977e2ba1d47984ccfcb82505e8b898bb29d659625 gcc-6.1-musl-libssp.patch 6ccca88695ef84c0d038cd315cad5ae5b799672ecb009fdaab34e68ba60b733c boehm-gc-musl.patch -0625ab76ec3f7b47364becdb9ddc66bec9215ebfbeab1d58df8e1855a1cd76bb gcc-pure64.patch +3adae9dd208f52112e86ab1a9aa3a1f002cfe12e39179634499bc81f480cf2a9 gcc-pure64.patch c03165e7ce812c93a33fdb0893847b4f9eb892e353d32d85b23249610fb24396 fix-gcj-stdgnu14-link.patch 22c78cc4a2658ff574e7ded1e5bc765a4f81f730d12e72d5883fe0bf73e71220 fix-gcj-musl.patch 51782c972ab828eb4ccb3ca3570341d025b2ae9a8e8fd8188cefb29c5f87401b fix-gcj-iconv-musl.patch @@ -665,6 +667,7 @@ bd7a6f514fcc457f29e5fda157203f3bcd013aeba5d53b3459196eef3ce752ab gcc-4.8-build- a395ba4cf047c48cac56985726fddf0948f4425c9f1a0c9ddba1812b2b3d8300 fix-cxxflags-passing.patch d2a67a7ae0304cd10532883df19923b98dbc9b7a24957b619d4a6e04f19c5507 ada-fixes.patch d6c7fc1820a4fa285297c299c255fe2f19ce1695486f20edd098252a97545e6a ada-shared.patch +66b1d3c5880e0651c46f32f3a44171cc80d216d6514e75b8d7bd8fdbc565424c 300-main-gcc-add-musl-s390x-dynamic-linker.patch f7f5aa37d27644292a90ab31afdf4be93b116507bfc39f4d9f6af047311b7d87 ada-musl.patch" sha512sums="1e8b826a3d44b9d5899309894e20c03abeb352bf3d273b8ad63af814c0ee2911f1a83ce1cd4cdd2d1cb0b3e3c34e9b7ae1b2ab83dfc649ee817ab05247c76198 gcc-6.2.0.tar.bz2 28f8c6fdbcb19e950b1d0bafb3bcc7a8cba87bc673aa6027cece116599cdee80f0cf5e95a1440544890239f5c754e8a93ab46d9daedd937faef445d7ea33b226 ecj-4.9.jar @@ -691,7 +694,7 @@ d08d7ead2de0429e5c9055d5b029ec2be9a8c821d22cecaf9b51f633652c493333f98963d9267fa2 600fe5098dc54edaa9808fd5717af9dec058953f9ad37d49cfba1db4f7e9a7a8f02019342f75157fc575946fa693259422184de27b7ecc8386d9f3ecc0f7cc5d gcc-4.9-musl-fortify.patch dbe0ee917fc7668571722364ab7c806731e3a31e8bfa30b4941b28b16b877d2a32b4a3897ef533399a28f82d43cac9b28e92de0493f0e779046db56584e07fa4 gcc-6.1-musl-libssp.patch bda845a6aa1854d2c883910b115f79ccfa93dfc2b5eac69a3a236d83eb34cadc140731d616ffc24698c7abc8878dd15f231bcc5119f1860e575a120b311706c7 boehm-gc-musl.patch -cd94f7be10de7511b17355dbb6b86dc70919b4a41c8aec1d7c5961820248aa00cf1594ed66fdd412c12b02a94605600530f674b32ab4cbd0ca6456968475ecbb gcc-pure64.patch +9232f58872eecd5f994815674813211d38e1427814d8e06b139a802034ea2c42134281f4f7930b14d586e9a2009e8a22bcac6e9717441824d2cb87d99febf141 gcc-pure64.patch 2253941f3d19b6d08801d3782f5f5ed56c3b73fbc9d3561a8f01c702963ac4fab91599c686076e7081eb6a80c37ccd33591ae978996d6eee1dc0ce0f1c50259a fix-gcj-stdgnu14-link.patch f89ddeb21bc8f97e6a850a6b70b4501a8f3e49a4bc8cc82897488decda5d98ad01cb7f6c8b392d452e9579924a523bc75da6e0648c1c976d42e40af48b10343b fix-gcj-musl.patch 54d67cc008b735e47771314171930c5d8b8f5f5dc97fcf4214824c105c808f3e75d22d5a4fdf5068ed0457fa0d46c60cfb442e276259a4a5e9b8722a027d18e6 fix-gcj-iconv-musl.patch @@ -699,4 +702,6 @@ abe9aaf9aa956058d0386a4396a511d176a46bb3906b90e952383646cdc158cbeb0a5dc616a1ccb1 35d6d59f0b7b968f282f56767c9e0823a7bdc5aa0d450aca50fbd802649a7ca608b47671244a3faa208a9b0d6832cabb5a22724157dc817b2c0ad63d09f93282 fix-cxxflags-passing.patch 9016b257abd8fa981de44a49512e35db814d1cbb47c1a87cd31c12d4ae20b13e9e149fe41691a7ec3c95bbcfde8a79194a8d2eaf547ceade3a246fad67c47dd8 ada-fixes.patch 3f5bc334d9f73d06f5f7c876738d02356acdd08958bea0e4d2095ebf15c2c2ec4e411abdae0297505ae9a1699ca01b17338e853184e84663203b192b0d35fc19 ada-shared.patch +4b4a0ff306a8ef34ff6e3284fbfca869012164a47ba7cb099085c1dd03e6ca0cdd462f82710e08c9a02895adc7484e4c5eef17b5aa264cf5d978fe8ad78eea93 300-main-gcc-add-musl-s390x-dynamic-linker.patch 631d4bdef6d8bde34df7978bb53ec28c3c909cf1f87139e5f148138d0f09adc58b41ecf0148bbf50fb4bc916c411e9bf8a2b6c046c75c0e77d754d8c35bcd4d7 ada-musl.patch" + diff --git a/main/gcc/gcc-pure64.patch b/main/gcc/gcc-pure64.patch index 53f882e..aa5b022 100644 --- a/main/gcc/gcc-pure64.patch +++ b/main/gcc/gcc-pure64.patch @@ -20,3 +20,12 @@ MULTIARCH_DIRNAME = $(call if_multiarch,aarch64$(AARCH_BE)-linux-gnu) MULTILIB_OSDIRNAMES += mabi.ilp32=../libilp32 +--- ./gcc/config/s390/t-linux64.orig ++++ ./gcc/config/s390/t-linux64 +@@ -7,5 +7,5 @@ + MULTILIB_OPTIONS = m64/m31 + MULTILIB_DIRNAMES = 64 32 +-MULTILIB_OSDIRNAMES = ../lib64$(call if_multiarch,:s390x-linux-gnu) +-MULTILIB_OSDIRNAMES += $(if $(wildcard $(shell echo $(SYSTEM_HEADER_DIR))/../../usr/lib32),../lib32,../lib)$(call if_multiarch,:s390-linux-gnu) ++MULTILIB_OSDIRNAMES = m64=../lib ++MULTILIB_OSDIRNAMES+= m32=../lib32 -- 2.10.2 --MP_/GRt=k0LD0+b8X_6TP/toA/K Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0003-main-linux-headers-add-s390x-support.patch >From bf92d030c21c1656c399520792a6ccf88c9b8ffa Mon Sep 17 00:00:00 2001 From: "Tuan M. Hoang" Date: Mon, 21 Nov 2016 05:32:17 +0700 Subject: [PATCH] main/linux-headers: add s390x support --- main/linux-headers/APKBUILD | 1 + 1 file changed, 1 insertion(+) diff --git a/main/linux-headers/APKBUILD b/main/linux-headers/APKBUILD index e4658d4..890a648 100644 --- a/main/linux-headers/APKBUILD +++ b/main/linux-headers/APKBUILD @@ -38,6 +38,7 @@ package() { case "$_carch" in aarch64*) _carch="arm64" ;; arm*) _carch="arm" ;; + s390*) _carch="s390" ;; esac cd "$srcdir"/linux-$_kernver -- 2.10.2 --MP_/GRt=k0LD0+b8X_6TP/toA/K Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0004-main-linux-vanilla-add-s390x-support.patch >From 50a9bf59decd76fab6835ea560ecc9f3f19601a5 Mon Sep 17 00:00:00 2001 From: "Tuan M. Hoang" Date: Mon, 21 Nov 2016 05:34:20 +0700 Subject: [PATCH] main/linux-vanilla: add s390x support --- main/linux-vanilla/APKBUILD | 7 +- main/linux-vanilla/config-vanilla.s390x | 2772 +++++++++++++++++++++++++++++++ 2 files changed, 2778 insertions(+), 1 deletion(-) create mode 100644 main/linux-vanilla/config-vanilla.s390x diff --git a/main/linux-vanilla/APKBUILD b/main/linux-vanilla/APKBUILD index 35b5309..1c5dd5f 100644 --- a/main/linux-vanilla/APKBUILD +++ b/main/linux-vanilla/APKBUILD @@ -1,5 +1,4 @@ # Maintainer: Natanael Copa - _flavor=vanilla pkgname=linux-${_flavor} pkgver=4.4.32 @@ -21,6 +20,7 @@ source="http://ftp.kernel.org/pub/linux/kernel/v${pkgver%%.*}.x/linux-$_kernver. config-vanilla.armhf config-vanilla.x86 config-vanilla.x86_64 + config-vanilla.s390x 0001-Add-dts-for-GIGABYTE-X-Gene-MP30-AR0.patch " @@ -37,6 +37,7 @@ _carch=${CARCH} case "$_carch" in aarch64*) _carch="arm64" ;; arm*) _carch="arm" ;; +s390*) _carch="s390" ;; esac HOSTCC="${CC:-gcc}" @@ -152,6 +153,7 @@ dev() { cp -a drivers/media/dvb/dvb-core/*.h "$dir"/drivers/media/dvb/dvb-core cp -a drivers/media/video/*.h "$dir"/drivers/media/video cp -a drivers/media/dvb/frontends/*.h "$dir"/drivers/media/dvb/frontends + cp -a scripts include "$dir" find $(find arch -name include -type d -print) -type f \ | cpio -pdm "$dir" @@ -169,6 +171,7 @@ md5sums="9a78fa2eb6c68ca5a40ed5af08142599 linux-4.4.tar.xz 6f923d5029129429bceae658a832ff4c config-vanilla.armhf 9ea7793a78b05d13206f255197a25838 config-vanilla.x86 981e7b8638f2d35bc8f01d3d51b4ec46 config-vanilla.x86_64 +249d824e878d7825d5f58c22469ad659 config-vanilla.s390x e10e580b7aadf42ba595e35d3ff3fc69 0001-Add-dts-for-GIGABYTE-X-Gene-MP30-AR0.patch 394f1ad7f950428eaed011f2e6d36060 patch-4.4.32.xz" sha256sums="401d7c8fef594999a460d10c72c5a94e9c2e1022f16795ec51746b0d165418b2 linux-4.4.tar.xz @@ -176,6 +179,7 @@ sha256sums="401d7c8fef594999a460d10c72c5a94e9c2e1022f16795ec51746b0d165418b2 li 6a923534767f24e0adc515e4c29ee7b95498be4fc0c9ba61142669bacd8d7cb0 config-vanilla.armhf 647f9d58c01745ad82c4f6775d9e6279804385037d485a1806ccf1027b8af629 config-vanilla.x86 0ad8ce5491100a2d4cda4ce36a6ce3e69aaf4ad3bee8c65a7ff891a55e04a6d4 config-vanilla.x86_64 +3e2ac83cf49e451cc4e1485e5efd61da7f630e43511cb94a0c8dcd01f7facb73 config-vanilla.s390x b9bcbe11c017764075179fb61fb13f6d0eca2c5495402d8f4ace2331cfe0c0b4 0001-Add-dts-for-GIGABYTE-X-Gene-MP30-AR0.patch 329b6b24e9e02b2e01ab13a9f62f853b37272c4f1c210cdcdda93937e0d0cb18 patch-4.4.32.xz" sha512sums="13c8459933a8b80608e226a1398e3d1848352ace84bcfb7e6a4a33cb230bbe1ab719d4b58e067283df91ce5311be6d2d595fc8c19e2ae6ecc652499415614b3e linux-4.4.tar.xz @@ -183,5 +187,6 @@ f60eaafca6c30c065293606e584a822cff6634d19b2be5a28a18745c3e2c8463b410cae1bf259c05 b31f3708f177f4841e89e7eb01a4e93bd977c79f3255522c01c1664d36fd680dfaf31fb407d6e00b0a4dcee31f8e7daba5119b51377a3a6056f37aefb9067da2 config-vanilla.armhf 3404d621991b61e89f00f530679cc950031239601f274e9d31cd31f5c345cefd4e9240ddde9acd6ba07f62874f5b63433a36a06f0d2b7dad1bc90f20eaecea8c config-vanilla.x86 b17ff21ec42cb09518376e53c1dc635ae2a2f85851fb95a66dfb9d02e1a63480a8b32f1ac1fe003e926375163bcd156d6d70c720cf07d9d61749c91757486983 config-vanilla.x86_64 +c41b5cedb864670478515f6b199b3337c7d8a7b3b8fef4ac78ac32a70c5b711ee5ae0574885538e8ffe9053a8f4827dd051c5d916cd5b196dfeed504ee5aa640 config-vanilla.s390x ebc1b89ff0985246889f68c32fb0bd326eb0f015a97b913bf8e2b92855c75809d114c57aff8f3f74d120694f1c5891d7a11ebe4aadaadd1954a947e762bf121d 0001-Add-dts-for-GIGABYTE-X-Gene-MP30-AR0.patch 118923fc9bfc123d9b140f345823c20f402fa4f338d6cce2395bec792e018f937b10809ad4f33149da6a0cbde782f26a224b40c5b2dcd22e995f36c2d76d59df patch-4.4.32.xz" diff --git a/main/linux-vanilla/config-vanilla.s390x b/main/linux-vanilla/config-vanilla.s390x new file mode 100644 index 0000000..b3f456e --- /dev/null +++ b/main/linux-vanilla/config-vanilla.s390x @@ -0,0 +1,2772 @@ +# +# Automatically generated file; DO NOT EDIT. +# Linux/s390 4.4.0-31-generic Kernel Configuration +# +CONFIG_MMU=y +CONFIG_ZONE_DMA=y +CONFIG_LOCKDEP_SUPPORT=y +CONFIG_STACKTRACE_SUPPORT=y +CONFIG_HAVE_LATENCYTOP_SUPPORT=y +CONFIG_RWSEM_XCHGADD_ALGORITHM=y +# CONFIG_ARCH_HAS_ILOG2_U32 is not set +# CONFIG_ARCH_HAS_ILOG2_U64 is not set +CONFIG_GENERIC_HWEIGHT=y +CONFIG_GENERIC_BUG=y +CONFIG_GENERIC_BUG_RELATIVE_POINTERS=y +CONFIG_ARCH_DMA_ADDR_T_64BIT=y +CONFIG_PGSTE=y +CONFIG_ARCH_SUPPORTS_DEBUG_PAGEALLOC=y +CONFIG_KEXEC=y +CONFIG_AUDIT_ARCH=y +CONFIG_NO_IOPORT_MAP=y +# CONFIG_PCI_QUIRKS is not set +CONFIG_ARCH_SUPPORTS_UPROBES=y +CONFIG_S390=y +CONFIG_SCHED_OMIT_FRAME_POINTER=y +CONFIG_PGTABLE_LEVELS=4 +CONFIG_DEFCONFIG_LIST="/lib/modules/$UNAME_RELEASE/.config" +CONFIG_IRQ_WORK=y +CONFIG_BUILDTIME_EXTABLE_SORT=y + +# +# General setup +# +CONFIG_INIT_ENV_ARG_LIMIT=32 +CONFIG_CROSS_COMPILE="" +# CONFIG_COMPILE_TEST is not set +CONFIG_LOCALVERSION="" +# CONFIG_LOCALVERSION_AUTO is not set +CONFIG_HAVE_KERNEL_GZIP=y +CONFIG_HAVE_KERNEL_BZIP2=y +CONFIG_HAVE_KERNEL_LZMA=y +CONFIG_HAVE_KERNEL_XZ=y +CONFIG_HAVE_KERNEL_LZO=y +CONFIG_HAVE_KERNEL_LZ4=y +# CONFIG_KERNEL_GZIP is not set +# CONFIG_KERNEL_BZIP2 is not set +# CONFIG_KERNEL_LZMA is not set +CONFIG_KERNEL_XZ=y +# CONFIG_KERNEL_LZO is not set +# CONFIG_KERNEL_LZ4 is not set +CONFIG_DEFAULT_HOSTNAME="(none)" +CONFIG_SWAP=y +CONFIG_SYSVIPC=y +CONFIG_SYSVIPC_SYSCTL=y +CONFIG_POSIX_MQUEUE=y +CONFIG_POSIX_MQUEUE_SYSCTL=y +CONFIG_CROSS_MEMORY_ATTACH=y +CONFIG_FHANDLE=y +CONFIG_USELIB=y +CONFIG_AUDIT=y +CONFIG_HAVE_ARCH_AUDITSYSCALL=y +CONFIG_AUDITSYSCALL=y +CONFIG_AUDIT_WATCH=y +CONFIG_AUDIT_TREE=y + +# +# IRQ subsystem +# +CONFIG_GENERIC_MSI_IRQ=y +CONFIG_GENERIC_TIME_VSYSCALL=y +CONFIG_GENERIC_CLOCKEVENTS=y + +# +# Timers subsystem +# +CONFIG_TICK_ONESHOT=y +CONFIG_NO_HZ_COMMON=y +# CONFIG_HZ_PERIODIC is not set +CONFIG_NO_HZ_IDLE=y +CONFIG_NO_HZ=y +CONFIG_HIGH_RES_TIMERS=y + +# +# CPU/Task time and stats accounting +# +CONFIG_VIRT_CPU_ACCOUNTING=y +CONFIG_VIRT_CPU_ACCOUNTING_NATIVE=y +CONFIG_BSD_PROCESS_ACCT=y +CONFIG_BSD_PROCESS_ACCT_V3=y +CONFIG_TASKSTATS=y +CONFIG_TASK_DELAY_ACCT=y +CONFIG_TASK_XACCT=y +CONFIG_TASK_IO_ACCOUNTING=y + +# +# RCU Subsystem +# +CONFIG_TREE_RCU=y +# CONFIG_RCU_EXPERT is not set +CONFIG_SRCU=y +# CONFIG_TASKS_RCU is not set +CONFIG_RCU_STALL_COMMON=y +# CONFIG_TREE_RCU_TRACE is not set +# CONFIG_RCU_EXPEDITE_BOOT is not set +CONFIG_BUILD_BIN2C=y +# CONFIG_IKCONFIG is not set +CONFIG_LOG_BUF_SHIFT=17 +CONFIG_LOG_CPU_MAX_BUF_SHIFT=12 +CONFIG_ARCH_SUPPORTS_NUMA_BALANCING=y +CONFIG_NUMA_BALANCING=y +# CONFIG_NUMA_BALANCING_DEFAULT_ENABLED is not set +CONFIG_CGROUPS=y +# CONFIG_CGROUP_DEBUG is not set +CONFIG_CGROUP_FREEZER=y +CONFIG_CGROUP_PIDS=y +CONFIG_CGROUP_DEVICE=y +CONFIG_CPUSETS=y +CONFIG_PROC_PID_CPUSET=y +CONFIG_CGROUP_CPUACCT=y +CONFIG_PAGE_COUNTER=y +CONFIG_MEMCG=y +CONFIG_MEMCG_SWAP=y +# CONFIG_MEMCG_SWAP_ENABLED is not set +CONFIG_MEMCG_KMEM=y +CONFIG_CGROUP_HUGETLB=y +CONFIG_CGROUP_PERF=y +CONFIG_CGROUP_SCHED=y +CONFIG_FAIR_GROUP_SCHED=y +CONFIG_CFS_BANDWIDTH=y +# CONFIG_RT_GROUP_SCHED is not set +CONFIG_BLK_CGROUP=y +# CONFIG_DEBUG_BLK_CGROUP is not set +CONFIG_CGROUP_WRITEBACK=y +CONFIG_CHECKPOINT_RESTORE=y +CONFIG_NAMESPACES=y +CONFIG_UTS_NS=y +CONFIG_IPC_NS=y +CONFIG_USER_NS=y +CONFIG_PID_NS=y +CONFIG_NET_NS=y +CONFIG_SCHED_AUTOGROUP=y +# CONFIG_SYSFS_DEPRECATED is not set +CONFIG_RELAY=y +CONFIG_BLK_DEV_INITRD=y +CONFIG_INITRAMFS_SOURCE="" +CONFIG_RD_GZIP=y +CONFIG_RD_BZIP2=y +CONFIG_RD_LZMA=y +CONFIG_RD_XZ=y +CONFIG_RD_LZO=y +CONFIG_RD_LZ4=y +# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set +CONFIG_SYSCTL=y +CONFIG_ANON_INODES=y +CONFIG_SYSCTL_EXCEPTION_TRACE=y +CONFIG_BPF=y +CONFIG_EXPERT=y +CONFIG_MULTIUSER=y +CONFIG_SGETMASK_SYSCALL=y +CONFIG_SYSFS_SYSCALL=y +CONFIG_SYSCTL_SYSCALL=y +CONFIG_KALLSYMS=y +CONFIG_KALLSYMS_ALL=y +CONFIG_PRINTK=y +CONFIG_BUG=y +CONFIG_ELF_CORE=y +CONFIG_BASE_FULL=y +CONFIG_FUTEX=y +CONFIG_HAVE_FUTEX_CMPXCHG=y +CONFIG_EPOLL=y +CONFIG_SIGNALFD=y +CONFIG_TIMERFD=y +CONFIG_EVENTFD=y +CONFIG_BPF_SYSCALL=y +CONFIG_SHMEM=y +CONFIG_AIO=y +CONFIG_ADVISE_SYSCALLS=y +CONFIG_USERFAULTFD=y +CONFIG_MEMBARRIER=y +# CONFIG_EMBEDDED is not set +CONFIG_HAVE_PERF_EVENTS=y + +# +# Kernel Performance Events And Counters +# +CONFIG_PERF_EVENTS=y +# CONFIG_DEBUG_PERF_USE_VMALLOC is not set +CONFIG_VM_EVENT_COUNTERS=y +CONFIG_SLUB_DEBUG=y +# CONFIG_COMPAT_BRK is not set +# CONFIG_SLAB is not set +CONFIG_SLUB=y +# CONFIG_SLOB is not set +CONFIG_SLUB_CPU_PARTIAL=y +CONFIG_SYSTEM_DATA_VERIFICATION=y +CONFIG_SYSTEM_BLACKLIST_KEYRING=y +CONFIG_PROFILING=y +CONFIG_TRACEPOINTS=y +CONFIG_KEXEC_CORE=y +CONFIG_OPROFILE=m +CONFIG_HAVE_OPROFILE=y +CONFIG_KPROBES=y +CONFIG_JUMP_LABEL=y +# CONFIG_STATIC_KEYS_SELFTEST is not set +CONFIG_UPROBES=y +CONFIG_HAVE_64BIT_ALIGNED_ACCESS=y +CONFIG_ARCH_USE_BUILTIN_BSWAP=y +CONFIG_KRETPROBES=y +CONFIG_HAVE_KPROBES=y +CONFIG_HAVE_KRETPROBES=y +CONFIG_HAVE_ARCH_TRACEHOOK=y +CONFIG_HAVE_DMA_ATTRS=y +CONFIG_GENERIC_SMP_IDLE_THREAD=y +CONFIG_HAVE_REGS_AND_STACK_ACCESS_API=y +CONFIG_HAVE_DMA_API_DEBUG=y +CONFIG_HAVE_ARCH_JUMP_LABEL=y +CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y +CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y +CONFIG_HAVE_CMPXCHG_LOCAL=y +CONFIG_HAVE_CMPXCHG_DOUBLE=y +CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y +CONFIG_ARCH_WANT_COMPAT_IPC_PARSE_VERSION=y +CONFIG_ARCH_WANT_OLD_COMPAT_IPC=y +CONFIG_HAVE_ARCH_SECCOMP_FILTER=y +CONFIG_SECCOMP_FILTER=y +# CONFIG_CC_STACKPROTECTOR is not set +CONFIG_HAVE_VIRT_CPU_ACCOUNTING=y +CONFIG_HAVE_VIRT_CPU_ACCOUNTING_GEN=y +CONFIG_HAVE_ARCH_TRANSPARENT_HUGEPAGE=y +CONFIG_HAVE_ARCH_SOFT_DIRTY=y +CONFIG_HAVE_MOD_ARCH_SPECIFIC=y +CONFIG_MODULES_USE_ELF_RELA=y +CONFIG_ARCH_HAS_ELF_RANDOMIZE=y +CONFIG_CLONE_BACKWARDS2=y +CONFIG_OLD_SIGSUSPEND3=y +CONFIG_OLD_SIGACTION=y +CONFIG_COMPAT_OLD_SIGACTION=y + +# +# GCOV-based kernel profiling +# +# CONFIG_GCOV_KERNEL is not set +CONFIG_ARCH_HAS_GCOV_PROFILE_ALL=y +# CONFIG_HAVE_GENERIC_DMA_COHERENT is not set +CONFIG_SLABINFO=y +CONFIG_RT_MUTEXES=y +CONFIG_BASE_SMALL=0 +CONFIG_MODULES=y +# CONFIG_MODULE_FORCE_LOAD is not set +CONFIG_MODULE_UNLOAD=y +# CONFIG_MODULE_FORCE_UNLOAD is not set +CONFIG_MODVERSIONS=y +CONFIG_MODULE_SRCVERSION_ALL=y +# CONFIG_MODULE_SIG is not set +# CONFIG_MODULE_SIG_FORCE is not set +# CONFIG_MODULE_SIG_ALL is not set +# CONFIG_MODULE_SIG_SHA1 is not set +# CONFIG_MODULE_SIG_SHA224 is not set +# CONFIG_MODULE_SIG_SHA256 is not set +# CONFIG_MODULE_SIG_SHA384 is not set +# CONFIG_MODULE_SIG_SHA512 is not set +# CONFIG_MODULE_SIG_HASH is not set +# CONFIG_MODULE_COMPRESS is not set +CONFIG_MODULES_TREE_LOOKUP=y +CONFIG_BLOCK=y +CONFIG_BLK_DEV_BSG=y +CONFIG_BLK_DEV_BSGLIB=y +CONFIG_BLK_DEV_INTEGRITY=y +CONFIG_BLK_DEV_THROTTLING=y +CONFIG_BLK_CMDLINE_PARSER=y + +# +# Partition Types +# +CONFIG_PARTITION_ADVANCED=y +# CONFIG_ACORN_PARTITION is not set +# CONFIG_AIX_PARTITION is not set +# CONFIG_OSF_PARTITION is not set +# CONFIG_AMIGA_PARTITION is not set +# CONFIG_ATARI_PARTITION is not set +CONFIG_IBM_PARTITION=y +# CONFIG_MAC_PARTITION is not set +CONFIG_MSDOS_PARTITION=y +# CONFIG_BSD_DISKLABEL is not set +# CONFIG_MINIX_SUBPARTITION is not set +# CONFIG_SOLARIS_X86_PARTITION is not set +# CONFIG_UNIXWARE_DISKLABEL is not set +# CONFIG_LDM_PARTITION is not set +# CONFIG_SGI_PARTITION is not set +# CONFIG_ULTRIX_PARTITION is not set +# CONFIG_SUN_PARTITION is not set +# CONFIG_KARMA_PARTITION is not set +CONFIG_EFI_PARTITION=y +# CONFIG_SYSV68_PARTITION is not set +# CONFIG_CMDLINE_PARTITION is not set +CONFIG_BLOCK_COMPAT=y + +# +# IO Schedulers +# +CONFIG_IOSCHED_NOOP=y +CONFIG_IOSCHED_DEADLINE=y +CONFIG_IOSCHED_CFQ=y +CONFIG_CFQ_GROUP_IOSCHED=y +CONFIG_DEFAULT_DEADLINE=y +# CONFIG_DEFAULT_CFQ is not set +# CONFIG_DEFAULT_NOOP is not set +CONFIG_DEFAULT_IOSCHED="deadline" +CONFIG_PREEMPT_NOTIFIERS=y +CONFIG_PADATA=y +CONFIG_ASN1=y +CONFIG_ARCH_INLINE_SPIN_TRYLOCK=y +CONFIG_ARCH_INLINE_SPIN_TRYLOCK_BH=y +CONFIG_ARCH_INLINE_SPIN_LOCK=y +CONFIG_ARCH_INLINE_SPIN_LOCK_BH=y +CONFIG_ARCH_INLINE_SPIN_LOCK_IRQ=y +CONFIG_ARCH_INLINE_SPIN_LOCK_IRQSAVE=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK_BH=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_ARCH_INLINE_SPIN_UNLOCK_IRQRESTORE=y +CONFIG_ARCH_INLINE_READ_TRYLOCK=y +CONFIG_ARCH_INLINE_READ_LOCK=y +CONFIG_ARCH_INLINE_READ_LOCK_BH=y +CONFIG_ARCH_INLINE_READ_LOCK_IRQ=y +CONFIG_ARCH_INLINE_READ_LOCK_IRQSAVE=y +CONFIG_ARCH_INLINE_READ_UNLOCK=y +CONFIG_ARCH_INLINE_READ_UNLOCK_BH=y +CONFIG_ARCH_INLINE_READ_UNLOCK_IRQ=y +CONFIG_ARCH_INLINE_READ_UNLOCK_IRQRESTORE=y +CONFIG_ARCH_INLINE_WRITE_TRYLOCK=y +CONFIG_ARCH_INLINE_WRITE_LOCK=y +CONFIG_ARCH_INLINE_WRITE_LOCK_BH=y +CONFIG_ARCH_INLINE_WRITE_LOCK_IRQ=y +CONFIG_ARCH_INLINE_WRITE_LOCK_IRQSAVE=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_BH=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_ARCH_INLINE_WRITE_UNLOCK_IRQRESTORE=y +CONFIG_INLINE_SPIN_TRYLOCK=y +CONFIG_INLINE_SPIN_TRYLOCK_BH=y +CONFIG_INLINE_SPIN_LOCK=y +CONFIG_INLINE_SPIN_LOCK_BH=y +CONFIG_INLINE_SPIN_LOCK_IRQ=y +CONFIG_INLINE_SPIN_LOCK_IRQSAVE=y +CONFIG_INLINE_SPIN_UNLOCK_BH=y +CONFIG_INLINE_SPIN_UNLOCK_IRQ=y +CONFIG_INLINE_SPIN_UNLOCK_IRQRESTORE=y +CONFIG_INLINE_READ_TRYLOCK=y +CONFIG_INLINE_READ_LOCK=y +CONFIG_INLINE_READ_LOCK_BH=y +CONFIG_INLINE_READ_LOCK_IRQ=y +CONFIG_INLINE_READ_LOCK_IRQSAVE=y +CONFIG_INLINE_READ_UNLOCK=y +CONFIG_INLINE_READ_UNLOCK_BH=y +CONFIG_INLINE_READ_UNLOCK_IRQ=y +CONFIG_INLINE_READ_UNLOCK_IRQRESTORE=y +CONFIG_INLINE_WRITE_TRYLOCK=y +CONFIG_INLINE_WRITE_LOCK=y +CONFIG_INLINE_WRITE_LOCK_BH=y +CONFIG_INLINE_WRITE_LOCK_IRQ=y +CONFIG_INLINE_WRITE_LOCK_IRQSAVE=y +CONFIG_INLINE_WRITE_UNLOCK=y +CONFIG_INLINE_WRITE_UNLOCK_BH=y +CONFIG_INLINE_WRITE_UNLOCK_IRQ=y +CONFIG_INLINE_WRITE_UNLOCK_IRQRESTORE=y +CONFIG_ARCH_SUPPORTS_ATOMIC_RMW=y +CONFIG_MUTEX_SPIN_ON_OWNER=y +CONFIG_RWSEM_SPIN_ON_OWNER=y +CONFIG_LOCK_SPIN_ON_OWNER=y +CONFIG_FREEZER=y +CONFIG_HAVE_LIVEPATCH=y +# CONFIG_LIVEPATCH is not set + +# +# Processor type and features +# +CONFIG_HAVE_MARCH_Z900_FEATURES=y +CONFIG_HAVE_MARCH_Z990_FEATURES=y +CONFIG_HAVE_MARCH_Z9_109_FEATURES=y +CONFIG_HAVE_MARCH_Z10_FEATURES=y +CONFIG_HAVE_MARCH_Z196_FEATURES=y +CONFIG_HAVE_MARCH_ZEC12_FEATURES=y +# CONFIG_HAVE_MARCH_Z13_FEATURES is not set +# CONFIG_MARCH_Z900 is not set +# CONFIG_MARCH_Z990 is not set +# CONFIG_MARCH_Z9_109 is not set +# CONFIG_MARCH_Z10 is not set +# CONFIG_MARCH_Z196 is not set +CONFIG_MARCH_ZEC12=y +# CONFIG_MARCH_Z13 is not set +# CONFIG_MARCH_Z900_TUNE is not set +# CONFIG_MARCH_Z990_TUNE is not set +# CONFIG_MARCH_Z9_109_TUNE is not set +# CONFIG_MARCH_Z10_TUNE is not set +# CONFIG_MARCH_Z196_TUNE is not set +CONFIG_MARCH_ZEC12_TUNE=y +# CONFIG_MARCH_Z13_TUNE is not set +# CONFIG_TUNE_DEFAULT is not set +# CONFIG_TUNE_Z900 is not set +# CONFIG_TUNE_Z990 is not set +# CONFIG_TUNE_Z9_109 is not set +# CONFIG_TUNE_Z10 is not set +# CONFIG_TUNE_Z196 is not set +CONFIG_TUNE_ZEC12=y +# CONFIG_TUNE_Z13 is not set +CONFIG_64BIT=y +CONFIG_COMPAT=y +CONFIG_SYSVIPC_COMPAT=y +CONFIG_KEYS_COMPAT=y +CONFIG_SMP=y +CONFIG_NR_CPUS=256 +CONFIG_HOTPLUG_CPU=y +CONFIG_SCHED_SMT=y +CONFIG_NODES_SPAN_OTHER_NODES=y +CONFIG_NUMA=y +CONFIG_NODES_SHIFT=4 + +# +# Select NUMA modes +# +CONFIG_NUMA_EMU=y +CONFIG_EMU_SIZE=0x10000000 +CONFIG_SCHED_MC=y +CONFIG_SCHED_BOOK=y +CONFIG_SCHED_TOPOLOGY=y +CONFIG_PREEMPT_NONE=y +# CONFIG_PREEMPT_VOLUNTARY is not set +# CONFIG_PREEMPT is not set +CONFIG_HZ_100=y +# CONFIG_HZ_250 is not set +# CONFIG_HZ_300 is not set +# CONFIG_HZ_1000 is not set +CONFIG_HZ=100 +CONFIG_SCHED_HRTICK=y + +# +# Memory setup +# +CONFIG_ARCH_SPARSEMEM_ENABLE=y +CONFIG_ARCH_SPARSEMEM_DEFAULT=y +CONFIG_ARCH_SELECT_MEMORY_MODEL=y +CONFIG_ARCH_ENABLE_MEMORY_HOTPLUG=y +CONFIG_ARCH_ENABLE_MEMORY_HOTREMOVE=y +CONFIG_ARCH_ENABLE_SPLIT_PMD_PTLOCK=y +CONFIG_FORCE_MAX_ZONEORDER=9 +CONFIG_SELECT_MEMORY_MODEL=y +CONFIG_SPARSEMEM_MANUAL=y +CONFIG_SPARSEMEM=y +CONFIG_NEED_MULTIPLE_NODES=y +CONFIG_HAVE_MEMORY_PRESENT=y +CONFIG_SPARSEMEM_EXTREME=y +CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y +CONFIG_SPARSEMEM_VMEMMAP=y +CONFIG_HAVE_MEMBLOCK=y +CONFIG_HAVE_MEMBLOCK_NODE_MAP=y +CONFIG_HAVE_MEMBLOCK_PHYS_MAP=y +CONFIG_NO_BOOTMEM=y +CONFIG_MEMORY_ISOLATION=y +# CONFIG_HAVE_BOOTMEM_INFO_NODE is not set +CONFIG_MEMORY_HOTPLUG=y +CONFIG_MEMORY_HOTPLUG_SPARSE=y +CONFIG_MEMORY_HOTREMOVE=y +CONFIG_SPLIT_PTLOCK_CPUS=4 +CONFIG_MEMORY_BALLOON=y +CONFIG_BALLOON_COMPACTION=y +CONFIG_COMPACTION=y +CONFIG_MIGRATION=y +CONFIG_PHYS_ADDR_T_64BIT=y +CONFIG_ZONE_DMA_FLAG=1 +# CONFIG_BOUNCE is not set +CONFIG_VIRT_TO_BUS=y +CONFIG_MMU_NOTIFIER=y +CONFIG_KSM=y +CONFIG_DEFAULT_MMAP_MIN_ADDR=65536 +CONFIG_TRANSPARENT_HUGEPAGE=y +CONFIG_TRANSPARENT_HUGEPAGE_ALWAYS=y +# CONFIG_TRANSPARENT_HUGEPAGE_MADVISE is not set +CONFIG_CLEANCACHE=y +CONFIG_FRONTSWAP=y +# CONFIG_CMA is not set +CONFIG_MEM_SOFT_DIRTY=y +CONFIG_ZSWAP=y +CONFIG_ZPOOL=y +CONFIG_ZBUD=y +CONFIG_ZSMALLOC=y +# CONFIG_PGTABLE_MAPPING is not set +# CONFIG_ZSMALLOC_STAT is not set +CONFIG_IDLE_PAGE_TRACKING=y +CONFIG_PACK_STACK=y +CONFIG_CHECK_STACK=y +CONFIG_STACK_GUARD=256 +# CONFIG_WARN_DYNAMIC_STACK is not set + +# +# I/O subsystem +# +CONFIG_QDIO=m +CONFIG_PCI=y +CONFIG_PCI_NR_FUNCTIONS=64 +CONFIG_PCI_NR_MSI=256 +CONFIG_PCI_BUS_ADDR_T_64BIT=y +CONFIG_PCI_MSI=y +# CONFIG_PCI_DEBUG is not set +CONFIG_PCI_REALLOC_ENABLE_AUTO=y +CONFIG_PCI_STUB=m +CONFIG_PCI_ATS=y +CONFIG_PCI_IOV=y +# CONFIG_PCI_PRI is not set +# CONFIG_PCI_PASID is not set + +# +# PCI host controller drivers +# +CONFIG_PCIEPORTBUS=y +CONFIG_HOTPLUG_PCI_PCIE=y +CONFIG_PCIEAER=y +# CONFIG_PCIE_ECRC is not set +# CONFIG_PCIEAER_INJECT is not set +CONFIG_PCIEASPM=y +CONFIG_PCIEASPM_DEBUG=y +CONFIG_PCIEASPM_DEFAULT=y +# CONFIG_PCIEASPM_POWERSAVE is not set +# CONFIG_PCIEASPM_PERFORMANCE is not set +CONFIG_PCIE_PME=y +CONFIG_HOTPLUG_PCI=y +CONFIG_HOTPLUG_PCI_CPCI=y +# CONFIG_HOTPLUG_PCI_SHPC is not set +CONFIG_HOTPLUG_PCI_S390=y +CONFIG_PCI_DOMAINS=y +CONFIG_HAS_IOMEM=y +CONFIG_IOMMU_HELPER=y +CONFIG_HAS_DMA=y +CONFIG_NEED_SG_DMA_LENGTH=y +CONFIG_NEED_DMA_MAP_STATE=y +CONFIG_CHSC_SCH=m +CONFIG_SCM_BUS=y +CONFIG_EADM_SCH=m + +# +# Dump support +# +CONFIG_CRASH_DUMP=y + +# +# Executable file formats / Emulations +# +CONFIG_BINFMT_ELF=y +CONFIG_COMPAT_BINFMT_ELF=y +CONFIG_CORE_DUMP_DEFAULT_ELF_HEADERS=y +CONFIG_BINFMT_SCRIPT=y +# CONFIG_HAVE_AOUT is not set +CONFIG_BINFMT_MISC=m +CONFIG_COREDUMP=y +CONFIG_SECCOMP=y + +# +# Power Management +# +CONFIG_ARCH_HIBERNATION_POSSIBLE=y +CONFIG_HIBERNATE_CALLBACKS=y +CONFIG_HIBERNATION=y +CONFIG_ARCH_SAVE_PAGE_KEYS=y +CONFIG_PM_STD_PARTITION="" +CONFIG_PM_SLEEP=y +CONFIG_PM_SLEEP_SMP=y +# CONFIG_PM_AUTOSLEEP is not set +# CONFIG_PM_WAKELOCKS is not set +CONFIG_PM=y +# CONFIG_PM_DEBUG is not set +CONFIG_WQ_POWER_EFFICIENT_DEFAULT=y +CONFIG_NET=y +CONFIG_NET_INGRESS=y + +# +# Networking options +# +CONFIG_PACKET=y +CONFIG_PACKET_DIAG=m +CONFIG_UNIX=y +CONFIG_UNIX_DIAG=m +CONFIG_XFRM=y +CONFIG_XFRM_ALGO=m +CONFIG_XFRM_USER=m +# CONFIG_XFRM_SUB_POLICY is not set +# CONFIG_XFRM_MIGRATE is not set +CONFIG_XFRM_STATISTICS=y +CONFIG_XFRM_IPCOMP=m +CONFIG_NET_KEY=m +# CONFIG_NET_KEY_MIGRATE is not set +CONFIG_IUCV=y +CONFIG_AFIUCV=m +CONFIG_INET=y +CONFIG_IP_MULTICAST=y +CONFIG_IP_ADVANCED_ROUTER=y +CONFIG_IP_FIB_TRIE_STATS=y +CONFIG_IP_MULTIPLE_TABLES=y +CONFIG_IP_ROUTE_MULTIPATH=y +CONFIG_IP_ROUTE_VERBOSE=y +CONFIG_IP_ROUTE_CLASSID=y +# CONFIG_IP_PNP is not set +CONFIG_NET_IPIP=m +CONFIG_NET_IPGRE_DEMUX=m +CONFIG_NET_IP_TUNNEL=m +CONFIG_NET_IPGRE=m +CONFIG_NET_IPGRE_BROADCAST=y +CONFIG_IP_MROUTE=y +# CONFIG_IP_MROUTE_MULTIPLE_TABLES is not set +CONFIG_IP_PIMSM_V1=y +CONFIG_IP_PIMSM_V2=y +CONFIG_SYN_COOKIES=y +CONFIG_NET_IPVTI=m +CONFIG_NET_UDP_TUNNEL=m +CONFIG_NET_FOU=m +CONFIG_NET_FOU_IP_TUNNELS=y +CONFIG_INET_AH=m +CONFIG_INET_ESP=m +CONFIG_INET_IPCOMP=m +CONFIG_INET_XFRM_TUNNEL=m +CONFIG_INET_TUNNEL=m +CONFIG_INET_XFRM_MODE_TRANSPORT=m +CONFIG_INET_XFRM_MODE_TUNNEL=m +CONFIG_INET_XFRM_MODE_BEET=m +CONFIG_INET_LRO=y +CONFIG_INET_DIAG=m +CONFIG_INET_TCP_DIAG=m +CONFIG_INET_UDP_DIAG=m +CONFIG_TCP_CONG_ADVANCED=y +CONFIG_TCP_CONG_BIC=m +CONFIG_TCP_CONG_CUBIC=y +CONFIG_TCP_CONG_WESTWOOD=m +CONFIG_TCP_CONG_HTCP=m +CONFIG_TCP_CONG_HSTCP=m +CONFIG_TCP_CONG_HYBLA=m +CONFIG_TCP_CONG_VEGAS=m +CONFIG_TCP_CONG_SCALABLE=m +CONFIG_TCP_CONG_LP=m +CONFIG_TCP_CONG_VENO=m +CONFIG_TCP_CONG_YEAH=m +CONFIG_TCP_CONG_ILLINOIS=m +CONFIG_TCP_CONG_DCTCP=m +CONFIG_TCP_CONG_CDG=m +CONFIG_DEFAULT_CUBIC=y +# CONFIG_DEFAULT_RENO is not set +CONFIG_DEFAULT_TCP_CONG="cubic" +CONFIG_TCP_MD5SIG=y +CONFIG_IPV6=y +CONFIG_IPV6_ROUTER_PREF=y +CONFIG_IPV6_ROUTE_INFO=y +# CONFIG_IPV6_OPTIMISTIC_DAD is not set +CONFIG_INET6_AH=m +CONFIG_INET6_ESP=m +CONFIG_INET6_IPCOMP=m +CONFIG_IPV6_MIP6=m +CONFIG_IPV6_ILA=m +CONFIG_INET6_XFRM_TUNNEL=m +CONFIG_INET6_TUNNEL=m +CONFIG_INET6_XFRM_MODE_TRANSPORT=m +CONFIG_INET6_XFRM_MODE_TUNNEL=m +CONFIG_INET6_XFRM_MODE_BEET=m +CONFIG_INET6_XFRM_MODE_ROUTEOPTIMIZATION=m +CONFIG_IPV6_VTI=m +CONFIG_IPV6_SIT=m +CONFIG_IPV6_SIT_6RD=y +CONFIG_IPV6_NDISC_NODETYPE=y +CONFIG_IPV6_TUNNEL=m +CONFIG_IPV6_GRE=m +CONFIG_IPV6_MULTIPLE_TABLES=y +CONFIG_IPV6_SUBTREES=y +CONFIG_IPV6_MROUTE=y +CONFIG_IPV6_MROUTE_MULTIPLE_TABLES=y +CONFIG_IPV6_PIMSM_V2=y +CONFIG_NETLABEL=y +CONFIG_NETWORK_SECMARK=y +CONFIG_NET_PTP_CLASSIFY=y +# CONFIG_NETWORK_PHY_TIMESTAMPING is not set +CONFIG_NETFILTER=y +# CONFIG_NETFILTER_DEBUG is not set +CONFIG_NETFILTER_ADVANCED=y +CONFIG_BRIDGE_NETFILTER=m + +# +# Core Netfilter Configuration +# +CONFIG_NETFILTER_INGRESS=y +CONFIG_NETFILTER_NETLINK=m +CONFIG_NETFILTER_NETLINK_ACCT=m +CONFIG_NETFILTER_NETLINK_QUEUE=m +CONFIG_NETFILTER_NETLINK_LOG=m +CONFIG_NF_CONNTRACK=m +CONFIG_NF_LOG_COMMON=m +CONFIG_NF_CONNTRACK_MARK=y +CONFIG_NF_CONNTRACK_SECMARK=y +CONFIG_NF_CONNTRACK_ZONES=y +# CONFIG_NF_CONNTRACK_PROCFS is not set +CONFIG_NF_CONNTRACK_EVENTS=y +CONFIG_NF_CONNTRACK_TIMEOUT=y +CONFIG_NF_CONNTRACK_TIMESTAMP=y +CONFIG_NF_CONNTRACK_LABELS=y +CONFIG_NF_CT_PROTO_DCCP=m +CONFIG_NF_CT_PROTO_GRE=m +CONFIG_NF_CT_PROTO_SCTP=m +CONFIG_NF_CT_PROTO_UDPLITE=m +CONFIG_NF_CONNTRACK_AMANDA=m +CONFIG_NF_CONNTRACK_FTP=m +CONFIG_NF_CONNTRACK_H323=m +CONFIG_NF_CONNTRACK_IRC=m +CONFIG_NF_CONNTRACK_BROADCAST=m +CONFIG_NF_CONNTRACK_NETBIOS_NS=m +CONFIG_NF_CONNTRACK_SNMP=m +CONFIG_NF_CONNTRACK_PPTP=m +CONFIG_NF_CONNTRACK_SANE=m +CONFIG_NF_CONNTRACK_SIP=m +CONFIG_NF_CONNTRACK_TFTP=m +CONFIG_NF_CT_NETLINK=m +CONFIG_NF_CT_NETLINK_TIMEOUT=m +CONFIG_NF_CT_NETLINK_HELPER=m +CONFIG_NETFILTER_NETLINK_GLUE_CT=y +CONFIG_NF_NAT=m +CONFIG_NF_NAT_NEEDED=y +CONFIG_NF_NAT_PROTO_DCCP=m +CONFIG_NF_NAT_PROTO_UDPLITE=m +CONFIG_NF_NAT_PROTO_SCTP=m +CONFIG_NF_NAT_AMANDA=m +CONFIG_NF_NAT_FTP=m +CONFIG_NF_NAT_IRC=m +CONFIG_NF_NAT_SIP=m +CONFIG_NF_NAT_TFTP=m +CONFIG_NF_NAT_REDIRECT=m +CONFIG_NETFILTER_SYNPROXY=m +CONFIG_NF_TABLES=m +CONFIG_NF_TABLES_INET=m +CONFIG_NF_TABLES_NETDEV=m +CONFIG_NFT_EXTHDR=m +CONFIG_NFT_META=m +CONFIG_NFT_CT=m +CONFIG_NFT_RBTREE=m +CONFIG_NFT_HASH=m +CONFIG_NFT_COUNTER=m +CONFIG_NFT_LOG=m +CONFIG_NFT_LIMIT=m +CONFIG_NFT_MASQ=m +CONFIG_NFT_REDIR=m +CONFIG_NFT_NAT=m +CONFIG_NFT_QUEUE=m +CONFIG_NFT_REJECT=m +CONFIG_NFT_REJECT_INET=m +CONFIG_NFT_COMPAT=m +CONFIG_NETFILTER_XTABLES=m + +# +# Xtables combined modules +# +CONFIG_NETFILTER_XT_MARK=m +CONFIG_NETFILTER_XT_CONNMARK=m +CONFIG_NETFILTER_XT_SET=m + +# +# Xtables targets +# +CONFIG_NETFILTER_XT_TARGET_AUDIT=m +CONFIG_NETFILTER_XT_TARGET_CHECKSUM=m +CONFIG_NETFILTER_XT_TARGET_CLASSIFY=m +CONFIG_NETFILTER_XT_TARGET_CONNMARK=m +CONFIG_NETFILTER_XT_TARGET_CONNSECMARK=m +CONFIG_NETFILTER_XT_TARGET_CT=m +CONFIG_NETFILTER_XT_TARGET_DSCP=m +CONFIG_NETFILTER_XT_TARGET_HL=m +CONFIG_NETFILTER_XT_TARGET_HMARK=m +CONFIG_NETFILTER_XT_TARGET_IDLETIMER=m +CONFIG_NETFILTER_XT_TARGET_LOG=m +CONFIG_NETFILTER_XT_TARGET_MARK=m +CONFIG_NETFILTER_XT_NAT=m +CONFIG_NETFILTER_XT_TARGET_NETMAP=m +CONFIG_NETFILTER_XT_TARGET_NFLOG=m +CONFIG_NETFILTER_XT_TARGET_NFQUEUE=m +# CONFIG_NETFILTER_XT_TARGET_NOTRACK is not set +CONFIG_NETFILTER_XT_TARGET_RATEEST=m +CONFIG_NETFILTER_XT_TARGET_REDIRECT=m +CONFIG_NETFILTER_XT_TARGET_TEE=m +CONFIG_NETFILTER_XT_TARGET_TPROXY=m +CONFIG_NETFILTER_XT_TARGET_TRACE=m +CONFIG_NETFILTER_XT_TARGET_SECMARK=m +CONFIG_NETFILTER_XT_TARGET_TCPMSS=m +CONFIG_NETFILTER_XT_TARGET_TCPOPTSTRIP=m + +# +# Xtables matches +# +CONFIG_NETFILTER_XT_MATCH_ADDRTYPE=m +CONFIG_NETFILTER_XT_MATCH_BPF=m +CONFIG_NETFILTER_XT_MATCH_CGROUP=m +CONFIG_NETFILTER_XT_MATCH_CLUSTER=m +CONFIG_NETFILTER_XT_MATCH_COMMENT=m +CONFIG_NETFILTER_XT_MATCH_CONNBYTES=m +CONFIG_NETFILTER_XT_MATCH_CONNLABEL=m +CONFIG_NETFILTER_XT_MATCH_CONNLIMIT=m +CONFIG_NETFILTER_XT_MATCH_CONNMARK=m +CONFIG_NETFILTER_XT_MATCH_CONNTRACK=m +CONFIG_NETFILTER_XT_MATCH_CPU=m +CONFIG_NETFILTER_XT_MATCH_DCCP=m +CONFIG_NETFILTER_XT_MATCH_DEVGROUP=m +CONFIG_NETFILTER_XT_MATCH_DSCP=m +CONFIG_NETFILTER_XT_MATCH_ECN=m +CONFIG_NETFILTER_XT_MATCH_ESP=m +CONFIG_NETFILTER_XT_MATCH_HASHLIMIT=m +CONFIG_NETFILTER_XT_MATCH_HELPER=m +CONFIG_NETFILTER_XT_MATCH_HL=m +CONFIG_NETFILTER_XT_MATCH_IPCOMP=m +CONFIG_NETFILTER_XT_MATCH_IPRANGE=m +CONFIG_NETFILTER_XT_MATCH_IPVS=m +CONFIG_NETFILTER_XT_MATCH_L2TP=m +CONFIG_NETFILTER_XT_MATCH_LENGTH=m +CONFIG_NETFILTER_XT_MATCH_LIMIT=m +CONFIG_NETFILTER_XT_MATCH_MAC=m +CONFIG_NETFILTER_XT_MATCH_MARK=m +CONFIG_NETFILTER_XT_MATCH_MULTIPORT=m +CONFIG_NETFILTER_XT_MATCH_NFACCT=m +CONFIG_NETFILTER_XT_MATCH_OSF=m +CONFIG_NETFILTER_XT_MATCH_OWNER=m +CONFIG_NETFILTER_XT_MATCH_POLICY=m +CONFIG_NETFILTER_XT_MATCH_PHYSDEV=m +CONFIG_NETFILTER_XT_MATCH_PKTTYPE=m +CONFIG_NETFILTER_XT_MATCH_QUOTA=m +CONFIG_NETFILTER_XT_MATCH_RATEEST=m +CONFIG_NETFILTER_XT_MATCH_REALM=m +CONFIG_NETFILTER_XT_MATCH_RECENT=m +CONFIG_NETFILTER_XT_MATCH_SCTP=m +CONFIG_NETFILTER_XT_MATCH_SOCKET=m +CONFIG_NETFILTER_XT_MATCH_STATE=m +CONFIG_NETFILTER_XT_MATCH_STATISTIC=m +CONFIG_NETFILTER_XT_MATCH_STRING=m +CONFIG_NETFILTER_XT_MATCH_TCPMSS=m +CONFIG_NETFILTER_XT_MATCH_TIME=m +CONFIG_NETFILTER_XT_MATCH_U32=m +CONFIG_IP_SET=m +CONFIG_IP_SET_MAX=256 +CONFIG_IP_SET_BITMAP_IP=m +CONFIG_IP_SET_BITMAP_IPMAC=m +CONFIG_IP_SET_BITMAP_PORT=m +CONFIG_IP_SET_HASH_IP=m +CONFIG_IP_SET_HASH_IPMARK=m +CONFIG_IP_SET_HASH_IPPORT=m +CONFIG_IP_SET_HASH_IPPORTIP=m +CONFIG_IP_SET_HASH_IPPORTNET=m +CONFIG_IP_SET_HASH_MAC=m +CONFIG_IP_SET_HASH_NETPORTNET=m +CONFIG_IP_SET_HASH_NET=m +CONFIG_IP_SET_HASH_NETNET=m +CONFIG_IP_SET_HASH_NETPORT=m +CONFIG_IP_SET_HASH_NETIFACE=m +CONFIG_IP_SET_LIST_SET=m +CONFIG_IP_VS=m +CONFIG_IP_VS_IPV6=y +# CONFIG_IP_VS_DEBUG is not set +CONFIG_IP_VS_TAB_BITS=12 + +# +# IPVS transport protocol load balancing support +# +CONFIG_IP_VS_PROTO_TCP=y +CONFIG_IP_VS_PROTO_UDP=y +CONFIG_IP_VS_PROTO_AH_ESP=y +CONFIG_IP_VS_PROTO_ESP=y +CONFIG_IP_VS_PROTO_AH=y +CONFIG_IP_VS_PROTO_SCTP=y + +# +# IPVS scheduler +# +CONFIG_IP_VS_RR=m +CONFIG_IP_VS_WRR=m +CONFIG_IP_VS_LC=m +CONFIG_IP_VS_WLC=m +CONFIG_IP_VS_FO=m +CONFIG_IP_VS_OVF=m +CONFIG_IP_VS_LBLC=m +CONFIG_IP_VS_LBLCR=m +CONFIG_IP_VS_DH=m +CONFIG_IP_VS_SH=m +CONFIG_IP_VS_SED=m +CONFIG_IP_VS_NQ=m + +# +# IPVS SH scheduler +# +CONFIG_IP_VS_SH_TAB_BITS=8 + +# +# IPVS application helper +# +CONFIG_IP_VS_FTP=m +CONFIG_IP_VS_NFCT=y +CONFIG_IP_VS_PE_SIP=m + +# +# IP: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV4=m +CONFIG_NF_CONNTRACK_IPV4=m +CONFIG_NF_TABLES_IPV4=m +CONFIG_NFT_CHAIN_ROUTE_IPV4=m +CONFIG_NFT_REJECT_IPV4=m +CONFIG_NFT_DUP_IPV4=m +CONFIG_NF_TABLES_ARP=m +CONFIG_NF_DUP_IPV4=m +CONFIG_NF_LOG_ARP=m +CONFIG_NF_LOG_IPV4=m +CONFIG_NF_REJECT_IPV4=m +CONFIG_NF_NAT_IPV4=m +CONFIG_NFT_CHAIN_NAT_IPV4=m +CONFIG_NF_NAT_MASQUERADE_IPV4=m +CONFIG_NFT_MASQ_IPV4=m +CONFIG_NFT_REDIR_IPV4=m +CONFIG_NF_NAT_SNMP_BASIC=m +CONFIG_NF_NAT_PROTO_GRE=m +CONFIG_NF_NAT_PPTP=m +CONFIG_NF_NAT_H323=m +CONFIG_IP_NF_IPTABLES=m +CONFIG_IP_NF_MATCH_AH=m +CONFIG_IP_NF_MATCH_ECN=m +CONFIG_IP_NF_MATCH_RPFILTER=m +CONFIG_IP_NF_MATCH_TTL=m +CONFIG_IP_NF_FILTER=m +CONFIG_IP_NF_TARGET_REJECT=m +CONFIG_IP_NF_TARGET_SYNPROXY=m +CONFIG_IP_NF_NAT=m +CONFIG_IP_NF_TARGET_MASQUERADE=m +CONFIG_IP_NF_TARGET_NETMAP=m +CONFIG_IP_NF_TARGET_REDIRECT=m +CONFIG_IP_NF_MANGLE=m +CONFIG_IP_NF_TARGET_CLUSTERIP=m +CONFIG_IP_NF_TARGET_ECN=m +CONFIG_IP_NF_TARGET_TTL=m +CONFIG_IP_NF_RAW=m +CONFIG_IP_NF_SECURITY=m +CONFIG_IP_NF_ARPTABLES=m +CONFIG_IP_NF_ARPFILTER=m +CONFIG_IP_NF_ARP_MANGLE=m + +# +# IPv6: Netfilter Configuration +# +CONFIG_NF_DEFRAG_IPV6=m +CONFIG_NF_CONNTRACK_IPV6=m +CONFIG_NF_TABLES_IPV6=m +CONFIG_NFT_CHAIN_ROUTE_IPV6=m +CONFIG_NFT_REJECT_IPV6=m +CONFIG_NFT_DUP_IPV6=m +CONFIG_NF_DUP_IPV6=m +CONFIG_NF_REJECT_IPV6=m +CONFIG_NF_LOG_IPV6=m +CONFIG_NF_NAT_IPV6=m +CONFIG_NFT_CHAIN_NAT_IPV6=m +CONFIG_NF_NAT_MASQUERADE_IPV6=m +CONFIG_NFT_MASQ_IPV6=m +CONFIG_NFT_REDIR_IPV6=m +CONFIG_IP6_NF_IPTABLES=m +CONFIG_IP6_NF_MATCH_AH=m +CONFIG_IP6_NF_MATCH_EUI64=m +CONFIG_IP6_NF_MATCH_FRAG=m +CONFIG_IP6_NF_MATCH_OPTS=m +CONFIG_IP6_NF_MATCH_HL=m +CONFIG_IP6_NF_MATCH_IPV6HEADER=m +CONFIG_IP6_NF_MATCH_MH=m +CONFIG_IP6_NF_MATCH_RPFILTER=m +CONFIG_IP6_NF_MATCH_RT=m +CONFIG_IP6_NF_TARGET_HL=m +CONFIG_IP6_NF_FILTER=m +CONFIG_IP6_NF_TARGET_REJECT=m +CONFIG_IP6_NF_TARGET_SYNPROXY=m +CONFIG_IP6_NF_MANGLE=m +CONFIG_IP6_NF_RAW=m +CONFIG_IP6_NF_SECURITY=m +CONFIG_IP6_NF_NAT=m +CONFIG_IP6_NF_TARGET_MASQUERADE=m +CONFIG_IP6_NF_TARGET_NPT=m +CONFIG_NF_TABLES_BRIDGE=m +CONFIG_NFT_BRIDGE_META=m +CONFIG_NFT_BRIDGE_REJECT=m +CONFIG_NF_LOG_BRIDGE=m +CONFIG_BRIDGE_NF_EBTABLES=m +CONFIG_BRIDGE_EBT_BROUTE=m +CONFIG_BRIDGE_EBT_T_FILTER=m +CONFIG_BRIDGE_EBT_T_NAT=m +CONFIG_BRIDGE_EBT_802_3=m +CONFIG_BRIDGE_EBT_AMONG=m +CONFIG_BRIDGE_EBT_ARP=m +CONFIG_BRIDGE_EBT_IP=m +CONFIG_BRIDGE_EBT_IP6=m +CONFIG_BRIDGE_EBT_LIMIT=m +CONFIG_BRIDGE_EBT_MARK=m +CONFIG_BRIDGE_EBT_PKTTYPE=m +CONFIG_BRIDGE_EBT_STP=m +CONFIG_BRIDGE_EBT_VLAN=m +CONFIG_BRIDGE_EBT_ARPREPLY=m +CONFIG_BRIDGE_EBT_DNAT=m +CONFIG_BRIDGE_EBT_MARK_T=m +CONFIG_BRIDGE_EBT_REDIRECT=m +CONFIG_BRIDGE_EBT_SNAT=m +CONFIG_BRIDGE_EBT_LOG=m +CONFIG_BRIDGE_EBT_NFLOG=m +CONFIG_IP_DCCP=m +CONFIG_INET_DCCP_DIAG=m + +# +# DCCP CCIDs Configuration +# +# CONFIG_IP_DCCP_CCID2_DEBUG is not set +CONFIG_IP_DCCP_CCID3=y +# CONFIG_IP_DCCP_CCID3_DEBUG is not set +CONFIG_IP_DCCP_TFRC_LIB=y + +# +# DCCP Kernel Hacking +# +# CONFIG_IP_DCCP_DEBUG is not set +CONFIG_NET_DCCPPROBE=m +CONFIG_IP_SCTP=m +CONFIG_NET_SCTPPROBE=m +# CONFIG_SCTP_DBG_OBJCNT is not set +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_MD5 is not set +CONFIG_SCTP_DEFAULT_COOKIE_HMAC_SHA1=y +# CONFIG_SCTP_DEFAULT_COOKIE_HMAC_NONE is not set +CONFIG_SCTP_COOKIE_HMAC_MD5=y +CONFIG_SCTP_COOKIE_HMAC_SHA1=y +CONFIG_RDS=m +CONFIG_RDS_RDMA=m +CONFIG_RDS_TCP=m +# CONFIG_RDS_DEBUG is not set +CONFIG_TIPC=m +CONFIG_TIPC_MEDIA_IB=y +CONFIG_TIPC_MEDIA_UDP=y +# CONFIG_ATM is not set +CONFIG_L2TP=m +CONFIG_L2TP_DEBUGFS=m +CONFIG_L2TP_V3=y +CONFIG_L2TP_IP=m +CONFIG_L2TP_ETH=m +CONFIG_STP=m +CONFIG_GARP=m +CONFIG_MRP=m +CONFIG_BRIDGE=m +CONFIG_BRIDGE_IGMP_SNOOPING=y +CONFIG_BRIDGE_VLAN_FILTERING=y +CONFIG_VLAN_8021Q=m +CONFIG_VLAN_8021Q_GVRP=y +CONFIG_VLAN_8021Q_MVRP=y +# CONFIG_DECNET is not set +CONFIG_LLC=m +# CONFIG_LLC2 is not set +# CONFIG_IPX is not set +# CONFIG_ATALK is not set +# CONFIG_X25 is not set +# CONFIG_LAPB is not set +# CONFIG_PHONET is not set +# CONFIG_6LOWPAN is not set +# CONFIG_IEEE802154 is not set +CONFIG_NET_SCHED=y + +# +# Queueing/Scheduling +# +CONFIG_NET_SCH_CBQ=m +CONFIG_NET_SCH_HTB=m +CONFIG_NET_SCH_HFSC=m +CONFIG_NET_SCH_PRIO=m +CONFIG_NET_SCH_MULTIQ=m +CONFIG_NET_SCH_RED=m +CONFIG_NET_SCH_SFB=m +CONFIG_NET_SCH_SFQ=m +CONFIG_NET_SCH_TEQL=m +CONFIG_NET_SCH_TBF=m +CONFIG_NET_SCH_GRED=m +CONFIG_NET_SCH_DSMARK=m +CONFIG_NET_SCH_NETEM=m +CONFIG_NET_SCH_DRR=m +CONFIG_NET_SCH_MQPRIO=m +CONFIG_NET_SCH_CHOKE=m +CONFIG_NET_SCH_QFQ=m +CONFIG_NET_SCH_CODEL=m +CONFIG_NET_SCH_FQ_CODEL=m +CONFIG_NET_SCH_FQ=m +CONFIG_NET_SCH_HHF=m +CONFIG_NET_SCH_PIE=m +CONFIG_NET_SCH_INGRESS=m +CONFIG_NET_SCH_PLUG=m + +# +# Classification +# +CONFIG_NET_CLS=y +CONFIG_NET_CLS_BASIC=m +CONFIG_NET_CLS_TCINDEX=m +CONFIG_NET_CLS_ROUTE4=m +CONFIG_NET_CLS_FW=m +CONFIG_NET_CLS_U32=m +# CONFIG_CLS_U32_PERF is not set +CONFIG_CLS_U32_MARK=y +CONFIG_NET_CLS_RSVP=m +CONFIG_NET_CLS_RSVP6=m +CONFIG_NET_CLS_FLOW=m +CONFIG_NET_CLS_CGROUP=m +CONFIG_NET_CLS_BPF=m +CONFIG_NET_CLS_FLOWER=m +CONFIG_NET_EMATCH=y +CONFIG_NET_EMATCH_STACK=32 +CONFIG_NET_EMATCH_CMP=m +CONFIG_NET_EMATCH_NBYTE=m +CONFIG_NET_EMATCH_U32=m +CONFIG_NET_EMATCH_META=m +CONFIG_NET_EMATCH_TEXT=m +CONFIG_NET_EMATCH_IPSET=m +CONFIG_NET_CLS_ACT=y +CONFIG_NET_ACT_POLICE=m +CONFIG_NET_ACT_GACT=m +CONFIG_GACT_PROB=y +CONFIG_NET_ACT_MIRRED=m +CONFIG_NET_ACT_IPT=m +CONFIG_NET_ACT_NAT=m +CONFIG_NET_ACT_PEDIT=m +CONFIG_NET_ACT_SIMP=m +CONFIG_NET_ACT_SKBEDIT=m +CONFIG_NET_ACT_CSUM=m +CONFIG_NET_ACT_VLAN=m +CONFIG_NET_ACT_BPF=m +CONFIG_NET_ACT_CONNMARK=m +# CONFIG_NET_CLS_IND is not set +CONFIG_NET_SCH_FIFO=y +CONFIG_DCB=y +CONFIG_DNS_RESOLVER=y +# CONFIG_BATMAN_ADV is not set +CONFIG_OPENVSWITCH=m +CONFIG_OPENVSWITCH_GRE=m +CONFIG_OPENVSWITCH_VXLAN=m +CONFIG_OPENVSWITCH_GENEVE=m +CONFIG_VSOCKETS=m +CONFIG_NETLINK_MMAP=y +CONFIG_NETLINK_DIAG=m +CONFIG_MPLS=y +CONFIG_NET_MPLS_GSO=m +CONFIG_MPLS_ROUTING=m +CONFIG_MPLS_IPTUNNEL=m +# CONFIG_HSR is not set +# CONFIG_NET_SWITCHDEV is not set +CONFIG_NET_L3_MASTER_DEV=y +CONFIG_RPS=y +CONFIG_RFS_ACCEL=y +CONFIG_XPS=y +CONFIG_CGROUP_NET_PRIO=y +CONFIG_CGROUP_NET_CLASSID=y +CONFIG_NET_RX_BUSY_POLL=y +CONFIG_BQL=y +CONFIG_BPF_JIT=y +CONFIG_NET_FLOW_LIMIT=y + +# +# Network testing +# +CONFIG_NET_PKTGEN=m +CONFIG_NET_TCPPROBE=m +# CONFIG_NET_DROP_MONITOR is not set +# CONFIG_CAN is not set +CONFIG_AF_RXRPC=m +# CONFIG_AF_RXRPC_DEBUG is not set +CONFIG_RXKAD=m +CONFIG_FIB_RULES=y +# CONFIG_WIMAX is not set +# CONFIG_RFKILL is not set +CONFIG_NET_9P=m +CONFIG_NET_9P_VIRTIO=m +CONFIG_NET_9P_RDMA=m +# CONFIG_NET_9P_DEBUG is not set +# CONFIG_CAIF is not set +CONFIG_CEPH_LIB=m +# CONFIG_CEPH_LIB_PRETTYDEBUG is not set +CONFIG_CEPH_LIB_USE_DNS_RESOLVER=y +# CONFIG_NFC is not set +CONFIG_LWTUNNEL=y +CONFIG_HAVE_BPF_JIT=y +# CONFIG_PCMCIA is not set +CONFIG_CCW=y + +# +# Device Drivers +# + +# +# Generic Driver Options +# +CONFIG_UEVENT_HELPER=y +CONFIG_UEVENT_HELPER_PATH="" +CONFIG_DEVTMPFS=y +CONFIG_DEVTMPFS_MOUNT=y +CONFIG_STANDALONE=y +CONFIG_PREVENT_FIRMWARE_BUILD=y +CONFIG_FW_LOADER=y +# CONFIG_FIRMWARE_IN_KERNEL is not set +CONFIG_EXTRA_FIRMWARE="" +# CONFIG_FW_LOADER_USER_HELPER_FALLBACK is not set +CONFIG_ALLOW_DEV_COREDUMP=y +# CONFIG_DEBUG_DRIVER is not set +# CONFIG_DEBUG_DEVRES is not set +CONFIG_SYS_HYPERVISOR=y +# CONFIG_GENERIC_CPU_DEVICES is not set +CONFIG_GENERIC_CPU_AUTOPROBE=y +# CONFIG_DMA_SHARED_BUFFER is not set + +# +# Bus devices +# +CONFIG_CONNECTOR=y +CONFIG_PROC_EVENTS=y +# CONFIG_MTD is not set +# CONFIG_OF is not set +# CONFIG_PARPORT is not set +CONFIG_BLK_DEV=y +CONFIG_BLK_DEV_NULL_BLK=m +# CONFIG_BLK_DEV_PCIESSD_MTIP32XX is not set +CONFIG_ZRAM=m +CONFIG_ZRAM_LZ4_COMPRESS=y +# CONFIG_BLK_CPQ_CISS_DA is not set +# CONFIG_BLK_DEV_DAC960 is not set +# CONFIG_BLK_DEV_UMEM is not set +# CONFIG_BLK_DEV_COW_COMMON is not set +CONFIG_BLK_DEV_LOOP=y +CONFIG_BLK_DEV_LOOP_MIN_COUNT=8 +# CONFIG_BLK_DEV_CRYPTOLOOP is not set +CONFIG_BLK_DEV_DRBD=m +# CONFIG_DRBD_FAULT_INJECTION is not set +CONFIG_BLK_DEV_NBD=m +# CONFIG_BLK_DEV_SKD is not set +CONFIG_BLK_DEV_OSD=m +# CONFIG_BLK_DEV_SX8 is not set +CONFIG_BLK_DEV_RAM=y +CONFIG_BLK_DEV_RAM_COUNT=16 +CONFIG_BLK_DEV_RAM_SIZE=65536 +CONFIG_BLK_DEV_RAM_DAX=y +# CONFIG_CDROM_PKTCDVD is not set +# CONFIG_ATA_OVER_ETH is not set + +# +# S/390 block device drivers +# +# CONFIG_BLK_DEV_XPRAM is not set +CONFIG_DCSSBLK=m +CONFIG_DASD=m +CONFIG_DASD_PROFILE=y +CONFIG_DASD_ECKD=m +CONFIG_DASD_FBA=m +CONFIG_DASD_DIAG=m +CONFIG_DASD_EER=y +CONFIG_SCM_BLOCK=m +CONFIG_SCM_BLOCK_CLUSTER_WRITE=y +CONFIG_VIRTIO_BLK=y +CONFIG_BLK_DEV_RBD=m +# CONFIG_BLK_DEV_RSXX is not set +# CONFIG_BLK_DEV_NVME is not set + +# +# Misc devices +# +# CONFIG_DUMMY_IRQ is not set +# CONFIG_PHANTOM is not set +# CONFIG_SGI_IOC4 is not set +# CONFIG_TIFM_CORE is not set +# CONFIG_ENCLOSURE_SERVICES is not set +# CONFIG_HP_ILO is not set +# CONFIG_SRAM is not set +# CONFIG_C2PORT is not set + +# +# EEPROM support +# +# CONFIG_EEPROM_93CX6 is not set +# CONFIG_CB710_CORE is not set + +# +# Texas Instruments shared transport line discipline +# + +# +# Altera FPGA firmware download module +# + +# +# Intel MIC Bus Driver +# + +# +# SCIF Bus Driver +# + +# +# Intel MIC Host Driver +# + +# +# Intel MIC Card Driver +# + +# +# SCIF Driver +# + +# +# Intel MIC Coprocessor State Management (COSM) Drivers +# +CONFIG_GENWQE=m +CONFIG_GENWQE_PLATFORM_ERROR_RECOVERY=0 +# CONFIG_ECHO is not set +# CONFIG_CXL_BASE is not set +# CONFIG_CXL_KERNEL_API is not set +# CONFIG_CXL_EEH is not set + +# +# SCSI device support +# +CONFIG_SCSI_MOD=y +CONFIG_RAID_ATTRS=m +CONFIG_SCSI=y +CONFIG_SCSI_DMA=y +CONFIG_SCSI_NETLINK=y +CONFIG_SCSI_MQ_DEFAULT=y +CONFIG_SCSI_PROC_FS=y + +# +# SCSI support type (disk, tape, CD-ROM) +# +CONFIG_BLK_DEV_SD=y +CONFIG_CHR_DEV_ST=m +CONFIG_CHR_DEV_OSST=m +CONFIG_BLK_DEV_SR=y +CONFIG_BLK_DEV_SR_VENDOR=y +CONFIG_CHR_DEV_SG=y +CONFIG_CHR_DEV_SCH=m +CONFIG_SCSI_CONSTANTS=y +CONFIG_SCSI_LOGGING=y +CONFIG_SCSI_SCAN_ASYNC=y + +# +# SCSI Transports +# +CONFIG_SCSI_SPI_ATTRS=m +CONFIG_SCSI_FC_ATTRS=m +CONFIG_SCSI_ISCSI_ATTRS=m +CONFIG_SCSI_SAS_ATTRS=m +CONFIG_SCSI_SAS_LIBSAS=m +CONFIG_SCSI_SAS_HOST_SMP=y +CONFIG_SCSI_SRP_ATTRS=m +CONFIG_SCSI_LOWLEVEL=y +CONFIG_ISCSI_TCP=m +CONFIG_ISCSI_BOOT_SYSFS=m +# CONFIG_SCSI_CXGB3_ISCSI is not set +# CONFIG_SCSI_CXGB4_ISCSI is not set +# CONFIG_SCSI_BNX2_ISCSI is not set +# CONFIG_SCSI_BNX2X_FCOE is not set +# CONFIG_BE2ISCSI is not set +# CONFIG_BLK_DEV_3W_XXXX_RAID is not set +# CONFIG_SCSI_HPSA is not set +# CONFIG_SCSI_3W_9XXX is not set +# CONFIG_SCSI_3W_SAS is not set +# CONFIG_SCSI_ACARD is not set +# CONFIG_SCSI_AACRAID is not set +# CONFIG_SCSI_AIC7XXX is not set +# CONFIG_SCSI_AIC79XX is not set +# CONFIG_SCSI_AIC94XX is not set +# CONFIG_SCSI_MVSAS is not set +# CONFIG_SCSI_MVUMI is not set +# CONFIG_SCSI_DPT_I2O is not set +# CONFIG_SCSI_ADVANSYS is not set +# CONFIG_SCSI_ARCMSR is not set +# CONFIG_SCSI_ESAS2R is not set +# CONFIG_MEGARAID_NEWGEN is not set +# CONFIG_MEGARAID_LEGACY is not set +# CONFIG_MEGARAID_SAS is not set +CONFIG_SCSI_MPT3SAS=m +CONFIG_SCSI_MPT2SAS_MAX_SGE=128 +CONFIG_SCSI_MPT3SAS_MAX_SGE=128 +CONFIG_SCSI_MPT2SAS=m +# CONFIG_SCSI_UFSHCD is not set +# CONFIG_SCSI_HPTIOP is not set +CONFIG_LIBFC=m +CONFIG_LIBFCOE=m +CONFIG_FCOE=m +# CONFIG_SCSI_SNIC is not set +# CONFIG_SCSI_DMX3191D is not set +# CONFIG_SCSI_FUTURE_DOMAIN is not set +# CONFIG_SCSI_IPS is not set +# CONFIG_SCSI_INITIO is not set +# CONFIG_SCSI_INIA100 is not set +# CONFIG_SCSI_STEX is not set +# CONFIG_SCSI_SYM53C8XX_2 is not set +# CONFIG_SCSI_QLOGIC_1280 is not set +# CONFIG_SCSI_QLA_FC is not set +# CONFIG_SCSI_QLA_ISCSI is not set +# CONFIG_SCSI_LPFC is not set +# CONFIG_SCSI_DC395x is not set +# CONFIG_SCSI_AM53C974 is not set +# CONFIG_SCSI_WD719X is not set +CONFIG_SCSI_DEBUG=m +CONFIG_ZFCP=m +# CONFIG_SCSI_PMCRAID is not set +# CONFIG_SCSI_PM8001 is not set +# CONFIG_SCSI_BFA_FC is not set +CONFIG_SCSI_VIRTIO=m +# CONFIG_SCSI_CHELSIO_FCOE is not set +CONFIG_SCSI_DH=y +CONFIG_SCSI_DH_RDAC=m +CONFIG_SCSI_DH_HP_SW=m +CONFIG_SCSI_DH_EMC=m +CONFIG_SCSI_DH_ALUA=m +CONFIG_SCSI_OSD_INITIATOR=m +CONFIG_SCSI_OSD_ULD=m +CONFIG_SCSI_OSD_DPRINT_SENSE=1 +# CONFIG_SCSI_OSD_DEBUG is not set +CONFIG_MD=y +CONFIG_BLK_DEV_MD=y +CONFIG_MD_AUTODETECT=y +CONFIG_MD_LINEAR=m +CONFIG_MD_RAID0=m +CONFIG_MD_RAID1=m +CONFIG_MD_RAID10=m +CONFIG_MD_RAID456=m +CONFIG_MD_MULTIPATH=y +CONFIG_MD_FAULTY=m +CONFIG_MD_CLUSTER=m +CONFIG_BCACHE=m +# CONFIG_BCACHE_DEBUG is not set +# CONFIG_BCACHE_CLOSURES_DEBUG is not set +CONFIG_BLK_DEV_DM_BUILTIN=y +CONFIG_BLK_DEV_DM=y +CONFIG_DM_MQ_DEFAULT=y +CONFIG_DM_DEBUG=y +CONFIG_DM_BUFIO=m +CONFIG_DM_BIO_PRISON=m +CONFIG_DM_PERSISTENT_DATA=m +# CONFIG_DM_DEBUG_BLOCK_STACK_TRACING is not set +CONFIG_DM_CRYPT=m +CONFIG_DM_SNAPSHOT=m +CONFIG_DM_THIN_PROVISIONING=m +CONFIG_DM_CACHE=m +CONFIG_DM_CACHE_MQ=m +CONFIG_DM_CACHE_SMQ=m +CONFIG_DM_CACHE_CLEANER=m +CONFIG_DM_ERA=m +CONFIG_DM_MIRROR=m +CONFIG_DM_LOG_USERSPACE=m +CONFIG_DM_RAID=m +CONFIG_DM_ZERO=m +CONFIG_DM_MULTIPATH=m +CONFIG_DM_MULTIPATH_QL=m +CONFIG_DM_MULTIPATH_ST=m +CONFIG_DM_DELAY=m +CONFIG_DM_UEVENT=y +CONFIG_DM_FLAKEY=m +CONFIG_DM_VERITY=m +CONFIG_DM_SWITCH=m +CONFIG_DM_LOG_WRITES=m +CONFIG_TARGET_CORE=m +CONFIG_TCM_IBLOCK=m +CONFIG_TCM_FILEIO=m +CONFIG_TCM_PSCSI=m +CONFIG_LOOPBACK_TARGET=m +CONFIG_TCM_FC=m +CONFIG_ISCSI_TARGET=m +# CONFIG_FUSION is not set + +# +# IEEE 1394 (FireWire) support +# +# CONFIG_FIREWIRE is not set +# CONFIG_FIREWIRE_NOSY is not set +CONFIG_NETDEVICES=y +CONFIG_NET_CORE=y +CONFIG_BONDING=m +CONFIG_DUMMY=m +CONFIG_EQUALIZER=m +CONFIG_NET_FC=y +CONFIG_IFB=m +CONFIG_NET_TEAM=m +CONFIG_NET_TEAM_MODE_BROADCAST=m +CONFIG_NET_TEAM_MODE_ROUNDROBIN=m +CONFIG_NET_TEAM_MODE_RANDOM=m +CONFIG_NET_TEAM_MODE_ACTIVEBACKUP=m +CONFIG_NET_TEAM_MODE_LOADBALANCE=m +CONFIG_MACVLAN=m +CONFIG_MACVTAP=m +CONFIG_IPVLAN=m +CONFIG_VXLAN=m +CONFIG_GENEVE=m +CONFIG_NETCONSOLE=m +CONFIG_NETCONSOLE_DYNAMIC=y +CONFIG_NETPOLL=y +CONFIG_NET_POLL_CONTROLLER=y +CONFIG_TUN=y +# CONFIG_TUN_VNET_CROSS_LE is not set +CONFIG_VETH=m +CONFIG_VIRTIO_NET=y +CONFIG_NLMON=m +CONFIG_NET_VRF=m +# CONFIG_ARCNET is not set + +# +# CAIF transport drivers +# +CONFIG_VHOST_NET=m +CONFIG_VHOST_SCSI=m +CONFIG_VHOST_RING=m +CONFIG_VHOST=m +# CONFIG_VHOST_CROSS_ENDIAN_LEGACY is not set +CONFIG_ETHERNET=y +# CONFIG_NET_VENDOR_3COM is not set +# CONFIG_NET_VENDOR_ADAPTEC is not set +# CONFIG_NET_VENDOR_AGERE is not set +# CONFIG_NET_VENDOR_ALTEON is not set +# CONFIG_ALTERA_TSE is not set +# CONFIG_NET_VENDOR_AMD is not set +# CONFIG_NET_VENDOR_ARC is not set +# CONFIG_NET_VENDOR_ATHEROS is not set +CONFIG_NET_VENDOR_AURORA=y +CONFIG_AURORA_NB8800=m +# CONFIG_NET_CADENCE is not set +# CONFIG_NET_VENDOR_BROADCOM is not set +# CONFIG_NET_VENDOR_BROCADE is not set +# CONFIG_NET_VENDOR_CAVIUM is not set +# CONFIG_NET_VENDOR_CHELSIO is not set +# CONFIG_NET_VENDOR_CISCO is not set +# CONFIG_DNET is not set +# CONFIG_NET_VENDOR_DEC is not set +# CONFIG_NET_VENDOR_DLINK is not set +# CONFIG_NET_VENDOR_EMULEX is not set +# CONFIG_NET_VENDOR_EZCHIP is not set +# CONFIG_NET_VENDOR_EXAR is not set +# CONFIG_NET_VENDOR_HP is not set +# CONFIG_NET_VENDOR_INTEL is not set +# CONFIG_JME is not set +# CONFIG_NET_VENDOR_MARVELL is not set +CONFIG_NET_VENDOR_MELLANOX=y +CONFIG_MLX4_EN=m +CONFIG_MLX4_EN_DCB=y +CONFIG_MLX4_EN_VXLAN=y +CONFIG_MLX4_CORE=m +CONFIG_MLX4_DEBUG=y +CONFIG_MLX5_CORE=m +CONFIG_MLX5_CORE_EN=y +CONFIG_MLXSW_CORE=m +CONFIG_MLXSW_PCI=m +# CONFIG_NET_VENDOR_MICREL is not set +# CONFIG_NET_VENDOR_MYRI is not set +# CONFIG_FEALNX is not set +# CONFIG_NET_VENDOR_NATSEMI is not set +# CONFIG_NET_VENDOR_NVIDIA is not set +# CONFIG_NET_VENDOR_OKI is not set +# CONFIG_ETHOC is not set +# CONFIG_NET_PACKET_ENGINE is not set +# CONFIG_NET_VENDOR_QLOGIC is not set +# CONFIG_NET_VENDOR_QUALCOMM is not set +# CONFIG_NET_VENDOR_REALTEK is not set +# CONFIG_NET_VENDOR_RENESAS is not set +# CONFIG_NET_VENDOR_RDC is not set +# CONFIG_NET_VENDOR_ROCKER is not set +# CONFIG_NET_VENDOR_SAMSUNG is not set +# CONFIG_NET_VENDOR_SEEQ is not set +# CONFIG_NET_VENDOR_SILAN is not set +# CONFIG_NET_VENDOR_SIS is not set +# CONFIG_SFC is not set +# CONFIG_NET_VENDOR_SMSC is not set +# CONFIG_NET_VENDOR_STMICRO is not set +# CONFIG_NET_VENDOR_SUN is not set +# CONFIG_NET_VENDOR_SYNOPSYS is not set +# CONFIG_NET_VENDOR_TEHUTI is not set +# CONFIG_NET_VENDOR_TI is not set +# CONFIG_NET_VENDOR_VIA is not set +# CONFIG_NET_VENDOR_WIZNET is not set +# CONFIG_FDDI is not set +# CONFIG_HIPPI is not set +CONFIG_PHYLIB=m + +# +# MII PHY device drivers +# +CONFIG_AQUANTIA_PHY=m +CONFIG_AT803X_PHY=m +CONFIG_AMD_PHY=m +CONFIG_MARVELL_PHY=m +CONFIG_DAVICOM_PHY=m +CONFIG_QSEMI_PHY=m +CONFIG_LXT_PHY=m +CONFIG_CICADA_PHY=m +CONFIG_VITESSE_PHY=m +CONFIG_TERANETICS_PHY=m +CONFIG_SMSC_PHY=m +CONFIG_BCM_NET_PHYLIB=m +CONFIG_BROADCOM_PHY=m +CONFIG_BCM7XXX_PHY=m +CONFIG_BCM87XX_PHY=m +CONFIG_ICPLUS_PHY=m +CONFIG_REALTEK_PHY=m +CONFIG_NATIONAL_PHY=m +CONFIG_STE10XP=m +CONFIG_LSI_ET1011C_PHY=m +CONFIG_MICREL_PHY=m +CONFIG_DP83848_PHY=m +CONFIG_DP83867_PHY=m +CONFIG_MICROCHIP_PHY=m +CONFIG_FIXED_PHY=m +CONFIG_MDIO_BITBANG=m +CONFIG_MDIO_CAVIUM=m +CONFIG_MDIO_OCTEON=m +CONFIG_MDIO_THUNDER=m +CONFIG_MDIO_BCM_UNIMAC=m +# CONFIG_PPP is not set +# CONFIG_SLIP is not set + +# +# S/390 network device drivers +# +CONFIG_LCS=m +CONFIG_CTCM=m +CONFIG_NETIUCV=m +CONFIG_SMSGIUCV=y +CONFIG_SMSGIUCV_EVENT=m +CONFIG_QETH=m +CONFIG_QETH_L2=m +CONFIG_QETH_L3=m +CONFIG_QETH_IPV6=y +CONFIG_CCWGROUP=m + +# +# Host-side USB support is needed for USB Network Adapter support +# + +# +# Enable WiMAX (Networking options) to see the WiMAX drivers +# +# CONFIG_WAN is not set +# CONFIG_VMXNET3 is not set +CONFIG_NVM=y +# CONFIG_NVM_DEBUG is not set +CONFIG_NVM_GENNVM=m +CONFIG_NVM_RRPC=m + +# +# Input device support +# +# CONFIG_INPUT is not set + +# +# Hardware I/O ports +# +# CONFIG_SERIO is not set +# CONFIG_GAMEPORT is not set + +# +# Character devices +# +CONFIG_TTY=y +CONFIG_UNIX98_PTYS=y +CONFIG_DEVPTS_MULTIPLE_INSTANCES=y +CONFIG_LEGACY_PTYS=y +CONFIG_LEGACY_PTY_COUNT=0 +# CONFIG_SERIAL_NONSTANDARD is not set +# CONFIG_NOZOMI is not set +# CONFIG_N_GSM is not set +# CONFIG_TRACE_SINK is not set +CONFIG_DEVMEM=y +# CONFIG_DEVKMEM is not set + +# +# Serial drivers +# +# CONFIG_SERIAL_8250 is not set + +# +# Non-8250 serial port support +# +CONFIG_SERIAL_UARTLITE=m +CONFIG_SERIAL_CORE=m +# CONFIG_SERIAL_JSM is not set +# CONFIG_SERIAL_SCCNXP is not set +# CONFIG_SERIAL_ALTERA_JTAGUART is not set +# CONFIG_SERIAL_ALTERA_UART is not set +# CONFIG_SERIAL_ARC is not set +# CONFIG_SERIAL_RP2 is not set +# CONFIG_SERIAL_FSL_LPUART is not set +# CONFIG_TTY_PRINTK is not set +CONFIG_HVC_DRIVER=y +CONFIG_HVC_IUCV=y +CONFIG_VIRTIO_CONSOLE=y +# CONFIG_IPMI_HANDLER is not set +CONFIG_HW_RANDOM=y +# CONFIG_HW_RANDOM_TIMERIOMEM is not set +CONFIG_HW_RANDOM_VIRTIO=m +CONFIG_HW_RANDOM_TPM=m +# CONFIG_R3964 is not set +# CONFIG_APPLICOM is not set +# CONFIG_RAW_DRIVER is not set +CONFIG_HANGCHECK_TIMER=m +CONFIG_TCG_TPM=y +CONFIG_DEVPORT=y + +# +# S/390 character device drivers +# +CONFIG_TN3270=y +CONFIG_TN3270_TTY=y +CONFIG_TN3270_FS=m +CONFIG_TN3270_CONSOLE=y +CONFIG_TN3215=y +CONFIG_TN3215_CONSOLE=y +CONFIG_CCW_CONSOLE=y +CONFIG_SCLP_TTY=y +CONFIG_SCLP_CONSOLE=y +CONFIG_SCLP_VT220_TTY=y +CONFIG_SCLP_VT220_CONSOLE=y +CONFIG_SCLP_CPI=m +CONFIG_SCLP_ASYNC=m +CONFIG_SCLP_ASYNC_ID="000000000" +CONFIG_HMC_DRV=m +CONFIG_S390_TAPE=m + +# +# S/390 tape hardware support +# +CONFIG_S390_TAPE_34XX=m +CONFIG_S390_TAPE_3590=m +CONFIG_VMLOGRDR=m +CONFIG_VMCP=y +CONFIG_MONREADER=m +CONFIG_MONWRITER=m +CONFIG_S390_VMUR=m +# CONFIG_XILLYBUS is not set + +# +# I2C support +# +# CONFIG_I2C is not set +# CONFIG_SPI is not set +# CONFIG_SPMI is not set +# CONFIG_HSI is not set + +# +# PPS support +# +CONFIG_PPS=m +# CONFIG_PPS_DEBUG is not set + +# +# PPS clients support +# +# CONFIG_PPS_CLIENT_KTIMER is not set +# CONFIG_PPS_CLIENT_LDISC is not set +# CONFIG_PPS_CLIENT_GPIO is not set + +# +# PPS generators support +# + +# +# PTP clock support +# +CONFIG_PTP_1588_CLOCK=m + +# +# Enable PHYLIB and NETWORK_PHY_TIMESTAMPING to see the additional clocks. +# +# CONFIG_W1 is not set +# CONFIG_POWER_SUPPLY is not set +# CONFIG_POWER_AVS is not set +# CONFIG_HWMON is not set +# CONFIG_THERMAL is not set +CONFIG_WATCHDOG=y +CONFIG_WATCHDOG_CORE=y +# CONFIG_WATCHDOG_NOWAYOUT is not set + +# +# Watchdog Device Drivers +# +CONFIG_SOFT_WATCHDOG=m +# CONFIG_XILINX_WATCHDOG is not set +# CONFIG_CADENCE_WATCHDOG is not set +# CONFIG_DW_WATCHDOG is not set +# CONFIG_MAX63XX_WATCHDOG is not set +# CONFIG_ALIM7101_WDT is not set +# CONFIG_I6300ESB_WDT is not set +CONFIG_BCM7038_WDT=m +CONFIG_DIAG288_WATCHDOG=m + +# +# PCI-based Watchdog Cards +# +# CONFIG_PCIPCWATCHDOG is not set +# CONFIG_WDTPCI is not set +CONFIG_SSB_POSSIBLE=y + +# +# Sonics Silicon Backplane +# +# CONFIG_SSB is not set +CONFIG_BCMA_POSSIBLE=y + +# +# Broadcom specific AMBA +# +# CONFIG_BCMA is not set + +# +# Multifunction device drivers +# +# CONFIG_MFD_CORE is not set +# CONFIG_HTC_PASIC3 is not set +# CONFIG_LPC_ICH is not set +# CONFIG_LPC_SCH is not set +# CONFIG_MFD_JANZ_CMODIO is not set +# CONFIG_MFD_KEMPLD is not set +# CONFIG_MFD_MT6397 is not set +# CONFIG_MFD_RDC321X is not set +# CONFIG_MFD_RTSX_PCI is not set +# CONFIG_MFD_SM501 is not set +# CONFIG_ABX500_CORE is not set +# CONFIG_MFD_SYSCON is not set +# CONFIG_MFD_TI_AM335X_TSCADC is not set +# CONFIG_MFD_TMIO is not set +# CONFIG_MFD_VX855 is not set +# CONFIG_REGULATOR is not set +# CONFIG_MEDIA_SUPPORT is not set + +# +# Graphics support +# +# CONFIG_DRM is not set + +# +# Frame buffer Devices +# +# CONFIG_FB is not set +# CONFIG_BACKLIGHT_LCD_SUPPORT is not set +# CONFIG_VGASTATE is not set +# CONFIG_SOUND is not set +CONFIG_USB_OHCI_LITTLE_ENDIAN=y +# CONFIG_USB_SUPPORT is not set +# CONFIG_UWB is not set +# CONFIG_MMC is not set +# CONFIG_MEMSTICK is not set +# CONFIG_NEW_LEDS is not set +# CONFIG_ACCESSIBILITY is not set +CONFIG_INFINIBAND=m +CONFIG_INFINIBAND_USER_MAD=m +CONFIG_INFINIBAND_USER_ACCESS=m +CONFIG_INFINIBAND_USER_MEM=y +CONFIG_INFINIBAND_ON_DEMAND_PAGING=y +CONFIG_INFINIBAND_ADDR_TRANS=y +CONFIG_INFINIBAND_MTHCA=m +# CONFIG_INFINIBAND_MTHCA_DEBUG is not set +# CONFIG_INFINIBAND_QIB is not set +CONFIG_MLX4_INFINIBAND=m +CONFIG_MLX5_INFINIBAND=m +# CONFIG_INFINIBAND_NES is not set +# CONFIG_INFINIBAND_OCRDMA is not set +CONFIG_INFINIBAND_IPOIB=m +CONFIG_INFINIBAND_IPOIB_CM=y +# CONFIG_INFINIBAND_IPOIB_DEBUG is not set +CONFIG_INFINIBAND_SRP=m +CONFIG_INFINIBAND_SRPT=m +CONFIG_INFINIBAND_ISER=m +CONFIG_INFINIBAND_ISERT=m +# CONFIG_DMADEVICES is not set +# CONFIG_AUXDISPLAY is not set +# CONFIG_UIO is not set +CONFIG_VFIO_IOMMU_TYPE1=m +CONFIG_VFIO_VIRQFD=m +CONFIG_VFIO=m +CONFIG_VFIO_PCI=m +CONFIG_IRQ_BYPASS_MANAGER=m +CONFIG_VIRT_DRIVERS=y +CONFIG_VIRTIO=y + +# +# Virtio drivers +# +CONFIG_VIRTIO_PCI=y +CONFIG_VIRTIO_PCI_LEGACY=y +CONFIG_VIRTIO_BALLOON=y +# CONFIG_VIRTIO_MMIO is not set + +# +# Microsoft Hyper-V guest support +# +# CONFIG_STAGING is not set + +# +# Hardware Spinlock drivers +# + +# +# Clock Source drivers +# +# CONFIG_ATMEL_PIT is not set +# CONFIG_SH_TIMER_CMT is not set +# CONFIG_SH_TIMER_MTU2 is not set +# CONFIG_SH_TIMER_TMU is not set +# CONFIG_EM_TIMER_STI is not set +# CONFIG_MAILBOX is not set +CONFIG_IOMMU_API=y +CONFIG_IOMMU_SUPPORT=y + +# +# Generic IOMMU Pagetable Support +# +CONFIG_S390_IOMMU=y + +# +# Remoteproc drivers +# +# CONFIG_STE_MODEM_RPROC is not set + +# +# Rpmsg drivers +# + +# +# SOC (System On Chip) specific Drivers +# +# CONFIG_SUNXI_SRAM is not set +# CONFIG_SOC_TI is not set +# CONFIG_PM_DEVFREQ is not set +# CONFIG_EXTCON is not set +# CONFIG_MEMORY is not set +# CONFIG_IIO is not set +# CONFIG_NTB is not set +# CONFIG_VME_BUS is not set +# CONFIG_PWM is not set +# CONFIG_IPACK_BUS is not set +# CONFIG_RESET_CONTROLLER is not set +# CONFIG_FMC is not set + +# +# PHY Subsystem +# +# CONFIG_GENERIC_PHY is not set +# CONFIG_PHY_PXA_28NM_HSIC is not set +# CONFIG_PHY_PXA_28NM_USB2 is not set +# CONFIG_BCM_KONA_USB2_PHY is not set +# CONFIG_POWERCAP is not set +# CONFIG_MCB is not set + +# +# Performance monitor support +# +CONFIG_RAS=y +# CONFIG_THUNDERBOLT is not set + +# +# Android +# +# CONFIG_ANDROID is not set +# CONFIG_LIBNVDIMM is not set +# CONFIG_NVMEM is not set +CONFIG_STM=m +CONFIG_STM_DUMMY=m +CONFIG_STM_SOURCE_CONSOLE=m +CONFIG_INTEL_TH=m +CONFIG_INTEL_TH_PCI=m +CONFIG_INTEL_TH_GTH=m +CONFIG_INTEL_TH_STH=m +CONFIG_INTEL_TH_MSU=m +CONFIG_INTEL_TH_PTI=m +# CONFIG_INTEL_TH_DEBUG is not set + +# +# FPGA Configuration Support +# +CONFIG_FPGA=m +CONFIG_FPGA_MGR_ZYNQ_FPGA=m + +# +# File systems +# +# CONFIG_EXT2_FS is not set +# CONFIG_EXT3_FS is not set +CONFIG_EXT4_FS=y +CONFIG_EXT4_USE_FOR_EXT2=y +CONFIG_EXT4_FS_POSIX_ACL=y +CONFIG_EXT4_FS_SECURITY=y +CONFIG_EXT4_ENCRYPTION=m +CONFIG_EXT4_FS_ENCRYPTION=y +# CONFIG_EXT4_DEBUG is not set +CONFIG_JBD2=y +# CONFIG_JBD2_DEBUG is not set +CONFIG_FS_MBCACHE=y +# CONFIG_REISERFS_FS is not set +# CONFIG_JFS_FS is not set +CONFIG_XFS_FS=m +CONFIG_XFS_QUOTA=y +CONFIG_XFS_POSIX_ACL=y +CONFIG_XFS_RT=y +# CONFIG_XFS_WARN is not set +# CONFIG_XFS_DEBUG is not set +CONFIG_GFS2_FS=m +CONFIG_GFS2_FS_LOCKING_DLM=y +CONFIG_OCFS2_FS=m +CONFIG_OCFS2_FS_O2CB=m +CONFIG_OCFS2_FS_USERSPACE_CLUSTER=m +CONFIG_OCFS2_FS_STATS=y +CONFIG_OCFS2_DEBUG_MASKLOG=y +# CONFIG_OCFS2_DEBUG_FS is not set +CONFIG_BTRFS_FS=m +CONFIG_BTRFS_FS_POSIX_ACL=y +# CONFIG_BTRFS_FS_CHECK_INTEGRITY is not set +# CONFIG_BTRFS_FS_RUN_SANITY_TESTS is not set +# CONFIG_BTRFS_DEBUG is not set +# CONFIG_BTRFS_ASSERT is not set +CONFIG_NILFS2_FS=m +# CONFIG_F2FS_FS is not set +CONFIG_FS_DAX=y +CONFIG_FS_POSIX_ACL=y +CONFIG_EXPORTFS=y +CONFIG_FILE_LOCKING=y +CONFIG_FSNOTIFY=y +CONFIG_DNOTIFY=y +CONFIG_INOTIFY_USER=y +CONFIG_FANOTIFY=y +CONFIG_FANOTIFY_ACCESS_PERMISSIONS=y +CONFIG_QUOTA=y +CONFIG_QUOTA_NETLINK_INTERFACE=y +# CONFIG_PRINT_QUOTA_WARNING is not set +# CONFIG_QUOTA_DEBUG is not set +CONFIG_QUOTA_TREE=m +CONFIG_QFMT_V1=m +CONFIG_QFMT_V2=m +CONFIG_QUOTACTL=y +CONFIG_AUTOFS4_FS=y +CONFIG_FUSE_FS=y +CONFIG_CUSE=m +CONFIG_OVERLAY_FS=m +CONFIG_OVERLAY_FS_V1=y + +# +# Caches +# +CONFIG_FSCACHE=m +CONFIG_FSCACHE_STATS=y +# CONFIG_FSCACHE_HISTOGRAM is not set +# CONFIG_FSCACHE_DEBUG is not set +# CONFIG_FSCACHE_OBJECT_LIST is not set +CONFIG_CACHEFILES=m +# CONFIG_CACHEFILES_DEBUG is not set +# CONFIG_CACHEFILES_HISTOGRAM is not set + +# +# CD-ROM/DVD Filesystems +# +CONFIG_ISO9660_FS=m +CONFIG_JOLIET=y +CONFIG_ZISOFS=y +CONFIG_UDF_FS=m +CONFIG_UDF_NLS=y + +# +# DOS/FAT/NT Filesystems +# +CONFIG_FAT_FS=y +CONFIG_MSDOS_FS=m +CONFIG_VFAT_FS=y +CONFIG_FAT_DEFAULT_CODEPAGE=437 +CONFIG_FAT_DEFAULT_IOCHARSET="iso8859-1" +CONFIG_NTFS_FS=m +# CONFIG_NTFS_DEBUG is not set +CONFIG_NTFS_RW=y + +# +# Pseudo filesystems +# +CONFIG_PROC_FS=y +CONFIG_PROC_KCORE=y +CONFIG_PROC_VMCORE=y +CONFIG_PROC_SYSCTL=y +CONFIG_PROC_PAGE_MONITOR=y +CONFIG_PROC_CHILDREN=y +CONFIG_KERNFS=y +CONFIG_SYSFS=y +CONFIG_TMPFS=y +CONFIG_TMPFS_POSIX_ACL=y +CONFIG_TMPFS_XATTR=y +CONFIG_HUGETLBFS=y +CONFIG_HUGETLB_PAGE=y +CONFIG_CONFIGFS_FS=y +CONFIG_MISC_FILESYSTEMS=y +# CONFIG_ADFS_FS is not set +# CONFIG_AFFS_FS is not set +CONFIG_ECRYPT_FS=y +CONFIG_ECRYPT_FS_MESSAGING=y +# CONFIG_HFS_FS is not set +# CONFIG_HFSPLUS_FS is not set +# CONFIG_BEFS_FS is not set +# CONFIG_BFS_FS is not set +# CONFIG_EFS_FS is not set +# CONFIG_LOGFS is not set +# CONFIG_CRAMFS is not set +CONFIG_SQUASHFS=y +# CONFIG_SQUASHFS_FILE_CACHE is not set +CONFIG_SQUASHFS_FILE_DIRECT=y +# CONFIG_SQUASHFS_DECOMP_SINGLE is not set +# CONFIG_SQUASHFS_DECOMP_MULTI is not set +CONFIG_SQUASHFS_DECOMP_MULTI_PERCPU=y +CONFIG_SQUASHFS_XATTR=y +CONFIG_SQUASHFS_ZLIB=y +CONFIG_SQUASHFS_LZ4=y +CONFIG_SQUASHFS_LZO=y +CONFIG_SQUASHFS_XZ=y +# CONFIG_SQUASHFS_4K_DEVBLK_SIZE is not set +# CONFIG_SQUASHFS_EMBEDDED is not set +CONFIG_SQUASHFS_FRAGMENT_CACHE_SIZE=3 +# CONFIG_VXFS_FS is not set +# CONFIG_MINIX_FS is not set +# CONFIG_MINIX_FS_NATIVE_ENDIAN is not set +# CONFIG_OMFS_FS is not set +# CONFIG_HPFS_FS is not set +# CONFIG_QNX4FS_FS is not set +# CONFIG_QNX6FS_FS is not set +# CONFIG_ROMFS_FS is not set +# CONFIG_PSTORE is not set +# CONFIG_SYSV_FS is not set +# CONFIG_UFS_FS is not set +# CONFIG_EXOFS_FS is not set +CONFIG_AUFS_FS=m +CONFIG_AUFS_BRANCH_MAX_127=y +# CONFIG_AUFS_BRANCH_MAX_511 is not set +# CONFIG_AUFS_BRANCH_MAX_1023 is not set +# CONFIG_AUFS_BRANCH_MAX_32767 is not set +CONFIG_AUFS_SBILIST=y +# CONFIG_AUFS_HNOTIFY is not set +CONFIG_AUFS_EXPORT=y +CONFIG_AUFS_XATTR=y +# CONFIG_AUFS_FHSM is not set +# CONFIG_AUFS_RDU is not set +# CONFIG_AUFS_SHWH is not set +# CONFIG_AUFS_BR_RAMFS is not set +# CONFIG_AUFS_BR_FUSE is not set +CONFIG_AUFS_BDEV_LOOP=y +# CONFIG_AUFS_DEBUG is not set +CONFIG_ORE=m +CONFIG_NETWORK_FILESYSTEMS=y +CONFIG_NFS_FS=m +CONFIG_NFS_V2=m +CONFIG_NFS_V3=m +CONFIG_NFS_V3_ACL=y +CONFIG_NFS_V4=m +CONFIG_NFS_SWAP=y +CONFIG_NFS_V4_1=y +CONFIG_NFS_V4_2=y +CONFIG_PNFS_FILE_LAYOUT=m +CONFIG_PNFS_BLOCK=m +CONFIG_PNFS_OBJLAYOUT=m +CONFIG_PNFS_FLEXFILE_LAYOUT=m +CONFIG_NFS_V4_1_IMPLEMENTATION_ID_DOMAIN="kernel.org" +CONFIG_NFS_V4_1_MIGRATION=y +CONFIG_NFS_V4_SECURITY_LABEL=y +CONFIG_NFS_FSCACHE=y +# CONFIG_NFS_USE_LEGACY_DNS is not set +CONFIG_NFS_USE_KERNEL_DNS=y +CONFIG_NFS_DEBUG=y +CONFIG_NFSD=m +CONFIG_NFSD_V2_ACL=y +CONFIG_NFSD_V3=y +CONFIG_NFSD_V3_ACL=y +CONFIG_NFSD_V4=y +CONFIG_NFSD_PNFS=y +CONFIG_NFSD_V4_SECURITY_LABEL=y +# CONFIG_NFSD_FAULT_INJECTION is not set +CONFIG_GRACE_PERIOD=m +CONFIG_LOCKD=m +CONFIG_LOCKD_V4=y +CONFIG_NFS_ACL_SUPPORT=m +CONFIG_NFS_COMMON=y +CONFIG_SUNRPC=m +CONFIG_SUNRPC_GSS=m +CONFIG_SUNRPC_BACKCHANNEL=y +CONFIG_SUNRPC_SWAP=y +CONFIG_RPCSEC_GSS_KRB5=m +CONFIG_SUNRPC_DEBUG=y +CONFIG_SUNRPC_XPRT_RDMA=m +CONFIG_CEPH_FS=m +CONFIG_CEPH_FSCACHE=y +CONFIG_CEPH_FS_POSIX_ACL=y +CONFIG_CIFS=m +CONFIG_CIFS_STATS=y +# CONFIG_CIFS_STATS2 is not set +CONFIG_CIFS_WEAK_PW_HASH=y +CONFIG_CIFS_UPCALL=y +CONFIG_CIFS_XATTR=y +CONFIG_CIFS_POSIX=y +CONFIG_CIFS_ACL=y +CONFIG_CIFS_DEBUG=y +# CONFIG_CIFS_DEBUG2 is not set +CONFIG_CIFS_DFS_UPCALL=y +CONFIG_CIFS_SMB2=y +CONFIG_CIFS_SMB311=y +CONFIG_CIFS_FSCACHE=y +# CONFIG_NCP_FS is not set +CONFIG_CODA_FS=m +CONFIG_AFS_FS=m +# CONFIG_AFS_DEBUG is not set +CONFIG_AFS_FSCACHE=y +CONFIG_9P_FS=m +CONFIG_9P_FSCACHE=y +CONFIG_9P_FS_POSIX_ACL=y +CONFIG_9P_FS_SECURITY=y +CONFIG_NLS=y +CONFIG_NLS_DEFAULT="utf8" +CONFIG_NLS_CODEPAGE_437=y +CONFIG_NLS_CODEPAGE_737=m +CONFIG_NLS_CODEPAGE_775=m +CONFIG_NLS_CODEPAGE_850=m +CONFIG_NLS_CODEPAGE_852=m +CONFIG_NLS_CODEPAGE_855=m +CONFIG_NLS_CODEPAGE_857=m +CONFIG_NLS_CODEPAGE_860=m +CONFIG_NLS_CODEPAGE_861=m +CONFIG_NLS_CODEPAGE_862=m +CONFIG_NLS_CODEPAGE_863=m +CONFIG_NLS_CODEPAGE_864=m +CONFIG_NLS_CODEPAGE_865=m +CONFIG_NLS_CODEPAGE_866=m +CONFIG_NLS_CODEPAGE_869=m +CONFIG_NLS_CODEPAGE_936=m +CONFIG_NLS_CODEPAGE_950=m +CONFIG_NLS_CODEPAGE_932=m +CONFIG_NLS_CODEPAGE_949=m +CONFIG_NLS_CODEPAGE_874=m +CONFIG_NLS_ISO8859_8=m +CONFIG_NLS_CODEPAGE_1250=m +CONFIG_NLS_CODEPAGE_1251=m +CONFIG_NLS_ASCII=m +CONFIG_NLS_ISO8859_1=m +CONFIG_NLS_ISO8859_2=m +CONFIG_NLS_ISO8859_3=m +CONFIG_NLS_ISO8859_4=m +CONFIG_NLS_ISO8859_5=m +CONFIG_NLS_ISO8859_6=m +CONFIG_NLS_ISO8859_7=m +CONFIG_NLS_ISO8859_9=m +CONFIG_NLS_ISO8859_13=m +CONFIG_NLS_ISO8859_14=m +CONFIG_NLS_ISO8859_15=m +CONFIG_NLS_KOI8_R=m +CONFIG_NLS_KOI8_U=m +CONFIG_NLS_MAC_ROMAN=m +CONFIG_NLS_MAC_CELTIC=m +CONFIG_NLS_MAC_CENTEURO=m +CONFIG_NLS_MAC_CROATIAN=m +CONFIG_NLS_MAC_CYRILLIC=m +CONFIG_NLS_MAC_GAELIC=m +CONFIG_NLS_MAC_GREEK=m +CONFIG_NLS_MAC_ICELAND=m +CONFIG_NLS_MAC_INUIT=m +CONFIG_NLS_MAC_ROMANIAN=m +CONFIG_NLS_MAC_TURKISH=m +CONFIG_NLS_UTF8=m +CONFIG_DLM=m +# CONFIG_DLM_DEBUG is not set + +# +# Kernel hacking +# +CONFIG_TRACE_IRQFLAGS_SUPPORT=y + +# +# printk and dmesg options +# +CONFIG_PRINTK_TIME=y +CONFIG_MESSAGE_LOGLEVEL_DEFAULT=4 +CONFIG_DYNAMIC_DEBUG=y + +# +# Compile-time checks and compiler options +# +CONFIG_DEBUG_INFO=y +# CONFIG_DEBUG_INFO_REDUCED is not set +# CONFIG_DEBUG_INFO_SPLIT is not set +CONFIG_DEBUG_INFO_DWARF4=y +CONFIG_GDB_SCRIPTS=y +# CONFIG_ENABLE_WARN_DEPRECATED is not set +# CONFIG_ENABLE_MUST_CHECK is not set +CONFIG_FRAME_WARN=1024 +# CONFIG_STRIP_ASM_SYMS is not set +# CONFIG_READABLE_ASM is not set +CONFIG_UNUSED_SYMBOLS=y +# CONFIG_PAGE_OWNER is not set +CONFIG_DEBUG_FS=y +# CONFIG_HEADERS_CHECK is not set +# CONFIG_DEBUG_SECTION_MISMATCH is not set +CONFIG_SECTION_MISMATCH_WARN_ONLY=y +# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set +CONFIG_MAGIC_SYSRQ=y +CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x01b6 +CONFIG_DEBUG_KERNEL=y + +# +# Memory Debugging +# +# CONFIG_PAGE_EXTENSION is not set +# CONFIG_DEBUG_PAGEALLOC is not set +# CONFIG_DEBUG_OBJECTS is not set +# CONFIG_SLUB_DEBUG_ON is not set +# CONFIG_SLUB_STATS is not set +CONFIG_HAVE_DEBUG_KMEMLEAK=y +# CONFIG_DEBUG_KMEMLEAK is not set +# CONFIG_DEBUG_STACK_USAGE is not set +# CONFIG_DEBUG_VM is not set +# CONFIG_DEBUG_MEMORY_INIT is not set +CONFIG_MEMORY_NOTIFIER_ERROR_INJECT=m +# CONFIG_DEBUG_PER_CPU_MAPS is not set +# CONFIG_DEBUG_SHIRQ is not set + +# +# Debug Lockups and Hangs +# +CONFIG_DETECT_HUNG_TASK=y +CONFIG_DEFAULT_HUNG_TASK_TIMEOUT=120 +# CONFIG_BOOTPARAM_HUNG_TASK_PANIC is not set +CONFIG_BOOTPARAM_HUNG_TASK_PANIC_VALUE=0 +# CONFIG_PANIC_ON_OOPS is not set +CONFIG_PANIC_ON_OOPS_VALUE=0 +CONFIG_PANIC_TIMEOUT=0 +CONFIG_SCHED_DEBUG=y +CONFIG_SCHED_INFO=y +CONFIG_SCHEDSTATS=y +CONFIG_SCHED_STACK_END_CHECK=y +# CONFIG_DEBUG_TIMEKEEPING is not set +CONFIG_TIMER_STATS=y + +# +# Lock Debugging (spinlocks, mutexes, etc...) +# +# CONFIG_DEBUG_RT_MUTEXES is not set +# CONFIG_DEBUG_SPINLOCK is not set +# CONFIG_DEBUG_MUTEXES is not set +# CONFIG_DEBUG_WW_MUTEX_SLOWPATH is not set +# CONFIG_DEBUG_LOCK_ALLOC is not set +# CONFIG_PROVE_LOCKING is not set +# CONFIG_LOCK_STAT is not set +# CONFIG_DEBUG_ATOMIC_SLEEP is not set +# CONFIG_DEBUG_LOCKING_API_SELFTESTS is not set +CONFIG_LOCK_TORTURE_TEST=m +CONFIG_STACKTRACE=y +# CONFIG_DEBUG_KOBJECT is not set +CONFIG_DEBUG_BUGVERBOSE=y +# CONFIG_DEBUG_LIST is not set +# CONFIG_DEBUG_PI_LIST is not set +# CONFIG_DEBUG_SG is not set +# CONFIG_DEBUG_NOTIFIERS is not set +# CONFIG_DEBUG_CREDENTIALS is not set + +# +# RCU Debugging +# +# CONFIG_PROVE_RCU is not set +# CONFIG_SPARSE_RCU_POINTER is not set +CONFIG_TORTURE_TEST=m +# CONFIG_RCU_TORTURE_TEST is not set +CONFIG_RCU_CPU_STALL_TIMEOUT=21 +# CONFIG_RCU_TRACE is not set +# CONFIG_RCU_EQS_DEBUG is not set +# CONFIG_DEBUG_BLOCK_EXT_DEVT is not set +CONFIG_NOTIFIER_ERROR_INJECTION=m +CONFIG_CPU_NOTIFIER_ERROR_INJECT=m +CONFIG_PM_NOTIFIER_ERROR_INJECT=m +# CONFIG_FAULT_INJECTION is not set +# CONFIG_LATENCYTOP is not set +CONFIG_ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS=y +# CONFIG_DEBUG_STRICT_USER_COPY_CHECKS is not set +CONFIG_NOP_TRACER=y +CONFIG_HAVE_FUNCTION_TRACER=y +CONFIG_HAVE_FUNCTION_GRAPH_TRACER=y +CONFIG_HAVE_DYNAMIC_FTRACE=y +CONFIG_HAVE_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_HAVE_FTRACE_MCOUNT_RECORD=y +CONFIG_HAVE_SYSCALL_TRACEPOINTS=y +CONFIG_TRACER_MAX_TRACE=y +CONFIG_TRACE_CLOCK=y +CONFIG_RING_BUFFER=y +CONFIG_EVENT_TRACING=y +CONFIG_CONTEXT_SWITCH_TRACER=y +CONFIG_RING_BUFFER_ALLOW_SWAP=y +CONFIG_TRACING=y +CONFIG_GENERIC_TRACER=y +CONFIG_TRACING_SUPPORT=y +CONFIG_FTRACE=y +CONFIG_FUNCTION_TRACER=y +CONFIG_FUNCTION_GRAPH_TRACER=y +# CONFIG_IRQSOFF_TRACER is not set +CONFIG_SCHED_TRACER=y +CONFIG_FTRACE_SYSCALLS=y +CONFIG_TRACER_SNAPSHOT=y +# CONFIG_TRACER_SNAPSHOT_PER_CPU_SWAP is not set +CONFIG_BRANCH_PROFILE_NONE=y +# CONFIG_PROFILE_ANNOTATED_BRANCHES is not set +# CONFIG_PROFILE_ALL_BRANCHES is not set +CONFIG_STACK_TRACER=y +CONFIG_BLK_DEV_IO_TRACE=y +CONFIG_KPROBE_EVENT=y +CONFIG_UPROBE_EVENT=y +CONFIG_BPF_EVENTS=y +CONFIG_PROBE_EVENTS=y +CONFIG_DYNAMIC_FTRACE=y +CONFIG_DYNAMIC_FTRACE_WITH_REGS=y +CONFIG_FUNCTION_PROFILER=y +CONFIG_FTRACE_MCOUNT_RECORD=y +# CONFIG_FTRACE_STARTUP_TEST is not set +# CONFIG_TRACEPOINT_BENCHMARK is not set +# CONFIG_RING_BUFFER_BENCHMARK is not set +# CONFIG_RING_BUFFER_STARTUP_TEST is not set +# CONFIG_TRACE_ENUM_MAP_FILE is not set + +# +# Runtime Testing +# +# CONFIG_LKDTM is not set +# CONFIG_TEST_LIST_SORT is not set +# CONFIG_KPROBES_SANITY_TEST is not set +# CONFIG_BACKTRACE_SELF_TEST is not set +CONFIG_RBTREE_TEST=m +CONFIG_INTERVAL_TREE_TEST=m +CONFIG_PERCPU_TEST=m +# CONFIG_ATOMIC64_SELFTEST is not set +CONFIG_ASYNC_RAID6_TEST=m +CONFIG_TEST_HEXDUMP=m +CONFIG_TEST_STRING_HELPERS=m +CONFIG_TEST_KSTRTOX=m +CONFIG_TEST_PRINTF=m +# CONFIG_TEST_RHASHTABLE is not set +# CONFIG_DMA_API_DEBUG is not set +CONFIG_TEST_LKM=m +CONFIG_TEST_USER_COPY=m +CONFIG_TEST_BPF=m +CONFIG_TEST_FIRMWARE=m +CONFIG_TEST_UDELAY=m +CONFIG_MEMTEST=y +CONFIG_TEST_STATIC_KEYS=m +# CONFIG_SAMPLES is not set +CONFIG_STRICT_DEVMEM=y +CONFIG_S390_PTDUMP=y +CONFIG_DEBUG_SET_MODULE_RONX=y + +# +# Security options +# +CONFIG_KEYS=y +CONFIG_PERSISTENT_KEYRINGS=y +CONFIG_BIG_KEYS=y +CONFIG_TRUSTED_KEYS=y +CONFIG_ENCRYPTED_KEYS=y +# CONFIG_SECURITY_DMESG_RESTRICT is not set +CONFIG_SECURITY=y +CONFIG_SECURITYFS=y +CONFIG_SECURITY_NETWORK=y +CONFIG_SECURITY_NETWORK_XFRM=y +CONFIG_SECURITY_PATH=y +CONFIG_LSM_MMAP_MIN_ADDR=0 +CONFIG_SECURITY_SELINUX=y +# CONFIG_SECURITY_SELINUX_BOOTPARAM is not set +# CONFIG_SECURITY_SELINUX_DISABLE is not set +CONFIG_SECURITY_SELINUX_DEVELOP=y +CONFIG_SECURITY_SELINUX_AVC_STATS=y +CONFIG_SECURITY_SELINUX_CHECKREQPROT_VALUE=1 +# CONFIG_SECURITY_SELINUX_POLICYDB_VERSION_MAX is not set +CONFIG_SECURITY_SMACK=y +# CONFIG_SECURITY_SMACK_BRINGUP is not set +CONFIG_SECURITY_SMACK_NETFILTER=y +CONFIG_SECURITY_TOMOYO=y +CONFIG_SECURITY_TOMOYO_MAX_ACCEPT_ENTRY=2048 +CONFIG_SECURITY_TOMOYO_MAX_AUDIT_LOG=1024 +# CONFIG_SECURITY_TOMOYO_OMIT_USERSPACE_LOADER is not set +CONFIG_SECURITY_TOMOYO_POLICY_LOADER="/sbin/tomoyo-init" +CONFIG_SECURITY_TOMOYO_ACTIVATION_TRIGGER="/sbin/init" +CONFIG_SECURITY_APPARMOR=y +CONFIG_SECURITY_APPARMOR_BOOTPARAM_VALUE=1 +# CONFIG_SECURITY_APPARMOR_STATS is not set +CONFIG_SECURITY_APPARMOR_UNCONFINED_INIT=y +CONFIG_SECURITY_APPARMOR_HASH=y +CONFIG_SECURITY_APPARMOR_HASH_DEFAULT=y +CONFIG_SECURITY_YAMA=y +CONFIG_INTEGRITY=y +CONFIG_INTEGRITY_SIGNATURE=y +CONFIG_INTEGRITY_ASYMMETRIC_KEYS=y +CONFIG_INTEGRITY_AUDIT=y +CONFIG_IMA=y +CONFIG_IMA_MEASURE_PCR_IDX=10 +CONFIG_IMA_LSM_RULES=y +# CONFIG_IMA_TEMPLATE is not set +CONFIG_IMA_NG_TEMPLATE=y +# CONFIG_IMA_SIG_TEMPLATE is not set +CONFIG_IMA_DEFAULT_TEMPLATE="ima-ng" +CONFIG_IMA_DEFAULT_HASH_SHA1=y +# CONFIG_IMA_DEFAULT_HASH_SHA256 is not set +# CONFIG_IMA_DEFAULT_HASH_SHA512 is not set +# CONFIG_IMA_DEFAULT_HASH_WP512 is not set +CONFIG_IMA_DEFAULT_HASH="sha1" +CONFIG_IMA_APPRAISE=y +CONFIG_IMA_TRUSTED_KEYRING=y +CONFIG_IMA_MOK_KEYRING=y +# CONFIG_IMA_LOAD_X509 is not set +CONFIG_EVM=y +CONFIG_EVM_ATTR_FSUUID=y +CONFIG_EVM_EXTRA_SMACK_XATTRS=y +# CONFIG_DEFAULT_SECURITY_SELINUX is not set +# CONFIG_DEFAULT_SECURITY_SMACK is not set +# CONFIG_DEFAULT_SECURITY_TOMOYO is not set +CONFIG_DEFAULT_SECURITY_APPARMOR=y +# CONFIG_DEFAULT_SECURITY_DAC is not set +CONFIG_DEFAULT_SECURITY="apparmor" +CONFIG_XOR_BLOCKS=m +CONFIG_ASYNC_CORE=m +CONFIG_ASYNC_MEMCPY=m +CONFIG_ASYNC_XOR=m +CONFIG_ASYNC_PQ=m +CONFIG_ASYNC_RAID6_RECOV=m +CONFIG_CRYPTO=y + +# +# Crypto core or helper +# +CONFIG_CRYPTO_ALGAPI=y +CONFIG_CRYPTO_ALGAPI2=y +CONFIG_CRYPTO_AEAD=m +CONFIG_CRYPTO_AEAD2=y +CONFIG_CRYPTO_BLKCIPHER=y +CONFIG_CRYPTO_BLKCIPHER2=y +CONFIG_CRYPTO_HASH=y +CONFIG_CRYPTO_HASH2=y +CONFIG_CRYPTO_RNG=y +CONFIG_CRYPTO_RNG2=y +CONFIG_CRYPTO_RNG_DEFAULT=m +CONFIG_CRYPTO_PCOMP=m +CONFIG_CRYPTO_PCOMP2=y +CONFIG_CRYPTO_AKCIPHER2=y +CONFIG_CRYPTO_AKCIPHER=y +CONFIG_CRYPTO_RSA=y +CONFIG_CRYPTO_MANAGER=y +CONFIG_CRYPTO_MANAGER2=y +CONFIG_CRYPTO_USER=m +CONFIG_CRYPTO_MANAGER_DISABLE_TESTS=y +CONFIG_CRYPTO_GF128MUL=m +CONFIG_CRYPTO_NULL=m +CONFIG_CRYPTO_NULL2=y +CONFIG_CRYPTO_PCRYPT=m +CONFIG_CRYPTO_WORKQUEUE=y +CONFIG_CRYPTO_CRYPTD=m +CONFIG_CRYPTO_MCRYPTD=m +CONFIG_CRYPTO_AUTHENC=m +CONFIG_CRYPTO_TEST=m + +# +# Authenticated Encryption with Associated Data +# +CONFIG_CRYPTO_CCM=m +CONFIG_CRYPTO_GCM=m +CONFIG_CRYPTO_CHACHA20POLY1305=m +CONFIG_CRYPTO_SEQIV=m +CONFIG_CRYPTO_ECHAINIV=m + +# +# Block modes +# +CONFIG_CRYPTO_CBC=y +CONFIG_CRYPTO_CTR=m +CONFIG_CRYPTO_CTS=m +CONFIG_CRYPTO_ECB=y +CONFIG_CRYPTO_LRW=m +CONFIG_CRYPTO_PCBC=m +CONFIG_CRYPTO_XTS=m +CONFIG_CRYPTO_KEYWRAP=m + +# +# Hash modes +# +CONFIG_CRYPTO_CMAC=m +CONFIG_CRYPTO_HMAC=y +CONFIG_CRYPTO_XCBC=m +CONFIG_CRYPTO_VMAC=m + +# +# Digest +# +CONFIG_CRYPTO_CRC32C=y +CONFIG_CRYPTO_CRC32=m +CONFIG_CRYPTO_CRCT10DIF=y +CONFIG_CRYPTO_GHASH=m +CONFIG_CRYPTO_POLY1305=m +CONFIG_CRYPTO_MD4=m +CONFIG_CRYPTO_MD5=y +CONFIG_CRYPTO_MICHAEL_MIC=m +CONFIG_CRYPTO_RMD128=m +CONFIG_CRYPTO_RMD160=m +CONFIG_CRYPTO_RMD256=m +CONFIG_CRYPTO_RMD320=m +CONFIG_CRYPTO_SHA1=y +CONFIG_CRYPTO_SHA256=y +CONFIG_CRYPTO_SHA512=y +CONFIG_CRYPTO_TGR192=m +CONFIG_CRYPTO_WP512=m + +# +# Ciphers +# +CONFIG_CRYPTO_AES=y +CONFIG_CRYPTO_ANUBIS=m +CONFIG_CRYPTO_ARC4=m +CONFIG_CRYPTO_BLOWFISH=m +CONFIG_CRYPTO_BLOWFISH_COMMON=m +CONFIG_CRYPTO_CAMELLIA=m +CONFIG_CRYPTO_CAST_COMMON=m +CONFIG_CRYPTO_CAST5=m +CONFIG_CRYPTO_CAST6=m +CONFIG_CRYPTO_DES=m +CONFIG_CRYPTO_FCRYPT=m +CONFIG_CRYPTO_KHAZAD=m +CONFIG_CRYPTO_SALSA20=m +CONFIG_CRYPTO_CHACHA20=m +CONFIG_CRYPTO_SEED=m +CONFIG_CRYPTO_SERPENT=m +CONFIG_CRYPTO_TEA=m +CONFIG_CRYPTO_TWOFISH=m +CONFIG_CRYPTO_TWOFISH_COMMON=m + +# +# Compression +# +CONFIG_CRYPTO_DEFLATE=m +CONFIG_CRYPTO_ZLIB=m +CONFIG_CRYPTO_LZO=y +CONFIG_CRYPTO_842=m +CONFIG_CRYPTO_LZ4=m +CONFIG_CRYPTO_LZ4HC=m + +# +# Random Number Generation +# +CONFIG_CRYPTO_ANSI_CPRNG=m +CONFIG_CRYPTO_DRBG_MENU=m +CONFIG_CRYPTO_DRBG_HMAC=y +CONFIG_CRYPTO_DRBG_HASH=y +CONFIG_CRYPTO_DRBG_CTR=y +CONFIG_CRYPTO_DRBG=m +CONFIG_CRYPTO_JITTERENTROPY=m +CONFIG_CRYPTO_USER_API=m +CONFIG_CRYPTO_USER_API_HASH=m +CONFIG_CRYPTO_USER_API_SKCIPHER=m +CONFIG_CRYPTO_USER_API_RNG=m +CONFIG_CRYPTO_USER_API_AEAD=m +CONFIG_CRYPTO_HASH_INFO=y +CONFIG_CRYPTO_HW=y +CONFIG_ZCRYPT=m +CONFIG_CRYPTO_SHA1_S390=m +CONFIG_CRYPTO_SHA256_S390=m +CONFIG_CRYPTO_SHA512_S390=m +CONFIG_CRYPTO_DES_S390=m +CONFIG_CRYPTO_AES_S390=m +CONFIG_S390_PRNG=m +CONFIG_CRYPTO_GHASH_S390=m +CONFIG_ASYMMETRIC_KEY_TYPE=y +CONFIG_ASYMMETRIC_PUBLIC_KEY_SUBTYPE=y +CONFIG_PUBLIC_KEY_ALGO_RSA=y +CONFIG_X509_CERTIFICATE_PARSER=y +CONFIG_PKCS7_MESSAGE_PARSER=y +CONFIG_PKCS7_TEST_KEY=m +CONFIG_SIGNED_PE_FILE_VERIFICATION=y + +# +# Certificates for signature checking +# +CONFIG_MODULE_SIG_KEY="certs/signing_key.pem" +CONFIG_SYSTEM_TRUSTED_KEYRING=y +CONFIG_SYSTEM_TRUSTED_KEYS="" +CONFIG_SYSTEM_EXTRA_CERTIFICATE=y +CONFIG_SYSTEM_EXTRA_CERTIFICATE_SIZE=4096 +CONFIG_BINARY_PRINTF=y + +# +# Library routines +# +CONFIG_RAID6_PQ=m +CONFIG_BITREVERSE=y +# CONFIG_HAVE_ARCH_BITREVERSE is not set +CONFIG_GENERIC_NET_UTILS=y +CONFIG_GENERIC_FIND_FIRST_BIT=y +CONFIG_GENERIC_IO=y +CONFIG_ARCH_USE_CMPXCHG_LOCKREF=y +CONFIG_CRC_CCITT=m +CONFIG_CRC16=y +CONFIG_CRC_T10DIF=y +CONFIG_CRC_ITU_T=m +CONFIG_CRC32=y +# CONFIG_CRC32_SELFTEST is not set +CONFIG_CRC32_SLICEBY8=y +# CONFIG_CRC32_SLICEBY4 is not set +# CONFIG_CRC32_SARWATE is not set +# CONFIG_CRC32_BIT is not set +CONFIG_CRC7=m +CONFIG_LIBCRC32C=m +CONFIG_CRC8=m +# CONFIG_AUDIT_ARCH_COMPAT_GENERIC is not set +# CONFIG_RANDOM32_SELFTEST is not set +CONFIG_842_COMPRESS=m +CONFIG_842_DECOMPRESS=m +CONFIG_ZLIB_INFLATE=y +CONFIG_ZLIB_DEFLATE=m +CONFIG_LZO_COMPRESS=y +CONFIG_LZO_DECOMPRESS=y +CONFIG_LZ4_COMPRESS=m +CONFIG_LZ4HC_COMPRESS=m +CONFIG_LZ4_DECOMPRESS=y +CONFIG_XZ_DEC=y +# CONFIG_XZ_DEC_X86 is not set +# CONFIG_XZ_DEC_POWERPC is not set +# CONFIG_XZ_DEC_IA64 is not set +# CONFIG_XZ_DEC_ARM is not set +# CONFIG_XZ_DEC_ARMTHUMB is not set +# CONFIG_XZ_DEC_SPARC is not set +# CONFIG_XZ_DEC_BCJ is not set +# CONFIG_XZ_DEC_TEST is not set +CONFIG_DECOMPRESS_GZIP=y +CONFIG_DECOMPRESS_BZIP2=y +CONFIG_DECOMPRESS_LZMA=y +CONFIG_DECOMPRESS_XZ=y +CONFIG_DECOMPRESS_LZO=y +CONFIG_DECOMPRESS_LZ4=y +CONFIG_TEXTSEARCH=y +CONFIG_TEXTSEARCH_KMP=m +CONFIG_TEXTSEARCH_BM=m +CONFIG_TEXTSEARCH_FSM=m +CONFIG_INTERVAL_TREE=y +CONFIG_ASSOCIATIVE_ARRAY=y +CONFIG_CPU_RMAP=y +CONFIG_DQL=y +CONFIG_NLATTR=y +CONFIG_ARCH_HAS_ATOMIC64_DEC_IF_POSITIVE=y +CONFIG_LRU_CACHE=m +CONFIG_CLZ_TAB=y +CONFIG_CORDIC=m +CONFIG_DDR=y +CONFIG_MPILIB=y +CONFIG_SIGNATURE=y +CONFIG_OID_REGISTRY=y +# CONFIG_SG_SPLIT is not set +CONFIG_ARCH_HAS_SG_CHAIN=y + +# +# Virtualization +# +CONFIG_PFAULT=y +CONFIG_CMM=y +CONFIG_CMM_IUCV=y +CONFIG_APPLDATA_BASE=y +CONFIG_APPLDATA_MEM=m +CONFIG_APPLDATA_OS=m +CONFIG_APPLDATA_NET_SUM=m +CONFIG_S390_HYPFS_FS=y +CONFIG_HAVE_KVM=y +CONFIG_HAVE_KVM_IRQCHIP=y +CONFIG_HAVE_KVM_IRQFD=y +CONFIG_HAVE_KVM_IRQ_ROUTING=y +CONFIG_HAVE_KVM_EVENTFD=y +CONFIG_KVM_ASYNC_PF=y +CONFIG_KVM_ASYNC_PF_SYNC=y +CONFIG_HAVE_KVM_CPU_RELAX_INTERCEPT=y +CONFIG_VIRTUALIZATION=y +CONFIG_KVM=y +# CONFIG_KVM_S390_UCONTROL is not set +CONFIG_S390_GUEST=y -- 2.10.2 --MP_/GRt=k0LD0+b8X_6TP/toA/K Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0005-main-musl-add-s390x-support.patch >From f1d630d2fca106b947a61b6bc2c06aacb0dec7ac Mon Sep 17 00:00:00 2001 From: "Tuan M. Hoang" Date: Mon, 21 Nov 2016 05:41:08 +0700 Subject: [PATCH] main/musl: add s390x support --- main/musl/1002-add-musl-s390x-port.patch | 1757 ++++++++++++++++++++++++++++++ main/musl/APKBUILD | 8 + 2 files changed, 1765 insertions(+) create mode 100644 main/musl/1002-add-musl-s390x-port.patch diff --git a/main/musl/1002-add-musl-s390x-port.patch b/main/musl/1002-add-musl-s390x-port.patch new file mode 100644 index 0000000..d53be45 --- /dev/null +++ b/main/musl/1002-add-musl-s390x-port.patch @@ -0,0 +1,1757 @@ +From 76316cd77990b1ffcbac8fc71a6b52ceb16c2663 Mon Sep 17 00:00:00 2001 +From: "Tuan M. Hoang" +Date: Sun, 20 Nov 2016 22:10:22 +0700 +Subject: [PATCH] add musl s390x port + +This patch was originally submitted by Bobby Bingham and got merged in +musl upstream. There was 2 minor errors in it which was again submitted +but not merged yet. I included them all in this patch too. For more +information, see +http://git.musl-libc.org/cgit/musl/commit/?id=15094943050eb9a564f4093230 +70e50b40f78816, http://www.openwall.com/lists/musl/2016/11/15/2 and +http://www.openwall.com/lists/musl/2016/11/15/3. + +From 15094943050eb9a564f409323070e50b40f78816 Mon Sep 17 00:00:00 2001 +From: Bobby Bingham +Date: Fri, 11 Nov 2016 21:52:05 -0600 +Subject: add s390x port + +--- + arch/s390x/atomic_arch.h | 30 ++++ + arch/s390x/bits/alltypes.h.in | 26 +++ + arch/s390x/bits/endian.h | 1 + + arch/s390x/bits/fcntl.h | 40 +++++ + arch/s390x/bits/fenv.h | 17 ++ + arch/s390x/bits/float.h | 16 ++ + arch/s390x/bits/ioctl.h | 195 +++++++++++++++++++++ + arch/s390x/bits/ipc.h | 14 ++ + arch/s390x/bits/limits.h | 8 + + arch/s390x/bits/link.h | 1 + + arch/s390x/bits/msg.h | 12 ++ + arch/s390x/bits/posix.h | 2 + + arch/s390x/bits/reg.h | 2 + + arch/s390x/bits/sem.h | 7 + + arch/s390x/bits/setjmp.h | 1 + + arch/s390x/bits/shm.h | 25 +++ + arch/s390x/bits/signal.h | 106 ++++++++++++ + arch/s390x/bits/socket.h | 44 +++++ + arch/s390x/bits/stat.h | 16 ++ + arch/s390x/bits/statfs.h | 7 + + arch/s390x/bits/stdint.h | 20 +++ + arch/s390x/bits/syscall.h.in | 323 +++++++++++++++++++++++++++++++++++ + arch/s390x/bits/user.h | 62 +++++++ + arch/s390x/crt_arch.h | 17 ++ + arch/s390x/pthread_arch.h | 14 ++ + arch/s390x/reloc.h | 15 ++ + arch/s390x/syscall_arch.h | 76 +++++++++ + configure | 1 + + crt/s390x/crti.s | 17 ++ + crt/s390x/crtn.s | 9 + + src/fenv/s390x/fenv.c | 55 ++++++ + src/internal/s390x/syscall.s | 15 ++ + src/process/s390x/vfork.s | 8 + + src/setjmp/s390x/longjmp.s | 23 +++ + src/setjmp/s390x/setjmp.s | 25 +++ + src/signal/s390x/restore.s | 9 + + src/signal/s390x/sigsetjmp.s | 23 +++ + src/thread/s390x/__set_thread_area.s | 9 + + src/thread/s390x/__tls_get_offset.s | 17 ++ + src/thread/s390x/__unmapself.s | 6 + + src/thread/s390x/clone.s | 47 +++++ + src/thread/s390x/syscall_cp.s | 32 ++++ + 42 files changed, 1393 insertions(+) + create mode 100644 arch/s390x/atomic_arch.h + create mode 100644 arch/s390x/bits/alltypes.h.in + create mode 100644 arch/s390x/bits/endian.h + create mode 100644 arch/s390x/bits/fcntl.h + create mode 100644 arch/s390x/bits/fenv.h + create mode 100644 arch/s390x/bits/float.h + create mode 100644 arch/s390x/bits/ioctl.h + create mode 100644 arch/s390x/bits/ipc.h + create mode 100644 arch/s390x/bits/limits.h + create mode 100644 arch/s390x/bits/link.h + create mode 100644 arch/s390x/bits/msg.h + create mode 100644 arch/s390x/bits/posix.h + create mode 100644 arch/s390x/bits/reg.h + create mode 100644 arch/s390x/bits/sem.h + create mode 100644 arch/s390x/bits/setjmp.h + create mode 100644 arch/s390x/bits/shm.h + create mode 100644 arch/s390x/bits/signal.h + create mode 100644 arch/s390x/bits/socket.h + create mode 100644 arch/s390x/bits/stat.h + create mode 100644 arch/s390x/bits/statfs.h + create mode 100644 arch/s390x/bits/stdint.h + create mode 100644 arch/s390x/bits/syscall.h.in + create mode 100644 arch/s390x/bits/user.h + create mode 100644 arch/s390x/crt_arch.h + create mode 100644 arch/s390x/pthread_arch.h + create mode 100644 arch/s390x/reloc.h + create mode 100644 arch/s390x/syscall_arch.h + create mode 100644 crt/s390x/crti.s + create mode 100644 crt/s390x/crtn.s + create mode 100644 src/fenv/s390x/fenv.c + create mode 100644 src/internal/s390x/syscall.s + create mode 100644 src/process/s390x/vfork.s + create mode 100644 src/setjmp/s390x/longjmp.s + create mode 100644 src/setjmp/s390x/setjmp.s + create mode 100644 src/signal/s390x/restore.s + create mode 100644 src/signal/s390x/sigsetjmp.s + create mode 100644 src/thread/s390x/__set_thread_area.s + create mode 100644 src/thread/s390x/__tls_get_offset.s + create mode 100644 src/thread/s390x/__unmapself.s + create mode 100644 src/thread/s390x/clone.s + create mode 100644 src/thread/s390x/syscall_cp.s + +diff --git a/arch/s390x/atomic_arch.h b/arch/s390x/atomic_arch.h +new file mode 100644 +index 0000000..9b0e1df +--- /dev/null ++++ b/arch/s390x/atomic_arch.h +@@ -0,0 +1,30 @@ ++#define a_cas a_cas ++static inline int a_cas(volatile int *p, int t, int s) ++{ ++ __asm__ __volatile__ ( ++ "cs %0, %2, %1" ++ : "+d"(t), "+Q"(*p) : "d"(s) : "memory", "cc"); ++ return t; ++} ++ ++#define a_cas_p a_cas_p ++static inline void *a_cas_p(volatile void *p, void *t, void *s) ++{ ++ __asm__ __volatile__ ( ++ "csg %0, %2, %1" ++ : "+d"(t), "+Q"(*(void *volatile *)p) : "d"(s) ++ : "memory", "cc"); ++ return t; ++} ++ ++#define a_barrier a_barrier ++static inline void a_barrier() ++{ ++ __asm__ __volatile__ ("bcr 15,0" : : : "memory"); ++} ++ ++#define a_crash a_crash ++static inline void a_crash() ++{ ++ __asm__ __volatile__ (".insn e,0"); ++} +diff --git a/arch/s390x/bits/alltypes.h.in b/arch/s390x/bits/alltypes.h.in +new file mode 100644 +index 0000000..1a83846 +--- /dev/null ++++ b/arch/s390x/bits/alltypes.h.in +@@ -0,0 +1,26 @@ ++#define _Addr long ++#define _Int64 long ++#define _Reg long ++ ++TYPEDEF __builtin_va_list va_list; ++TYPEDEF __builtin_va_list __isoc_va_list; ++ ++#ifndef __cplusplus ++TYPEDEF int wchar_t; ++#endif ++ ++TYPEDEF double float_t; ++TYPEDEF double double_t; ++ ++TYPEDEF struct { long long __ll; long double __ld; } max_align_t; ++ ++TYPEDEF long time_t; ++TYPEDEF long suseconds_t; ++ ++TYPEDEF struct { union { int __i[14]; volatile int __vi[14]; unsigned long __s[7]; } __u; } pthread_attr_t; ++TYPEDEF struct { union { int __i[10]; volatile int __vi[10]; volatile void *volatile __p[5]; } __u; } pthread_mutex_t; ++TYPEDEF struct { union { int __i[10]; volatile int __vi[10]; volatile void *volatile __p[5]; } __u; } mtx_t; ++TYPEDEF struct { union { int __i[12]; volatile int __vi[12]; void *__p[6]; } __u; } pthread_cond_t; ++TYPEDEF struct { union { int __i[12]; volatile int __vi[12]; void *__p[6]; } __u; } cnd_t; ++TYPEDEF struct { union { int __i[14]; volatile int __vi[14]; void *__p[7]; } __u; } pthread_rwlock_t; ++TYPEDEF struct { union { int __i[8]; volatile int __vi[8]; void *__p[4]; } __u; } pthread_barrier_t; +diff --git a/arch/s390x/bits/endian.h b/arch/s390x/bits/endian.h +new file mode 100644 +index 0000000..ef074b7 +--- /dev/null ++++ b/arch/s390x/bits/endian.h +@@ -0,0 +1 @@ ++#define __BYTE_ORDER __BIG_ENDIAN +diff --git a/arch/s390x/bits/fcntl.h b/arch/s390x/bits/fcntl.h +new file mode 100644 +index 0000000..1eca6ba +--- /dev/null ++++ b/arch/s390x/bits/fcntl.h +@@ -0,0 +1,40 @@ ++#define O_CREAT 0100 ++#define O_EXCL 0200 ++#define O_NOCTTY 0400 ++#define O_TRUNC 01000 ++#define O_APPEND 02000 ++#define O_NONBLOCK 04000 ++#define O_DSYNC 010000 ++#define O_SYNC 04010000 ++#define O_RSYNC 04010000 ++#define O_DIRECTORY 0200000 ++#define O_NOFOLLOW 0400000 ++#define O_CLOEXEC 02000000 ++ ++#define O_ASYNC 020000 ++#define O_DIRECT 040000 ++#define O_LARGEFILE 0100000 ++#define O_NOATIME 01000000 ++#define O_PATH 010000000 ++#define O_TMPFILE 020200000 ++#define O_NDELAY O_NONBLOCK ++ ++#define F_DUPFD 0 ++#define F_GETFD 1 ++#define F_SETFD 2 ++#define F_GETFL 3 ++#define F_SETFL 4 ++ ++#define F_GETLK 5 ++#define F_SETLK 6 ++#define F_SETLKW 7 ++ ++#define F_SETOWN 8 ++#define F_GETOWN 9 ++#define F_SETSIG 10 ++#define F_GETSIG 11 ++ ++#define F_SETOWN_EX 15 ++#define F_GETOWN_EX 16 ++ ++#define F_GETOWNER_UIDS 17 +diff --git a/arch/s390x/bits/fenv.h b/arch/s390x/bits/fenv.h +new file mode 100644 +index 0000000..773dad9 +--- /dev/null ++++ b/arch/s390x/bits/fenv.h +@@ -0,0 +1,17 @@ ++#define FE_TONEAREST 0 ++#define FE_TOWARDZERO 1 ++#define FE_UPWARD 2 ++#define FE_DOWNWARD 3 ++ ++#define FE_INEXACT 0x00080000 ++#define FE_UNDERFLOW 0x00100000 ++#define FE_OVERFLOW 0x00200000 ++#define FE_DIVBYZERO 0x00400000 ++#define FE_INVALID 0x00800000 ++ ++#define FE_ALL_EXCEPT 0x00f80000 ++ ++typedef unsigned fexcept_t; ++typedef unsigned fenv_t; ++ ++#define FE_DFL_ENV ((const fenv_t *)-1) +diff --git a/arch/s390x/bits/float.h b/arch/s390x/bits/float.h +new file mode 100644 +index 0000000..90b73be +--- /dev/null ++++ b/arch/s390x/bits/float.h +@@ -0,0 +1,16 @@ ++#define FLT_EVAL_METHOD 1 ++ ++#define LDBL_TRUE_MIN 6.47517511943802511092443895822764655e-4966L ++#define LDBL_MIN 3.36210314311209350626267781732175260e-4932L ++#define LDBL_MAX 1.18973149535723176508575932662800702e+4932L ++#define LDBL_EPSILON 1.92592994438723585305597794258492732e-34L ++ ++#define LDBL_MANT_DIG 113 ++#define LDBL_MIN_EXP (-16381) ++#define LDBL_MAX_EXP 16384 ++ ++#define LDBL_DIG 33 ++#define LDBL_MIN_10_EXP (-4931) ++#define LDBL_MAX_10_EXP 4932 ++ ++#define DECIMAL_DIG 36 +diff --git a/arch/s390x/bits/ioctl.h b/arch/s390x/bits/ioctl.h +new file mode 100644 +index 0000000..11196e1 +--- /dev/null ++++ b/arch/s390x/bits/ioctl.h +@@ -0,0 +1,195 @@ ++#define _IOC(a,b,c,d) ( ((a)<<30) | ((b)<<8) | (c) | ((d)<<16) ) ++#define _IOC_NONE 0U ++#define _IOC_WRITE 1U ++#define _IOC_READ 2U ++ ++#define _IO(a,b) _IOC(_IOC_NONE,(a),(b),0) ++#define _IOW(a,b,c) _IOC(_IOC_WRITE,(a),(b),sizeof(c)) ++#define _IOR(a,b,c) _IOC(_IOC_READ,(a),(b),sizeof(c)) ++#define _IOWR(a,b,c) _IOC(_IOC_READ|_IOC_WRITE,(a),(b),sizeof(c)) ++ ++#define TCGETS 0x5401 ++#define TCSETS 0x5402 ++#define TCSETSW 0x5403 ++#define TCSETSF 0x5404 ++#define TCGETA 0x5405 ++#define TCSETA 0x5406 ++#define TCSETAW 0x5407 ++#define TCSETAF 0x5408 ++#define TCSBRK 0x5409 ++#define TCXONC 0x540A ++#define TCFLSH 0x540B ++#define TIOCEXCL 0x540C ++#define TIOCNXCL 0x540D ++#define TIOCSCTTY 0x540E ++#define TIOCGPGRP 0x540F ++#define TIOCSPGRP 0x5410 ++#define TIOCOUTQ 0x5411 ++#define TIOCSTI 0x5412 ++#define TIOCGWINSZ 0x5413 ++#define TIOCSWINSZ 0x5414 ++#define TIOCMGET 0x5415 ++#define TIOCMBIS 0x5416 ++#define TIOCMBIC 0x5417 ++#define TIOCMSET 0x5418 ++#define TIOCGSOFTCAR 0x5419 ++#define TIOCSSOFTCAR 0x541A ++#define FIONREAD 0x541B ++#define TIOCINQ FIONREAD ++#define TIOCLINUX 0x541C ++#define TIOCCONS 0x541D ++#define TIOCGSERIAL 0x541E ++#define TIOCSSERIAL 0x541F ++#define TIOCPKT 0x5420 ++#define FIONBIO 0x5421 ++#define TIOCNOTTY 0x5422 ++#define TIOCSETD 0x5423 ++#define TIOCGETD 0x5424 ++#define TCSBRKP 0x5425 ++#define TIOCTTYGSTRUCT 0x5426 ++#define TIOCSBRK 0x5427 ++#define TIOCCBRK 0x5428 ++#define TIOCGSID 0x5429 ++#define TIOCGPTN 0x80045430 ++#define TIOCSPTLCK 0x40045431 ++#define TCGETX 0x5432 ++#define TCSETX 0x5433 ++#define TCSETXF 0x5434 ++#define TCSETXW 0x5435 ++ ++#define FIONCLEX 0x5450 ++#define FIOCLEX 0x5451 ++#define FIOASYNC 0x5452 ++#define TIOCSERCONFIG 0x5453 ++#define TIOCSERGWILD 0x5454 ++#define TIOCSERSWILD 0x5455 ++#define TIOCGLCKTRMIOS 0x5456 ++#define TIOCSLCKTRMIOS 0x5457 ++#define TIOCSERGSTRUCT 0x5458 ++#define TIOCSERGETLSR 0x5459 ++#define TIOCSERGETMULTI 0x545A ++#define TIOCSERSETMULTI 0x545B ++ ++#define TIOCMIWAIT 0x545C ++#define TIOCGICOUNT 0x545D ++#define FIOQSIZE 0x545E ++ ++#define TIOCPKT_DATA 0 ++#define TIOCPKT_FLUSHREAD 1 ++#define TIOCPKT_FLUSHWRITE 2 ++#define TIOCPKT_STOP 4 ++#define TIOCPKT_START 8 ++#define TIOCPKT_NOSTOP 16 ++#define TIOCPKT_DOSTOP 32 ++#define TIOCPKT_IOCTL 64 ++ ++#define TIOCSER_TEMT 0x01 ++ ++struct winsize { ++ unsigned short ws_row; ++ unsigned short ws_col; ++ unsigned short ws_xpixel; ++ unsigned short ws_ypixel; ++}; ++ ++#define TIOCM_LE 0x001 ++#define TIOCM_DTR 0x002 ++#define TIOCM_RTS 0x004 ++#define TIOCM_ST 0x008 ++#define TIOCM_SR 0x010 ++#define TIOCM_CTS 0x020 ++#define TIOCM_CAR 0x040 ++#define TIOCM_RNG 0x080 ++#define TIOCM_DSR 0x100 ++#define TIOCM_CD TIOCM_CAR ++#define TIOCM_RI TIOCM_RNG ++#define TIOCM_OUT1 0x2000 ++#define TIOCM_OUT2 0x4000 ++#define TIOCM_LOOP 0x8000 ++#define TIOCM_MODEM_BITS TIOCM_OUT2 ++ ++#define N_TTY 0 ++#define N_SLIP 1 ++#define N_MOUSE 2 ++#define N_PPP 3 ++#define N_STRIP 4 ++#define N_AX25 5 ++#define N_X25 6 ++#define N_6PACK 7 ++#define N_MASC 8 ++#define N_R3964 9 ++#define N_PROFIBUS_FDL 10 ++#define N_IRDA 11 ++#define N_SMSBLOCK 12 ++#define N_HDLC 13 ++#define N_SYNC_PPP 14 ++#define N_HCI 15 ++ ++#define FIOSETOWN 0x8901 ++#define SIOCSPGRP 0x8902 ++#define FIOGETOWN 0x8903 ++#define SIOCGPGRP 0x8904 ++#define SIOCATMARK 0x8905 ++#define SIOCGSTAMP 0x8906 ++ ++#define SIOCADDRT 0x890B ++#define SIOCDELRT 0x890C ++#define SIOCRTMSG 0x890D ++ ++#define SIOCGIFNAME 0x8910 ++#define SIOCSIFLINK 0x8911 ++#define SIOCGIFCONF 0x8912 ++#define SIOCGIFFLAGS 0x8913 ++#define SIOCSIFFLAGS 0x8914 ++#define SIOCGIFADDR 0x8915 ++#define SIOCSIFADDR 0x8916 ++#define SIOCGIFDSTADDR 0x8917 ++#define SIOCSIFDSTADDR 0x8918 ++#define SIOCGIFBRDADDR 0x8919 ++#define SIOCSIFBRDADDR 0x891a ++#define SIOCGIFNETMASK 0x891b ++#define SIOCSIFNETMASK 0x891c ++#define SIOCGIFMETRIC 0x891d ++#define SIOCSIFMETRIC 0x891e ++#define SIOCGIFMEM 0x891f ++#define SIOCSIFMEM 0x8920 ++#define SIOCGIFMTU 0x8921 ++#define SIOCSIFMTU 0x8922 ++#define SIOCSIFHWADDR 0x8924 ++#define SIOCGIFENCAP 0x8925 ++#define SIOCSIFENCAP 0x8926 ++#define SIOCGIFHWADDR 0x8927 ++#define SIOCGIFSLAVE 0x8929 ++#define SIOCSIFSLAVE 0x8930 ++#define SIOCADDMULTI 0x8931 ++#define SIOCDELMULTI 0x8932 ++#define SIOCGIFINDEX 0x8933 ++#define SIOGIFINDEX SIOCGIFINDEX ++#define SIOCSIFPFLAGS 0x8934 ++#define SIOCGIFPFLAGS 0x8935 ++#define SIOCDIFADDR 0x8936 ++#define SIOCSIFHWBROADCAST 0x8937 ++#define SIOCGIFCOUNT 0x8938 ++ ++#define SIOCGIFBR 0x8940 ++#define SIOCSIFBR 0x8941 ++ ++#define SIOCGIFTXQLEN 0x8942 ++#define SIOCSIFTXQLEN 0x8943 ++ ++#define SIOCDARP 0x8953 ++#define SIOCGARP 0x8954 ++#define SIOCSARP 0x8955 ++ ++#define SIOCDRARP 0x8960 ++#define SIOCGRARP 0x8961 ++#define SIOCSRARP 0x8962 ++ ++#define SIOCGIFMAP 0x8970 ++#define SIOCSIFMAP 0x8971 ++ ++#define SIOCADDDLCI 0x8980 ++#define SIOCDELDLCI 0x8981 ++ ++#define SIOCDEVPRIVATE 0x89F0 ++#define SIOCPROTOPRIVATE 0x89E0 +diff --git a/arch/s390x/bits/ipc.h b/arch/s390x/bits/ipc.h +new file mode 100644 +index 0000000..4710c12 +--- /dev/null ++++ b/arch/s390x/bits/ipc.h +@@ -0,0 +1,14 @@ ++struct ipc_perm { ++ key_t __ipc_perm_key; ++ uid_t uid; ++ gid_t gid; ++ uid_t cuid; ++ gid_t cgid; ++ mode_t mode; ++ unsigned short __pad1; ++ unsigned short __ipc_perm_seq; ++ unsigned long __pad2; ++ unsigned long __pad3; ++}; ++ ++#define IPC_64 0x100 +diff --git a/arch/s390x/bits/limits.h b/arch/s390x/bits/limits.h +new file mode 100644 +index 0000000..792a30b +--- /dev/null ++++ b/arch/s390x/bits/limits.h +@@ -0,0 +1,8 @@ ++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ ++ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) ++#define PAGE_SIZE 4096 ++#define LONG_BIT 64 ++#endif ++ ++#define LONG_MAX 0x7fffffffffffffffL ++#define LLONG_MAX 0x7fffffffffffffffLL +diff --git a/arch/s390x/bits/link.h b/arch/s390x/bits/link.h +new file mode 100644 +index 0000000..923aac5 +--- /dev/null ++++ b/arch/s390x/bits/link.h +@@ -0,0 +1 @@ ++typedef uint64_t Elf_Symndx; +diff --git a/arch/s390x/bits/msg.h b/arch/s390x/bits/msg.h +new file mode 100644 +index 0000000..2e23ca2 +--- /dev/null ++++ b/arch/s390x/bits/msg.h +@@ -0,0 +1,12 @@ ++struct msqid_ds { ++ struct ipc_perm msg_perm; ++ time_t msg_stime; ++ time_t msg_rtime; ++ time_t msg_ctime; ++ unsigned long msg_cbytes; ++ msgqnum_t msg_qnum; ++ msglen_t msg_qbytes; ++ pid_t msg_lspid; ++ pid_t msg_lrpid; ++ unsigned long __unused[2]; ++}; +diff --git a/arch/s390x/bits/posix.h b/arch/s390x/bits/posix.h +new file mode 100644 +index 0000000..c37b94c +--- /dev/null ++++ b/arch/s390x/bits/posix.h +@@ -0,0 +1,2 @@ ++#define _POSIX_V6_LP64_OFF64 1 ++#define _POSIX_V7_LP64_OFF64 1 +diff --git a/arch/s390x/bits/reg.h b/arch/s390x/bits/reg.h +new file mode 100644 +index 0000000..2633f39 +--- /dev/null ++++ b/arch/s390x/bits/reg.h +@@ -0,0 +1,2 @@ ++#undef __WORDSIZE ++#define __WORDSIZE 64 +diff --git a/arch/s390x/bits/sem.h b/arch/s390x/bits/sem.h +new file mode 100644 +index 0000000..644f68a +--- /dev/null ++++ b/arch/s390x/bits/sem.h +@@ -0,0 +1,7 @@ ++struct semid_ds { ++ struct ipc_perm sem_perm; ++ time_t sem_otime; ++ time_t sem_ctime; ++ unsigned short __pad[3], sem_nsems; ++ unsigned long __unused[2]; ++}; +diff --git a/arch/s390x/bits/setjmp.h b/arch/s390x/bits/setjmp.h +new file mode 100644 +index 0000000..b2bd974 +--- /dev/null ++++ b/arch/s390x/bits/setjmp.h +@@ -0,0 +1 @@ ++typedef unsigned long __jmp_buf[18]; +diff --git a/arch/s390x/bits/shm.h b/arch/s390x/bits/shm.h +new file mode 100644 +index 0000000..6652d65 +--- /dev/null ++++ b/arch/s390x/bits/shm.h +@@ -0,0 +1,25 @@ ++#define SHMLBA 4096 ++ ++struct shmid_ds { ++ struct ipc_perm shm_perm; ++ size_t shm_segsz; ++ time_t shm_atime; ++ time_t shm_dtime; ++ time_t shm_ctime; ++ pid_t shm_cpid; ++ pid_t shm_lpid; ++ unsigned long shm_nattch; ++ unsigned long __pad1; ++ unsigned long __pad2; ++}; ++ ++struct shminfo { ++ unsigned long shmmax, shmmin, shmmni, shmseg, shmall, __unused[4]; ++}; ++ ++struct shm_info { ++ int __used_ids; ++ unsigned long shm_tot, shm_rss, shm_swp; ++ unsigned long __swap_attempts, __swap_successes; ++}; ++ +diff --git a/arch/s390x/bits/signal.h b/arch/s390x/bits/signal.h +new file mode 100644 +index 0000000..c866583 +--- /dev/null ++++ b/arch/s390x/bits/signal.h +@@ -0,0 +1,106 @@ ++#if defined(_POSIX_SOURCE) || defined(_POSIX_C_SOURCE) \ ++ || defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) ++ ++#if defined(_XOPEN_SOURCE) || defined(_GNU_SOURCE) || defined(_BSD_SOURCE) ++#define MINSIGSTKSZ 4096 ++#define SIGSTKSZ 10240 ++#endif ++ ++#if defined(_GNU_SOURCE) || defined(_BSD_SOURCE) ++ ++typedef unsigned long greg_t, gregset_t[27]; ++ ++typedef struct { ++ unsigned long mask; ++ unsigned long addr; ++} __psw_t; ++ ++typedef union { ++ double d; ++ float f; ++} fpreg_t; ++ ++typedef struct { ++ unsigned fpc; ++ fpreg_t fprs[16]; ++} fpregset_t; ++ ++typedef struct ++{ ++ __psw_t psw; ++ unsigned long gregs[16]; ++ unsigned aregs[16]; ++ fpregset_t fpregs; ++} mcontext_t; ++ ++#else ++ ++typedef struct { ++ unsigned long __regs1[18]; ++ unsigned __regs2[18]; ++ double __regs3[16]; ++} mcontext_t; ++ ++#endif ++ ++struct sigaltstack { ++ void *ss_sp; ++ int ss_flags; ++ size_t ss_size; ++}; ++ ++typedef struct __ucontext { ++ unsigned long uc_flags; ++ struct __ucontext *uc_link; ++ stack_t uc_stack; ++ mcontext_t uc_mcontext; ++ sigset_t uc_sigmask; ++} ucontext_t; ++ ++#define SA_NOCLDSTOP 1U ++#define SA_NOCLDWAIT 2U ++#define SA_SIGINFO 4U ++#define SA_ONSTACK 0x08000000U ++#define SA_RESTART 0x10000000U ++#define SA_NODEFER 0x40000000U ++#define SA_RESETHAND 0x80000000U ++#define SA_RESTORER 0x04000000U ++ ++#endif ++ ++#define SIGHUP 1 ++#define SIGINT 2 ++#define SIGQUIT 3 ++#define SIGILL 4 ++#define SIGTRAP 5 ++#define SIGABRT 6 ++#define SIGIOT SIGABRT ++#define SIGBUS 7 ++#define SIGFPE 8 ++#define SIGKILL 9 ++#define SIGUSR1 10 ++#define SIGSEGV 11 ++#define SIGUSR2 12 ++#define SIGPIPE 13 ++#define SIGALRM 14 ++#define SIGTERM 15 ++#define SIGSTKFLT 16 ++#define SIGCHLD 17 ++#define SIGCONT 18 ++#define SIGSTOP 19 ++#define SIGTSTP 20 ++#define SIGTTIN 21 ++#define SIGTTOU 22 ++#define SIGURG 23 ++#define SIGXCPU 24 ++#define SIGXFSZ 25 ++#define SIGVTALRM 26 ++#define SIGPROF 27 ++#define SIGWINCH 28 ++#define SIGIO 29 ++#define SIGPOLL SIGIO ++#define SIGPWR 30 ++#define SIGSYS 31 ++#define SIGUNUSED SIGSYS ++ ++#define _NSIG 65 +diff --git a/arch/s390x/bits/socket.h b/arch/s390x/bits/socket.h +new file mode 100644 +index 0000000..2b81bfe +--- /dev/null ++++ b/arch/s390x/bits/socket.h +@@ -0,0 +1,44 @@ ++struct msghdr { ++ void *msg_name; ++ socklen_t msg_namelen; ++ struct iovec *msg_iov; ++ int __pad1, msg_iovlen; ++ void *msg_control; ++ int __pad2; ++ socklen_t msg_controllen; ++ int msg_flags; ++}; ++ ++struct cmsghdr { ++ int __pad1; ++ socklen_t cmsg_len; ++ int cmsg_level; ++ int cmsg_type; ++}; ++ ++#define SO_DEBUG 1 ++#define SO_REUSEADDR 2 ++#define SO_TYPE 3 ++#define SO_ERROR 4 ++#define SO_DONTROUTE 5 ++#define SO_BROADCAST 6 ++#define SO_SNDBUF 7 ++#define SO_RCVBUF 8 ++#define SO_KEEPALIVE 9 ++#define SO_OOBINLINE 10 ++#define SO_NO_CHECK 11 ++#define SO_PRIORITY 12 ++#define SO_LINGER 13 ++#define SO_BSDCOMPAT 14 ++#define SO_REUSEPORT 15 ++#define SO_PASSCRED 16 ++#define SO_PEERCRED 17 ++#define SO_RCVLOWAT 18 ++#define SO_SNDLOWAT 19 ++#define SO_RCVTIMEO 20 ++#define SO_SNDTIMEO 21 ++#define SO_ACCEPTCONN 30 ++#define SO_SNDBUFFORCE 32 ++#define SO_RCVBUFFORCE 33 ++#define SO_PROTOCOL 38 ++#define SO_DOMAIN 39 +diff --git a/arch/s390x/bits/stat.h b/arch/s390x/bits/stat.h +new file mode 100644 +index 0000000..2db4ad0 +--- /dev/null ++++ b/arch/s390x/bits/stat.h +@@ -0,0 +1,16 @@ ++struct stat { ++ dev_t st_dev; ++ ino_t st_ino; ++ nlink_t st_nlink; ++ mode_t st_mode; ++ uid_t st_uid; ++ gid_t st_gid; ++ dev_t st_rdev; ++ off_t st_size; ++ struct timespec st_atim; ++ struct timespec st_mtim; ++ struct timespec st_ctim; ++ blksize_t st_blksize; ++ blkcnt_t st_blocks; ++ unsigned long __unused[3]; ++}; +diff --git a/arch/s390x/bits/statfs.h b/arch/s390x/bits/statfs.h +new file mode 100644 +index 0000000..6617358 +--- /dev/null ++++ b/arch/s390x/bits/statfs.h +@@ -0,0 +1,7 @@ ++struct statfs { ++ unsigned f_type, f_bsize; ++ fsblkcnt_t f_blocks, f_bfree, f_bavail; ++ fsfilcnt_t f_files, f_ffree; ++ fsid_t f_fsid; ++ unsigned f_namelen, f_frsize, f_flags, f_spare[4]; ++}; +diff --git a/arch/s390x/bits/stdint.h b/arch/s390x/bits/stdint.h +new file mode 100644 +index 0000000..1bb147f +--- /dev/null ++++ b/arch/s390x/bits/stdint.h +@@ -0,0 +1,20 @@ ++typedef int32_t int_fast16_t; ++typedef int32_t int_fast32_t; ++typedef uint32_t uint_fast16_t; ++typedef uint32_t uint_fast32_t; ++ ++#define INT_FAST16_MIN INT32_MIN ++#define INT_FAST32_MIN INT32_MIN ++ ++#define INT_FAST16_MAX INT32_MAX ++#define INT_FAST32_MAX INT32_MAX ++ ++#define UINT_FAST16_MAX UINT32_MAX ++#define UINT_FAST32_MAX UINT32_MAX ++ ++#define INTPTR_MIN INT64_MIN ++#define INTPTR_MAX INT64_MAX ++#define UINTPTR_MAX UINT64_MAX ++#define PTRDIFF_MIN INT64_MIN ++#define PTRDIFF_MAX INT64_MAX ++#define SIZE_MAX UINT64_MAX +diff --git a/arch/s390x/bits/syscall.h.in b/arch/s390x/bits/syscall.h.in +new file mode 100644 +index 0000000..1b8fdf0 +--- /dev/null ++++ b/arch/s390x/bits/syscall.h.in +@@ -0,0 +1,323 @@ ++#define __NR_exit 1 ++#define __NR_fork 2 ++#define __NR_read 3 ++#define __NR_write 4 ++#define __NR_open 5 ++#define __NR_close 6 ++#define __NR_restart_syscall 7 ++#define __NR_creat 8 ++#define __NR_link 9 ++#define __NR_unlink 10 ++#define __NR_execve 11 ++#define __NR_chdir 12 ++#define __NR_mknod 14 ++#define __NR_chmod 15 ++#define __NR_lseek 19 ++#define __NR_getpid 20 ++#define __NR_mount 21 ++#define __NR_umount 22 ++#define __NR_ptrace 26 ++#define __NR_alarm 27 ++#define __NR_pause 29 ++#define __NR_utime 30 ++#define __NR_access 33 ++#define __NR_nice 34 ++#define __NR_sync 36 ++#define __NR_kill 37 ++#define __NR_rename 38 ++#define __NR_mkdir 39 ++#define __NR_rmdir 40 ++#define __NR_dup 41 ++#define __NR_pipe 42 ++#define __NR_times 43 ++#define __NR_brk 45 ++#define __NR_signal 48 ++#define __NR_acct 51 ++#define __NR_umount2 52 ++#define __NR_ioctl 54 ++#define __NR_fcntl 55 ++#define __NR_setpgid 57 ++#define __NR_umask 60 ++#define __NR_chroot 61 ++#define __NR_ustat 62 ++#define __NR_dup2 63 ++#define __NR_getppid 64 ++#define __NR_getpgrp 65 ++#define __NR_setsid 66 ++#define __NR_sigaction 67 ++#define __NR_sigsuspend 72 ++#define __NR_sigpending 73 ++#define __NR_sethostname 74 ++#define __NR_setrlimit 75 ++#define __NR_getrusage 77 ++#define __NR_gettimeofday 78 ++#define __NR_settimeofday 79 ++#define __NR_symlink 83 ++#define __NR_readlink 85 ++#define __NR_uselib 86 ++#define __NR_swapon 87 ++#define __NR_reboot 88 ++#define __NR_readdir 89 ++#define __NR_mmap 90 ++#define __NR_munmap 91 ++#define __NR_truncate 92 ++#define __NR_ftruncate 93 ++#define __NR_fchmod 94 ++#define __NR_getpriority 96 ++#define __NR_setpriority 97 ++#define __NR_statfs 99 ++#define __NR_fstatfs 100 ++#define __NR_socketcall 102 ++#define __NR_syslog 103 ++#define __NR_setitimer 104 ++#define __NR_getitimer 105 ++#define __NR_stat 106 ++#define __NR_lstat 107 ++#define __NR_fstat 108 ++#define __NR_lookup_dcookie 110 ++#define __NR_vhangup 111 ++#define __NR_idle 112 ++#define __NR_wait4 114 ++#define __NR_swapoff 115 ++#define __NR_sysinfo 116 ++#define __NR_ipc 117 ++#define __NR_fsync 118 ++#define __NR_sigreturn 119 ++#define __NR_clone 120 ++#define __NR_setdomainname 121 ++#define __NR_uname 122 ++#define __NR_adjtimex 124 ++#define __NR_mprotect 125 ++#define __NR_sigprocmask 126 ++#define __NR_create_module 127 ++#define __NR_init_module 128 ++#define __NR_delete_module 129 ++#define __NR_get_kernel_syms 130 ++#define __NR_quotactl 131 ++#define __NR_getpgid 132 ++#define __NR_fchdir 133 ++#define __NR_bdflush 134 ++#define __NR_sysfs 135 ++#define __NR_personality 136 ++#define __NR_afs_syscall 137 ++#define __NR_getdents 141 ++#define __NR_select 142 ++#define __NR_flock 143 ++#define __NR_msync 144 ++#define __NR_readv 145 ++#define __NR_writev 146 ++#define __NR_getsid 147 ++#define __NR_fdatasync 148 ++#define __NR__sysctl 149 ++#define __NR_mlock 150 ++#define __NR_munlock 151 ++#define __NR_mlockall 152 ++#define __NR_munlockall 153 ++#define __NR_sched_setparam 154 ++#define __NR_sched_getparam 155 ++#define __NR_sched_setscheduler 156 ++#define __NR_sched_getscheduler 157 ++#define __NR_sched_yield 158 ++#define __NR_sched_get_priority_max 159 ++#define __NR_sched_get_priority_min 160 ++#define __NR_sched_rr_get_interval 161 ++#define __NR_nanosleep 162 ++#define __NR_mremap 163 ++#define __NR_query_module 167 ++#define __NR_poll 168 ++#define __NR_nfsservctl 169 ++#define __NR_prctl 172 ++#define __NR_rt_sigreturn 173 ++#define __NR_rt_sigaction 174 ++#define __NR_rt_sigprocmask 175 ++#define __NR_rt_sigpending 176 ++#define __NR_rt_sigtimedwait 177 ++#define __NR_rt_sigqueueinfo 178 ++#define __NR_rt_sigsuspend 179 ++#define __NR_pread64 180 ++#define __NR_pwrite64 181 ++#define __NR_getcwd 183 ++#define __NR_capget 184 ++#define __NR_capset 185 ++#define __NR_sigaltstack 186 ++#define __NR_sendfile 187 ++#define __NR_getpmsg 188 ++#define __NR_putpmsg 189 ++#define __NR_vfork 190 ++#define __NR_getrlimit 191 ++#define __NR_lchown 198 ++#define __NR_getuid 199 ++#define __NR_getgid 200 ++#define __NR_geteuid 201 ++#define __NR_getegid 202 ++#define __NR_setreuid 203 ++#define __NR_setregid 204 ++#define __NR_getgroups 205 ++#define __NR_setgroups 206 ++#define __NR_fchown 207 ++#define __NR_setresuid 208 ++#define __NR_getresuid 209 ++#define __NR_setresgid 210 ++#define __NR_getresgid 211 ++#define __NR_chown 212 ++#define __NR_setuid 213 ++#define __NR_setgid 214 ++#define __NR_setfsuid 215 ++#define __NR_setfsgid 216 ++#define __NR_pivot_root 217 ++#define __NR_mincore 218 ++#define __NR_madvise 219 ++#define __NR_getdents64 220 ++#define __NR_readahead 222 ++#define __NR_setxattr 224 ++#define __NR_lsetxattr 225 ++#define __NR_fsetxattr 226 ++#define __NR_getxattr 227 ++#define __NR_lgetxattr 228 ++#define __NR_fgetxattr 229 ++#define __NR_listxattr 230 ++#define __NR_llistxattr 231 ++#define __NR_flistxattr 232 ++#define __NR_removexattr 233 ++#define __NR_lremovexattr 234 ++#define __NR_fremovexattr 235 ++#define __NR_gettid 236 ++#define __NR_tkill 237 ++#define __NR_futex 238 ++#define __NR_sched_setaffinity 239 ++#define __NR_sched_getaffinity 240 ++#define __NR_tgkill 241 ++#define __NR_io_setup 243 ++#define __NR_io_destroy 244 ++#define __NR_io_getevents 245 ++#define __NR_io_submit 246 ++#define __NR_io_cancel 247 ++#define __NR_exit_group 248 ++#define __NR_epoll_create 249 ++#define __NR_epoll_ctl 250 ++#define __NR_epoll_wait 251 ++#define __NR_set_tid_address 252 ++#define __NR_fadvise64 253 ++#define __NR_timer_create 254 ++#define __NR_timer_settime 255 ++#define __NR_timer_gettime 256 ++#define __NR_timer_getoverrun 257 ++#define __NR_timer_delete 258 ++#define __NR_clock_settime 259 ++#define __NR_clock_gettime 260 ++#define __NR_clock_getres 261 ++#define __NR_clock_nanosleep 262 ++#define __NR_statfs64 265 ++#define __NR_fstatfs64 266 ++#define __NR_remap_file_pages 267 ++#define __NR_mbind 268 ++#define __NR_get_mempolicy 269 ++#define __NR_set_mempolicy 270 ++#define __NR_mq_open 271 ++#define __NR_mq_unlink 272 ++#define __NR_mq_timedsend 273 ++#define __NR_mq_timedreceive 274 ++#define __NR_mq_notify 275 ++#define __NR_mq_getsetattr 276 ++#define __NR_kexec_load 277 ++#define __NR_add_key 278 ++#define __NR_request_key 279 ++#define __NR_keyctl 280 ++#define __NR_waitid 281 ++#define __NR_ioprio_set 282 ++#define __NR_ioprio_get 283 ++#define __NR_inotify_init 284 ++#define __NR_inotify_add_watch 285 ++#define __NR_inotify_rm_watch 286 ++#define __NR_migrate_pages 287 ++#define __NR_openat 288 ++#define __NR_mkdirat 289 ++#define __NR_mknodat 290 ++#define __NR_fchownat 291 ++#define __NR_futimesat 292 ++#define __NR_newfstatat 293 ++#define __NR_unlinkat 294 ++#define __NR_renameat 295 ++#define __NR_linkat 296 ++#define __NR_symlinkat 297 ++#define __NR_readlinkat 298 ++#define __NR_fchmodat 299 ++#define __NR_faccessat 300 ++#define __NR_pselect6 301 ++#define __NR_ppoll 302 ++#define __NR_unshare 303 ++#define __NR_set_robust_list 304 ++#define __NR_get_robust_list 305 ++#define __NR_splice 306 ++#define __NR_sync_file_range 307 ++#define __NR_tee 308 ++#define __NR_vmsplice 309 ++#define __NR_move_pages 310 ++#define __NR_getcpu 311 ++#define __NR_epoll_pwait 312 ++#define __NR_utimes 313 ++#define __NR_fallocate 314 ++#define __NR_utimensat 315 ++#define __NR_signalfd 316 ++#define __NR_timerfd 317 ++#define __NR_eventfd 318 ++#define __NR_timerfd_create 319 ++#define __NR_timerfd_settime 320 ++#define __NR_timerfd_gettime 321 ++#define __NR_signalfd4 322 ++#define __NR_eventfd2 323 ++#define __NR_inotify_init1 324 ++#define __NR_pipe2 325 ++#define __NR_dup3 326 ++#define __NR_epoll_create1 327 ++#define __NR_preadv 328 ++#define __NR_pwritev 329 ++#define __NR_rt_tgsigqueueinfo 330 ++#define __NR_perf_event_open 331 ++#define __NR_fanotify_init 332 ++#define __NR_fanotify_mark 333 ++#define __NR_prlimit64 334 ++#define __NR_name_to_handle_at 335 ++#define __NR_open_by_handle_at 336 ++#define __NR_clock_adjtime 337 ++#define __NR_syncfs 338 ++#define __NR_setns 339 ++#define __NR_process_vm_readv 340 ++#define __NR_process_vm_writev 341 ++#define __NR_s390_runtime_instr 342 ++#define __NR_kcmp 343 ++#define __NR_finit_module 344 ++#define __NR_sched_setattr 345 ++#define __NR_sched_getattr 346 ++#define __NR_renameat2 347 ++#define __NR_seccomp 348 ++#define __NR_getrandom 349 ++#define __NR_memfd_create 350 ++#define __NR_bpf 351 ++#define __NR_s390_pci_mmio_write 352 ++#define __NR_s390_pci_mmio_read 353 ++#define __NR_execveat 354 ++#define __NR_userfaultfd 355 ++#define __NR_membarrier 356 ++#define __NR_recvmmsg 357 ++#define __NR_sendmmsg 358 ++#define __NR_socket 359 ++#define __NR_socketpair 360 ++#define __NR_bind 361 ++#define __NR_connect 362 ++#define __NR_listen 363 ++#define __NR_accept4 364 ++#define __NR_getsockopt 365 ++#define __NR_setsockopt 366 ++#define __NR_getsockname 367 ++#define __NR_getpeername 368 ++#define __NR_sendto 369 ++#define __NR_sendmsg 370 ++#define __NR_recvfrom 371 ++#define __NR_recvmsg 372 ++#define __NR_shutdown 373 ++#define __NR_mlock2 374 ++#define __NR_copy_file_range 375 ++#define __NR_preadv2 376 ++#define __NR_pwritev2 377 ++ +diff --git a/arch/s390x/bits/user.h b/arch/s390x/bits/user.h +new file mode 100644 +index 0000000..90f07b7 +--- /dev/null ++++ b/arch/s390x/bits/user.h +@@ -0,0 +1,62 @@ ++#undef __WORDSIZE ++#define __WORDSIZE 64 ++ ++typedef union { ++ double d; ++ float f; ++} elf_fpreg_t; ++ ++typedef struct { ++ unsigned fpc; ++ fpreg_t fprs[16]; ++} elf_fpregset_t; ++ ++#define ELF_NGREG 27 ++typedef unsigned long elf_greg_t, elf_gregset_t[ELF_NGREG]; ++ ++struct _user_psw_struct { ++ unsigned long mask, addr; ++}; ++ ++struct _user_fpregs_struct { ++ unsigned fpc; ++ double fprs[16]; ++}; ++ ++struct _user_per_struct { ++ unsigned long control_regs[3]; ++ unsigned single_step : 1; ++ unsigned instruction_fetch : 1; ++ unsigned : 30; ++ unsigned long starting_addr, ending_addr; ++ unsigned short perc_atmid; ++ unsigned long address; ++ unsigned char access_id; ++} per_struct; ++ ++struct _user_regs_struct { ++ struct _user_psw_struct psw; ++ unsigned long gprs[16]; ++ unsigned acrs[16]; ++ unsigned long orig_gpr2; ++ struct _user_fpregs_struct fp_regs; ++ struct _user_per_struct per_info; ++ unsigned long ieee_instruction_pointer; ++}; ++ ++struct user { ++ struct _user_regs_struct regs; ++ unsigned long u_tsize, u_dsize, u_ssize; ++ unsigned long start_code, start_stack; ++ long signal; ++ struct _user_regs_struct *u_ar0; ++ unsigned long magic; ++ char u_comm[32]; ++}; ++ ++#define PAGE_MASK (~(PAGE_SIZE-1)) ++#define NBPG PAGE_SIZE ++#define UPAGES 1 ++#define HOST_TEXT_START_ADDR (u.start_code) ++#define HOST_STACK_END_ADDR (u.start_stack + u.u_ssize * NBPG) ++ +diff --git a/arch/s390x/crt_arch.h b/arch/s390x/crt_arch.h +new file mode 100644 +index 0000000..92091a1 +--- /dev/null ++++ b/arch/s390x/crt_arch.h +@@ -0,0 +1,17 @@ ++__asm__( ++".text\n" ++".global " START "\n" ++".type " START ", %function\n" ++START ":\n" ++" lgr %r2, %r15\n" ++" larl %r3, 1f\n" ++" agf %r3, 0(%r3)\n" ++" aghi %r15, -160\n" ++" lghi %r0, 0\n" ++" stg %r0, 0(%r15)\n" ++" jg " START "_c\n" ++" .align 8\n" ++".weak _DYNAMIC\n" ++".hidden _DYNAMIC\n" ++"1: .long _DYNAMIC-.\n" ++); +diff --git a/arch/s390x/pthread_arch.h b/arch/s390x/pthread_arch.h +new file mode 100644 +index 0000000..bd90016 +--- /dev/null ++++ b/arch/s390x/pthread_arch.h +@@ -0,0 +1,14 @@ ++static inline struct pthread *__pthread_self() ++{ ++ struct pthread *self; ++ __asm__ __volatile__ ( ++ "ear %0, %%a0\n" ++ "sllg %0, %0, 32\n" ++ "ear %0, %%a1\n" ++ : "=r"(self)); ++ return self; ++} ++ ++#define TP_ADJ(p) (p) ++ ++#define MC_PC psw.addr +diff --git a/arch/s390x/reloc.h b/arch/s390x/reloc.h +new file mode 100644 +index 0000000..a238dc6 +--- /dev/null ++++ b/arch/s390x/reloc.h +@@ -0,0 +1,15 @@ ++#include ++ ++#define LDSO_ARCH "s390x" ++ ++#define REL_SYMBOLIC R_390_64 ++#define REL_GOT R_390_GLOB_DAT ++#define REL_PLT R_390_JMP_SLOT ++#define REL_RELATIVE R_390_RELATIVE ++#define REL_COPY R_390_COPY ++#define REL_DTPMOD R_390_TLS_DTPMOD ++#define REL_DTPOFF R_390_TLS_DTPOFF ++#define REL_TPOFF R_390_TLS_TPOFF ++ ++#define CRTJMP(pc,sp) __asm__ __volatile__( \ ++ "lgr %%r15,%1; br %0" : : "r"(pc), "r"(sp) : "memory" ) +diff --git a/arch/s390x/syscall_arch.h b/arch/s390x/syscall_arch.h +new file mode 100644 +index 0000000..afb9985 +--- /dev/null ++++ b/arch/s390x/syscall_arch.h +@@ -0,0 +1,76 @@ ++#define __SYSCALL_LL_E(x) (x) ++#define __SYSCALL_LL_O(x) (x) ++ ++#define __asm_syscall(ret, ...) do { \ ++ __asm__ __volatile__ ("svc 0\n" \ ++ : ret : __VA_ARGS__ : "memory"); \ ++ return r2; \ ++ } while (0) ++ ++static inline long __syscall0(long n) ++{ ++ register long r1 __asm__("r1") = n; ++ register long r2 __asm__("r2"); ++ __asm_syscall("=r"(r2), "r"(r1)); ++} ++ ++static inline long __syscall1(long n, long a) ++{ ++ register long r1 __asm__("r1") = n; ++ register long r2 __asm__("r2") = a; ++ __asm_syscall("+r"(r2), "r"(r1)); ++} ++ ++static inline long __syscall2(long n, long a, long b) ++{ ++ register long r1 __asm__("r1") = n; ++ register long r2 __asm__("r2") = a; ++ register long r3 __asm__("r3") = b; ++ __asm_syscall("+r"(r2), "r"(r1), "r"(r3)); ++} ++ ++static inline long __syscall3(long n, long a, long b, long c) ++{ ++ register long r1 __asm__("r1") = n; ++ register long r2 __asm__("r2") = a; ++ register long r3 __asm__("r3") = b; ++ register long r4 __asm__("r4") = c; ++ __asm_syscall("+r"(r2), "r"(r1), "r"(r3), "r"(r4)); ++} ++ ++static inline long __syscall4(long n, long a, long b, long c, long d) ++{ ++ register long r1 __asm__("r1") = n; ++ register long r2 __asm__("r2") = a; ++ register long r3 __asm__("r3") = b; ++ register long r4 __asm__("r4") = c; ++ register long r5 __asm__("r5") = d; ++ __asm_syscall("+r"(r2), "r"(r1), "r"(r3), "r"(r4), "r"(r5)); ++} ++ ++static inline long __syscall5(long n, long a, long b, long c, long d, long e) ++{ ++ register long r1 __asm__("r1") = n; ++ register long r2 __asm__("r2") = a; ++ register long r3 __asm__("r3") = b; ++ register long r4 __asm__("r4") = c; ++ register long r5 __asm__("r5") = d; ++ register long r6 __asm__("r6") = e; ++ __asm_syscall("+r"(r2), "r"(r1), "r"(r3), "r"(r4), "r"(r5), "r"(r6)); ++} ++ ++static inline long __syscall6(long n, long a, long b, long c, long d, long e, long f) ++{ ++ if (n == SYS_mmap) return __syscall1(n, (long)(long[]){a,b,c,d,e,f}); ++ ++ register long r1 __asm__("r1") = n; ++ register long r2 __asm__("r2") = a; ++ register long r3 __asm__("r3") = b; ++ register long r4 __asm__("r4") = c; ++ register long r5 __asm__("r5") = d; ++ register long r6 __asm__("r6") = e; ++ register long r7 __asm__("r7") = f; ++ __asm_syscall("+r"(r2), "r"(r1), "r"(r3), "r"(r4), "r"(r5), "r"(r6), "r"(r7)); ++} ++ ++#define SYSCALL_USE_SOCKETCALL +diff --git a/configure b/configure +index af8b45f..56ddafb 100755 +--- a/configure ++++ b/configure +@@ -325,6 +325,7 @@ or1k*) ARCH=or1k ;; + powerpc64*) ARCH=powerpc64 ;; + powerpc*) ARCH=powerpc ;; + sh[1-9bel-]*|sh|superh*) ARCH=sh ;; ++s390x*) ARCH=s390x ;; + unknown) fail "$0: unable to detect target arch; try $0 --target=..." ;; + *) fail "$0: unknown or unsupported target \"$target\"" ;; + esac +diff --git a/crt/s390x/crti.s b/crt/s390x/crti.s +new file mode 100644 +index 0000000..f453205 +--- /dev/null ++++ b/crt/s390x/crti.s +@@ -0,0 +1,17 @@ ++.section .init ++.align 2 ++.global _init ++_init: ++ stmg %r14, %r15, 112(%r15) ++ lgr %r0, %r15 ++ aghi %r15, -160 ++ stg %r0, 0(%r15) ++ ++.section .fini ++.align 2 ++.global _fini ++_fini: ++ stmg %r14, %r15, 112(%r15) ++ lgr %r0, %r15 ++ aghi %r15, -160 ++ stg %r0, 0(%r15) +diff --git a/crt/s390x/crtn.s b/crt/s390x/crtn.s +new file mode 100644 +index 0000000..06066dc +--- /dev/null ++++ b/crt/s390x/crtn.s +@@ -0,0 +1,9 @@ ++.section .init ++.align 2 ++ lmg %r14, %r15, 272(%r15) ++ br %r14 ++ ++.section .fini ++.align 2 ++ lmg %r14, %r15, 272(%r15) ++ br %r14 +diff --git a/src/fenv/s390x/fenv.c b/src/fenv/s390x/fenv.c +new file mode 100644 +index 0000000..9a3488d +--- /dev/null ++++ b/src/fenv/s390x/fenv.c +@@ -0,0 +1,55 @@ ++#include ++ ++static inline unsigned get_fpc(void) ++{ ++ unsigned fpc; ++ __asm__ __volatile__("efpc %0" : "=r"(fpc)); ++ return fpc; ++} ++ ++static inline void set_fpc(unsigned fpc) ++{ ++ __asm__ __volatile__("sfpc %0" :: "r"(fpc)); ++} ++ ++int feclearexcept(int mask) ++{ ++ mask &= FE_ALL_EXCEPT; ++ set_fpc(get_fpc() & ~mask); ++ return 0; ++} ++ ++int feraiseexcept(int mask) ++{ ++ mask &= FE_ALL_EXCEPT; ++ set_fpc(get_fpc() | mask); ++ return 0; ++} ++ ++int fetestexcept(int mask) ++{ ++ return get_fpc() & mask & FE_ALL_EXCEPT; ++} ++ ++int fegetround(void) ++{ ++ return get_fpc() & 3; ++} ++ ++int __fesetround(int r) ++{ ++ set_fpc(get_fpc() & ~3L | r); ++ return 0; ++} ++ ++int fegetenv(fenv_t *envp) ++{ ++ *envp = get_fpc(); ++ return 0; ++} ++ ++int fesetenv(const fenv_t *envp) ++{ ++ set_fpc(envp != FE_DFL_ENV ? *envp : 0); ++ return 0; ++} +diff --git a/src/internal/s390x/syscall.s b/src/internal/s390x/syscall.s +new file mode 100644 +index 0000000..2322bc3 +--- /dev/null ++++ b/src/internal/s390x/syscall.s +@@ -0,0 +1,15 @@ ++.global __syscall ++.hidden __syscall ++.type __syscall, %function ++__syscall: ++ stg %r7, 56(%r15) ++ lgr %r1, %r2 ++ lgr %r2, %r3 ++ lgr %r3, %r4 ++ lgr %r4, %r5 ++ lgr %r5, %r6 ++ lg %r6, 160(%r15) ++ lg %r7, 168(%r15) ++ svc 0 ++ lg %r7, 56(%r15) ++ br %r14 +diff --git a/src/process/s390x/vfork.s b/src/process/s390x/vfork.s +new file mode 100644 +index 0000000..05956e8 +--- /dev/null ++++ b/src/process/s390x/vfork.s +@@ -0,0 +1,8 @@ ++ .global __vfork ++ .weak vfork ++ .type __vfork,%function ++ .type vfork,%function ++__vfork: ++vfork: ++ svc 190 ++ jg __syscall_ret +diff --git a/src/setjmp/s390x/longjmp.s b/src/setjmp/s390x/longjmp.s +new file mode 100644 +index 0000000..b2310f8 +--- /dev/null ++++ b/src/setjmp/s390x/longjmp.s +@@ -0,0 +1,23 @@ ++ .global _longjmp ++ .global longjmp ++ .type _longjmp,@function ++ .type longjmp,@function ++_longjmp: ++longjmp: ++ ++1: ++ lmg %r6, %r15, 0(%r2) ++ ++ ld %f8, 10*8(%r2) ++ ld %f9, 11*8(%r2) ++ ld %f10, 12*8(%r2) ++ ld %f11, 13*8(%r2) ++ ld %f12, 14*8(%r2) ++ ld %f13, 15*8(%r2) ++ ld %f14, 16*8(%r2) ++ ld %f15, 17*8(%r2) ++ ++ ltgr %r2, %r3 ++ bnzr %r14 ++ lhi %r2, 1 ++ br %r14 +diff --git a/src/setjmp/s390x/setjmp.s b/src/setjmp/s390x/setjmp.s +new file mode 100644 +index 0000000..afae1b6 +--- /dev/null ++++ b/src/setjmp/s390x/setjmp.s +@@ -0,0 +1,25 @@ ++ .global ___setjmp ++ .hidden ___setjmp ++ .global __setjmp ++ .global _setjmp ++ .global setjmp ++ .type __setjmp,@function ++ .type _setjmp,@function ++ .type setjmp,@function ++___setjmp: ++__setjmp: ++_setjmp: ++setjmp: ++ stmg %r6, %r15, 0(%r2) ++ ++ std %f8, 10*8(%r2) ++ std %f9, 11*8(%r2) ++ std %f10, 12*8(%r2) ++ std %f11, 13*8(%r2) ++ std %f12, 14*8(%r2) ++ std %f13, 15*8(%r2) ++ std %f14, 16*8(%r2) ++ std %f15, 17*8(%r2) ++ ++ lghi %r2, 0 ++ br %r14 +diff --git a/src/signal/s390x/restore.s b/src/signal/s390x/restore.s +new file mode 100644 +index 0000000..79beb68 +--- /dev/null ++++ b/src/signal/s390x/restore.s +@@ -0,0 +1,9 @@ ++ .global __restore ++ .type __restore,%function ++__restore: ++ svc 119 #__NR_sigreturn ++ ++ .global __restore_rt ++ .type __restore_rt,%function ++__restore_rt: ++ svc 173 # __NR_rt_sigreturn +diff --git a/src/signal/s390x/sigsetjmp.s b/src/signal/s390x/sigsetjmp.s +new file mode 100644 +index 0000000..72dfc25 +--- /dev/null ++++ b/src/signal/s390x/sigsetjmp.s +@@ -0,0 +1,23 @@ ++ .global sigsetjmp ++ .global __sigsetjmp ++ .type sigsetjmp,%function ++ .type __sigsetjmp,%function ++ .hidden ___setjmp ++sigsetjmp: ++__sigsetjmp: ++ ltgr %r3, %r3 ++ bz ___setjmp ++ ++ stg %r14, 18*8(%r2) ++ stg %r6, 20*8(%r2) ++ lgr %r6, %r2 ++ ++ brasl %r14, ___setjmp ++ ++ lgr %r3, %r2 ++ lgr %r2, %r6 ++ lg %r14, 18*8(%r2) ++ lg %r6, 20*8(%r2) ++ ++.hidden __sigsetjmp_tail ++ jg __sigsetjmp_tail +diff --git a/src/thread/s390x/__set_thread_area.s b/src/thread/s390x/__set_thread_area.s +new file mode 100644 +index 0000000..fd41291 +--- /dev/null ++++ b/src/thread/s390x/__set_thread_area.s +@@ -0,0 +1,9 @@ ++.text ++.global __set_thread_area ++.type __set_thread_area, %function ++__set_thread_area: ++ sar %a1, %r2 ++ srlg %r2, %r2, 32 ++ sar %a0, %r2 ++ lghi %r2, 0 ++ br %r14 +diff --git a/src/thread/s390x/__tls_get_offset.s b/src/thread/s390x/__tls_get_offset.s +new file mode 100644 +index 0000000..8ee92de +--- /dev/null ++++ b/src/thread/s390x/__tls_get_offset.s +@@ -0,0 +1,17 @@ ++ .global __tls_get_offset ++ .type __tls_get_offset,%function ++__tls_get_offset: ++ stmg %r14, %r15, 112(%r15) ++ aghi %r15, -160 ++ ++ la %r2, 0(%r2, %r12) ++ brasl %r14, __tls_get_addr ++ ++ ear %r1, %a0 ++ sllg %r1, %r1, 32 ++ ear %r1, %a1 ++ ++ sgr %r2, %r1 ++ ++ lmg %r14, %r15, 272(%r15) ++ br %r14 +diff --git a/src/thread/s390x/__unmapself.s b/src/thread/s390x/__unmapself.s +new file mode 100644 +index 0000000..48b312c +--- /dev/null ++++ b/src/thread/s390x/__unmapself.s +@@ -0,0 +1,6 @@ ++.text ++.global __unmapself ++.type __unmapself, @function ++__unmapself: ++ svc 91 # SYS_munmap ++ svc 1 # SYS_exit +diff --git a/src/thread/s390x/clone.s b/src/thread/s390x/clone.s +new file mode 100644 +index 0000000..3e08c21 +--- /dev/null ++++ b/src/thread/s390x/clone.s +@@ -0,0 +1,47 @@ ++.text ++.global __clone ++.type __clone, %function ++__clone: ++ # int clone( ++ # fn, a = r2 ++ # stack, b = r3 ++ # flags, c = r4 ++ # arg, d = r5 ++ # ptid, e = r6 ++ # tls, f = *(r15+160) ++ # ctid) g = *(r15+168) ++ # ++ # pseudo C code: ++ # tid = syscall(SYS_clone,b,c,e,g,f); ++ # if (!tid) syscall(SYS_exit, a(d)); ++ # return tid; ++ ++ # create initial stack frame for new thread ++ nill %r3, 0xfff8 ++ aghi %r3, -160 ++ lghi %r0, 0 ++ stg %r0, 0(%r3) ++ ++ # save fn and arg to child stack ++ stg %r2, 8(%r3) ++ stg %r5, 16(%r3) ++ ++ # shuffle args into correct registers and call SYS_clone ++ lgr %r2, %r3 ++ lgr %r3, %r4 ++ lgr %r4, %r6 ++ lg %r5, 168(%r15) ++ lg %r6, 160(%r15) ++ svc 120 ++ ++ # if error or if we're the parent, return ++ ltgr %r2, %r2 ++ bnzr %r14 ++ ++ # we're the child. call fn(arg) ++ lg %r1, 8(%r15) ++ lg %r2, 16(%r15) ++ basr %r14, %r1 ++ ++ # call SYS_exit. exit code is already in r2 from fn return value ++ svc 1 +diff --git a/src/thread/s390x/syscall_cp.s b/src/thread/s390x/syscall_cp.s +new file mode 100644 +index 0000000..c1da40d +--- /dev/null ++++ b/src/thread/s390x/syscall_cp.s +@@ -0,0 +1,32 @@ ++ .global __cp_begin ++ .hidden __cp_begin ++ .global __cp_end ++ .hidden __cp_end ++ .global __cp_cancel ++ .hidden __cp_cancel ++ .hidden __cancel ++ .global __syscall_cp_asm ++ .hidden __syscall_cp_asm ++ .text ++ .type __syscall_cp_asm,%function ++__syscall_cp_asm: ++__cp_begin: ++ icm %r2, 15, 0(%r2) ++ jne __cp_cancel ++ ++ stg %r7, 56(%r15) ++ lgr %r1, %r3 ++ lgr %r2, %r4 ++ lgr %r3, %r5 ++ lgr %r4, %r6 ++ lg %r5, 160(%r15) ++ lg %r6, 168(%r15) ++ lg %r7, 176(%r15) ++ svc 0 ++ ++__cp_end: ++ lg %r7, 56(%r15) ++ br %r14 ++ ++__cp_cancel: ++ jg __cancel +-- +2.10.2 + diff --git a/main/musl/APKBUILD b/main/musl/APKBUILD index 2e4632c..a62a3aa 100644 --- a/main/musl/APKBUILD +++ b/main/musl/APKBUILD @@ -41,7 +41,9 @@ source="http://www.musl-libc.org/releases/musl-$pkgver.tar.gz 0024-fix-strtod-int-optimization-in-non-nearest-rounding-.patch 0025-fix-minor-problem-in-previous-strtod-non-nearest-rou.patch 1001-add-support-for-pthread_-get-set-attr_default_np-GNU.patch + 1002-add-musl-s390x-port.patch + ldconfig __stack_chk_fail_local.c getconf.c @@ -64,8 +66,10 @@ install_sysroot_headers() { x86) ARCH="i386" ;; x86_64) ARCH="x86_64" ;; mips*) ARCH="mips" ;; + s390*) ARCH="s390x" ;; esac make ARCH="$ARCH" prefix=/usr DESTDIR="${CBUILDROOT}" install-headers || return 1 + } build() { @@ -142,6 +146,7 @@ compat() { x86) _ld="ld-linux.so.2" ;; x86_64) _ld="ld-linux-x86-64.so.2" ;; mips*) _ld="ld.so.1" ;; + s390*) _ld="ld-musl-s390x.so.1" ;; esac mkdir -p "$subpkgdir"/lib @@ -181,6 +186,7 @@ df48f35ff1e8084b5b01223917a11c32 0020-fix-float-formatting-of-some-exact-halfwa e9ef5ab7879cc113895d37783b217a70 0024-fix-strtod-int-optimization-in-non-nearest-rounding-.patch 2019fe5ed6214ff647d499fcd00fdb66 0025-fix-minor-problem-in-previous-strtod-non-nearest-rou.patch 62806d6be9fa3aedc99831d948abca65 1001-add-support-for-pthread_-get-set-attr_default_np-GNU.patch +5d9ead423ad8e33c5a112b0a95069b7d 1002-add-musl-s390x-port.patch 830d01f7821b978df770b06db3790921 ldconfig 0df687757221bbb0fc1aa67f1bd646f9 __stack_chk_fail_local.c 57ef2c63b9ec6a2041694ace97d4ffa2 getconf.c @@ -215,6 +221,7 @@ a85b33f81034e3d801f2bdee5bc5ed85226dce49a652df59e436a45ed35a4701 0019-add-pthre 8e074fa0f9434a8818951a48df08510b8c10c44ea9732a919f893476618a576d 0024-fix-strtod-int-optimization-in-non-nearest-rounding-.patch 301c1a16a84ec4c071e8a61360e3d3a21eb71cfcda581448938c7f3c40e11c85 0025-fix-minor-problem-in-previous-strtod-non-nearest-rou.patch 0403509c71580be517867be56b984359c3e7c413aba3f5b7f5b29d52561be328 1001-add-support-for-pthread_-get-set-attr_default_np-GNU.patch +67aafb0dcfbe0d7d9b49fd8e2e4bc06a855e3537db30529dd5eaa5eb6e2cf513 1002-add-musl-s390x-port.patch b4a2c06db38742e8c42c3c9838b285a7d8cdac6c091ff3df5ff9a15f1e41b9c7 ldconfig 299a7d75a09de3e2e11e7fb4acc3182e4a14e868093d2f30938fce9bfcff13da __stack_chk_fail_local.c d87d0cbb3690ae2c5d8cc218349fd8278b93855dd625deaf7ae50e320aad247c getconf.c @@ -249,6 +256,7 @@ fe86988734ce3817182c25023ed2739c67f3d4c226570c1162713ea5849112cb98b6f9b778ecedaf 3df8546a37467b716509bc0bbccef47aaf431e861442267aba0c08e19980d411f515d6a9c09c86b055dc709e83bcfab5f8bbfcb34d5c4b62e201a555839ff1fb 0024-fix-strtod-int-optimization-in-non-nearest-rounding-.patch cc15bb90009ae546f3de75457fef6ea8bdccee2bacae9a1c3860a18120cbd610f2f1d4a358a41da25b7d16f3ae03fe9b40b235c9028af5319dc1bcc28d3a956f 0025-fix-minor-problem-in-previous-strtod-non-nearest-rou.patch dc15dcb71e576f42268721c1caa036d91f3f67ab628a8527cd80d5689acea326b27e73013c02383b432027bed4c68c2cba75020088b760fae64d1680febf7a7d 1001-add-support-for-pthread_-get-set-attr_default_np-GNU.patch +6d898ee52cdde6a80989b20b86435c54691803472b1ececc716758228e664f7aa49b901cff98b80bef4110400b3e3665493ffce9d73e5f8a33c06a3f9c4ab767 1002-add-musl-s390x-port.patch 8d3a2d5315fc56fee7da9abb8b89bb38c6046c33d154c10d168fb35bfde6b0cf9f13042a3bceee34daf091bc409d699223735dcf19f382eeee1f6be34154f26f ldconfig 062bb49fa54839010acd4af113e20f7263dde1c8a2ca359b5fb2661ef9ed9d84a0f7c3bc10c25dcfa10bb3c5a4874588dff636ac43d5dbb3d748d75400756d0b __stack_chk_fail_local.c 0d80f37b34a35e3d14b012257c50862dfeb9d2c81139ea2dfa101d981d093b009b9fa450ba27a708ac59377a48626971dfc58e20a3799084a65777a0c32cbc7d getconf.c -- 2.10.2 --MP_/GRt=k0LD0+b8X_6TP/toA/K Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0006-main-libressl-disable-asm-building-s390x.patch >From f5b9417c196ffcf172bf906b7b36312de6783b88 Mon Sep 17 00:00:00 2001 From: "Tuan M. Hoang" Date: Mon, 21 Nov 2016 07:04:14 +0700 Subject: [PATCH] main/libressl: disable asm building s390x --- main/libressl/APKBUILD | 1 + 1 file changed, 1 insertion(+) diff --git a/main/libressl/APKBUILD b/main/libressl/APKBUILD index 5c66956..9b51901 100644 --- a/main/libressl/APKBUILD +++ b/main/libressl/APKBUILD @@ -30,6 +30,7 @@ build() { --sysconfdir=/etc \ --mandir=/usr/share/man \ --localstatedir=/var \ + --disable-asm \ || return 1 make || return 1 } -- 2.10.2 --MP_/GRt=k0LD0+b8X_6TP/toA/K Content-Type: text/x-patch Content-Transfer-Encoding: 7bit Content-Disposition: attachment; filename=0007-scripts-bootstrap.sh-add-s390x-support.patch >From ba894aefe675f7ac46a2b3bf47d515a68fb79f48 Mon Sep 17 00:00:00 2001 From: "Tuan M. Hoang" Date: Mon, 21 Nov 2016 06:55:35 +0700 Subject: [PATCH] scripts/bootstrap.sh: add s390x support --- scripts/bootstrap.sh | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/scripts/bootstrap.sh b/scripts/bootstrap.sh index 5a797fa..78c43c2 100755 --- a/scripts/bootstrap.sh +++ b/scripts/bootstrap.sh @@ -9,7 +9,7 @@ KERNEL_PKG="linux-firmware linux-vanilla" # get abuild configurables [ -e /usr/share/abuild/functions.sh ] || (echo "abuild not found" ; exit 1) CBUILDROOT="$(CTARGET=$TARGET_ARCH . /usr/share/abuild/functions.sh ; echo $CBUILDROOT)" -. /usr/share/abuild/functions.sh +CTARGET=$TARGET_ARCH . /usr/share/abuild/functions.sh [ -z "$CBUILD_ARCH" ] && die "abuild is too old (use git snapshot from cross-build branch)" # deduce aports directory @@ -74,6 +74,10 @@ create_cross_compiler() { apk info --quiet --installed --root "$CBUILDROOT" musl-dev || \ ${SUDO_APK} --root "$CBUILDROOT" add --repository "$REPODEST/main" musl-dev \ || return 1 + # libc6-compat (musl-dev's dependency) package overrides musl package's files which leads to problem 1a) + # in http://lists.alpinelinux.org/alpine-devel/5425.html + # this line reinstall musl package's files + ${SUDO_APK} --root "$CBUILDROOT" fix --repository "$REPODEST/main" musl CTARGET=$TARGET_ARCH APKBUILD=$(apkbuildname gcc) abuild -r || return 1 ${SUDO_APK} add --repository "$REPODEST/main" gcc-gnat gcc-$TARGET_ARCH g++-$TARGET_ARCH gcc-gnat-$TARGET_ARCH \ || return 1 @@ -116,6 +120,8 @@ cross_compile_base() { # target libraries rebuilt, force upgrade [ "$(apk upgrade --root "$CBUILDROOT" --repository "$REPODEST/main" --available --simulate | wc -l)" -gt 1 ] && ${SUDO_APK} upgrade --root "$CBUILDROOT" --repository "$REPODEST/main" --available + # again, need to fix/reinstall musl + ${SUDO_APK} --root "$CBUILDROOT" fix --repository "$REPODEST/main" musl ;; esac done -- 2.10.2 --MP_/GRt=k0LD0+b8X_6TP/toA/K-- --- Unsubscribe: alpine-devel+unsubscribe@lists.alpinelinux.org Help: alpine-devel+help@lists.alpinelinux.org ---