From dc2c1433969d2486159020da27d5cd6c91b1c0b4 Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Sun, 9 Sep 2018 17:59:07 +0200 Subject: blacklist: unblock sbcl --- blacklist | 1 - 1 file changed, 1 deletion(-) diff --git a/blacklist b/blacklist index 12f85848..84b8e26a 100644 --- a/blacklist +++ b/blacklist @@ -27,7 +27,6 @@ i686 qcef # contains CEF binaries (not current ones) for 64-bit and MIPS only, n i686 riscv64-linux-gnu-gcc # needs manual bootstrap - is it worth the effort? i686 riscv64-linux-gnu-glibc # see riscv64-linux-gnu-gcc i686 rubinius # Support for non-64bit platforms was deprecated 1 Jun 2016 and has now been removed. If non-64bit support is a critical feature for your application, please email contact@rubinius.com -i686 sbcl # blocks again i686 skia-sharp # does not provide a bin/gn for 32-bit Linux, see FS32#8 i686 skia-sharp58 # does not provide a bin/gn for 32-bit Linux, see FS32#8 i686 skia-sharp60 # does not provide a bin/gn for 32-bit Linux, see FS32#8 -- cgit v1.2.3-70-g09d2 From 513b63201d667366feb69ad7de2ffcb373f2f515 Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Sun, 9 Sep 2018 18:09:08 +0200 Subject: extra/sbcl: introduce the necessary patch(es) --- extra/sbcl/PKGBUILD | 7 +++ extra/sbcl/x86-linux-os.patch | 112 ++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 119 insertions(+) create mode 100644 extra/sbcl/PKGBUILD create mode 100644 extra/sbcl/x86-linux-os.patch diff --git a/extra/sbcl/PKGBUILD b/extra/sbcl/PKGBUILD new file mode 100644 index 00000000..c2feda43 --- /dev/null +++ b/extra/sbcl/PKGBUILD @@ -0,0 +1,7 @@ +source+=('x86-linux-os.patch') +sha256sum+=('3ba738c461a8836171b424b5881ad5aaa63071f54bc5d207e72cae4c1be3738a') + +prepare() { + cd "${srcdir}/${pkgname}-${pkgver}" + patch -Np1 -i ../x86-linux-os.patch +} diff --git a/extra/sbcl/x86-linux-os.patch b/extra/sbcl/x86-linux-os.patch new file mode 100644 index 00000000..c1fd12b7 --- /dev/null +++ b/extra/sbcl/x86-linux-os.patch @@ -0,0 +1,112 @@ +--- sbcl-1.4.10/src/runtime/x86-linux-os.c.orig 2018-09-07 03:07:10.927918139 +0000 ++++ sbcl-1.4.10/src/runtime/x86-linux-os.c 2018-09-07 03:05:10.471896471 +0000 +@@ -45,73 +45,43 @@ + #include + #include "thread.h" /* dynamic_values_bytes */ + +-#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,0) +-#define user_desc modify_ldt_ldt_s +-#endif +- +-static inline int modify_ldt(int func, void *ptr, unsigned long bytecount) ++static inline int set_thread_area(struct user_desc *u_info) + { +- return syscall(SYS_modify_ldt, func, ptr, bytecount); ++ return syscall(SYS_set_thread_area, u_info); + } + + #include "validate.h" + size_t os_vm_page_size; + +-u32 local_ldt_copy[LDT_ENTRIES*LDT_ENTRY_SIZE/sizeof(u32)]; +- +-/* This is never actually called, but it's great for calling from gdb when +- * users have thread-related problems that maintainers can't duplicate */ +- +-void debug_get_ldt() +-{ +- int n=modify_ldt (0, local_ldt_copy, sizeof local_ldt_copy); +- printf("%d bytes in ldt: print/x local_ldt_copy\n", n); +-} +- +-#ifdef LISP_FEATURE_SB_THREAD +-pthread_mutex_t modify_ldt_lock = PTHREAD_MUTEX_INITIALIZER; +-#endif +- + int arch_os_thread_init(struct thread *thread) { + stack_t sigstack; + #ifdef LISP_FEATURE_SB_THREAD +- struct user_desc ldt_entry = { +- 1, 0, 0, /* index, address, length filled in later */ +- 1, MODIFY_LDT_CONTENTS_DATA, 0, 0, 0, 1 ++ struct user_desc desc = { ++ 0, (unsigned long) thread, dynamic_values_bytes, ++ 1, 0, 0, 1, 0, 1 + }; +- int n; +- thread_mutex_lock(&modify_ldt_lock); +- n=modify_ldt(0,local_ldt_copy,sizeof local_ldt_copy); +- /* get next free ldt entry */ +- +- if(n) { +- u32 *p; +- for(n=0,p=local_ldt_copy;*p;p+=LDT_ENTRY_SIZE/sizeof(u32)) +- n++; +- } +- ldt_entry.entry_number=n; +- ldt_entry.base_addr=(unsigned long) thread; +- ldt_entry.limit=dynamic_values_bytes; +- ldt_entry.limit_in_pages=0; +- if (modify_ldt (1, &ldt_entry, sizeof (ldt_entry)) != 0) { +- thread_mutex_unlock(&modify_ldt_lock); +- /* modify_ldt call failed: something magical is not happening */ ++ ++ static int entry_number = -1; ++ ++ desc.entry_number = entry_number; ++ ++ if (set_thread_area(&desc) != 0) { + return 0; + } ++ ++ entry_number = desc.entry_number; ++ + __asm__ __volatile__ ("movw %w0, %%fs" : : "q" +- ((n << 3) /* selector number */ +- + (1 << 2) /* TI set = LDT */ +- + 3)); /* privilege level */ +- thread->tls_cookie=n; +- pthread_mutex_unlock(&modify_ldt_lock); ++ ((entry_number << 3) + 3)); + +- if(n<0) return 0; ++ if(entry_number < 0) return 0; + #ifdef LISP_FEATURE_GCC_TLS + current_thread = thread; + #else + pthread_setspecific(specials,thread); + #endif + #endif ++ + #ifdef LISP_FEATURE_C_STACK_IS_CONTROL_STACK + /* Signal handlers are run on the control stack, so if it is exhausted + * we had better use an alternate stack for whatever signal tells us +@@ -136,17 +106,7 @@ + */ + + int arch_os_thread_cleanup(struct thread *thread) { +- struct user_desc ldt_entry = { +- 0, 0, 0, +- 0, MODIFY_LDT_CONTENTS_DATA, 0, 0, 0, 0 +- }; +- int result; +- +- ldt_entry.entry_number=thread->tls_cookie; +- thread_mutex_lock(&modify_ldt_lock); +- result = modify_ldt(1, &ldt_entry, sizeof (ldt_entry)); +- thread_mutex_unlock(&modify_ldt_lock); +- return result; ++ return 1; + } + + -- cgit v1.2.3-70-g09d2 From 1a2127a1079828e00a6c69d1c830a1484d6009e3 Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Sun, 9 Sep 2018 18:59:34 +0200 Subject: extra/sbcl: sums variable is plural --- extra/sbcl/PKGBUILD | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/extra/sbcl/PKGBUILD b/extra/sbcl/PKGBUILD index c2feda43..0034df83 100644 --- a/extra/sbcl/PKGBUILD +++ b/extra/sbcl/PKGBUILD @@ -1,5 +1,5 @@ source+=('x86-linux-os.patch') -sha256sum+=('3ba738c461a8836171b424b5881ad5aaa63071f54bc5d207e72cae4c1be3738a') +sha256sums+=('3ba738c461a8836171b424b5881ad5aaa63071f54bc5d207e72cae4c1be3738a') prepare() { cd "${srcdir}/${pkgname}-${pkgver}" -- cgit v1.2.3-70-g09d2 From ddeb3aeb99e07a75d2e3796d48d21d8bb756f7e3 Mon Sep 17 00:00:00 2001 From: Andreas Baumann Date: Sun, 9 Sep 2018 20:27:51 +0200 Subject: extra/firefox: another try to limit resources during linking, this time disabling rust LTO --- extra/firefox/PKGBUILD | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/extra/firefox/PKGBUILD b/extra/firefox/PKGBUILD index 8eba80f3..edbc3517 100644 --- a/extra/firefox/PKGBUILD +++ b/extra/firefox/PKGBUILD @@ -1,6 +1,7 @@ eval "$( declare -f build | \ sed ' - 2 a export LDFLAGS+=" -Wl,--no-keep-memory" + s/mach/mach -j1/g + /cd mozilla-unified/a sed -i "s/\\(cargo_rustc_flags += -C lto\\)/#\\1/" config/rules.mk ' )" -- cgit v1.2.3-70-g09d2 From 1f7d906ccbf7f1145939529efe2b38db1f31636b Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Mon, 10 Sep 2018 07:13:33 +0200 Subject: extra/linux-pae: 4.18.6 -> 4.18.7 --- extra/linux-pae/PKGBUILD | 6 +++--- extra/linux-pae/config | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/extra/linux-pae/PKGBUILD b/extra/linux-pae/PKGBUILD index 27d89ae1..62c65f1f 100644 --- a/extra/linux-pae/PKGBUILD +++ b/extra/linux-pae/PKGBUILD @@ -4,7 +4,7 @@ # Maintainer: Thomas Baechler pkgbase=linux-pae # Build stock -ARCH kernel -pkgver='4.18.6' +pkgver='4.18.7' _srcname=linux-${pkgver} pkgrel='1' arch=('i686') @@ -24,9 +24,9 @@ validpgpkeys=( 'ABAF11C65A2970B130ABE3C479BE3E4300411886' # Linus Torvalds '647F28654894E3BD457199BE38DBBDC86092693E' # Greg Kroah-Hartman ) -sha256sums=('05db97fd6891217af6d4203bdc442ef2af78d7902b6a8e9bd348682704c22894' +sha256sums=('f03b425e262a71e5079736706233a4e9afaf77c8462b552b4d6db2d33f5af731' 'SKIP' - 'af0060a53e75f3c6ca348a5ef8317a5908bb9d1d7ab2434ca9142d91309a0290' + '2675d556a3ab58a9ab24e220d6b495b14717ebd9070aea250278548cb1427e2b' 'ae2e95db94ef7176207c690224169594d49445e04249d2499e9d2fbc117a0b21' '75f99f5239e03238f88d1a834c50043ec32b1dc568f2cc291b07d04718483919' 'ad6344badc91ad0630caacde83f7f9b97276f80d26a20619a87952be65492c65' diff --git a/extra/linux-pae/config b/extra/linux-pae/config index 4fbfec7e..ad3ba813 100644 --- a/extra/linux-pae/config +++ b/extra/linux-pae/config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 4.18.6-1 Kernel Configuration +# Linux/x86 4.18.7-1 Kernel Configuration # # -- cgit v1.2.3-70-g09d2 From 1b7bec54d16f432116c8d2efa94b44fb7f29c53f Mon Sep 17 00:00:00 2001 From: Andreas Baumann Date: Mon, 10 Sep 2018 21:04:33 +0200 Subject: extra/firefox: reverted half a patch --- extra/firefox/PKGBUILD | 1 - 1 file changed, 1 deletion(-) diff --git a/extra/firefox/PKGBUILD b/extra/firefox/PKGBUILD index edbc3517..a0a94a98 100644 --- a/extra/firefox/PKGBUILD +++ b/extra/firefox/PKGBUILD @@ -1,7 +1,6 @@ eval "$( declare -f build | \ sed ' - s/mach/mach -j1/g /cd mozilla-unified/a sed -i "s/\\(cargo_rustc_flags += -C lto\\)/#\\1/" config/rules.mk ' )" -- cgit v1.2.3-70-g09d2 From fe76b5541129f11c869354c16f7dc2f4dc721264 Mon Sep 17 00:00:00 2001 From: Andreas Baumann Date: Tue, 11 Sep 2018 05:24:22 +0000 Subject: extra/thunderbird: same rust no-lto trick as for firefox --- extra/thunderbird/PKGBUILD | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/extra/thunderbird/PKGBUILD b/extra/thunderbird/PKGBUILD index 8eba80f3..edbc3517 100644 --- a/extra/thunderbird/PKGBUILD +++ b/extra/thunderbird/PKGBUILD @@ -1,6 +1,7 @@ eval "$( declare -f build | \ sed ' - 2 a export LDFLAGS+=" -Wl,--no-keep-memory" + s/mach/mach -j1/g + /cd mozilla-unified/a sed -i "s/\\(cargo_rustc_flags += -C lto\\)/#\\1/" config/rules.mk ' )" -- cgit v1.2.3-70-g09d2 From 424e272d46cba81e189537ed5343c5661f05e719 Mon Sep 17 00:00:00 2001 From: Andreas Baumann Date: Tue, 11 Sep 2018 05:25:09 +0000 Subject: community/firefox-developer-edition: same rust no-lto trick as for firefox --- community/firefox-developer-edition/PKGBUILD | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/community/firefox-developer-edition/PKGBUILD b/community/firefox-developer-edition/PKGBUILD index 8eba80f3..a0a94a98 100644 --- a/community/firefox-developer-edition/PKGBUILD +++ b/community/firefox-developer-edition/PKGBUILD @@ -1,6 +1,6 @@ eval "$( declare -f build | \ sed ' - 2 a export LDFLAGS+=" -Wl,--no-keep-memory" + /cd mozilla-unified/a sed -i "s/\\(cargo_rustc_flags += -C lto\\)/#\\1/" config/rules.mk ' )" -- cgit v1.2.3-70-g09d2 From 3132615c91388bb005ebeec220f4a081b18f598c Mon Sep 17 00:00:00 2001 From: Andreas Baumann Date: Tue, 11 Sep 2018 05:34:38 +0000 Subject: extra/thunderbird: no mach -j1 --- extra/thunderbird/PKGBUILD | 1 - 1 file changed, 1 deletion(-) diff --git a/extra/thunderbird/PKGBUILD b/extra/thunderbird/PKGBUILD index edbc3517..a0a94a98 100644 --- a/extra/thunderbird/PKGBUILD +++ b/extra/thunderbird/PKGBUILD @@ -1,7 +1,6 @@ eval "$( declare -f build | \ sed ' - s/mach/mach -j1/g /cd mozilla-unified/a sed -i "s/\\(cargo_rustc_flags += -C lto\\)/#\\1/" config/rules.mk ' )" -- cgit v1.2.3-70-g09d2 From e5acfcc84bbd5675ccea666b453a0e5b5645ea08 Mon Sep 17 00:00:00 2001 From: Erich Eckner Date: Tue, 11 Sep 2018 08:27:06 +0200 Subject: core/linux-lts: new config => new checksum --- core/linux-lts/PKGBUILD | 2 +- core/linux-lts/config | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/core/linux-lts/PKGBUILD b/core/linux-lts/PKGBUILD index 8c4d4da4..21b1a3d7 100644 --- a/core/linux-lts/PKGBUILD +++ b/core/linux-lts/PKGBUILD @@ -3,7 +3,7 @@ # fail if upstream's .config changes for ((i=0; i<${#sha256sums[@]}; i++)); do if [ "${sha256sums[${i}]}" = 'c645053c4525a1a70d5c10b52257ac136da7e9059b6a4a566a857a3d42046426' ]; then - sha256sums[${i}]='3a47c51abb24184683c6139ef7208e3fad70789c83bdec78483677256aa43b0a' + sha256sums[${i}]='902df9876c926bfb60157f8b15504d162be598d5a722ac415111e54addfb69e5' fi done diff --git a/core/linux-lts/config b/core/linux-lts/config index 14713fe7..4efd37e0 100644 --- a/core/linux-lts/config +++ b/core/linux-lts/config @@ -1,6 +1,6 @@ # # Automatically generated file; DO NOT EDIT. -# Linux/x86 4.14.65-1 Kernel Configuration +# Linux/x86 4.14.69-1 Kernel Configuration # # CONFIG_64BIT is not set CONFIG_X86_32=y @@ -291,6 +291,7 @@ CONFIG_HAVE_PERF_REGS=y CONFIG_HAVE_PERF_USER_STACK_DUMP=y CONFIG_HAVE_ARCH_JUMP_LABEL=y CONFIG_HAVE_RCU_TABLE_FREE=y +CONFIG_HAVE_RCU_TABLE_INVALIDATE=y CONFIG_ARCH_HAVE_NMI_SAFE_CMPXCHG=y CONFIG_HAVE_ALIGNED_STRUCT_PAGE=y CONFIG_HAVE_CMPXCHG_LOCAL=y -- cgit v1.2.3-70-g09d2