Re: Making spl7 just cli/sti?
Quoting Samuel Thibault (2014-12-14 02:44:08) > The attached patch fixes this by making spl.S use just cli/sti for spl7; > they can be emulated fine without any VMEXIT. This lowers the number of > PIC mask changes to a few hundreds or thousands only, and getting the > gnumach on kvm on kvm case way faster. Unfortunately this change breaks gnumach on xen: % xl create -c hurd [...] GKKK % xl dmesg (XEN) Pagetable walk from fff8: (XEN) L4[0x000] = a0b9b027 057e (XEN) L3[0x003] = a0b9c027 057d (XEN) L2[0x1ff] = (XEN) domain_crash_sync called from entry.S: fault at 82d08021fe4c compat_create_bounce_frame+0x62/0xde (XEN) Domain 30 (vcpu#0) crashed on cpu#1: (XEN) [ Xen-4.4.1 x86_64 debug=n Not tainted ] (XEN) CPU:1 (XEN) RIP:0009:[<80006768>] (XEN) RFLAGS: 00010286 EM: 1 CONTEXT: pv guest (XEN) rax: 0011 rbx: 80086db4 rcx: 043c (XEN) rdx: 0007 rsi: 004b rdi: 80039430 (XEN) rbp: 80086e54 rsp: r8: 80006314 (XEN) r9: 80086e54 r10: 82d08022d3d0 r11: 0286 (XEN) r12: 0952cd6ddd1c r13: 82d080300800 r14: 82d0802ea940 (XEN) r15: 8300a4434000 cr0: 8005003b cr4: 06f0 (XEN) cr3: 000105f16000 cr2: fffc (XEN) ds: 0011 es: 0011 fs: 0011 gs: 0011 ss: 0011 cs: 0009 (XEN) Guest stack trace from esp=: (XEN) Stack empty. Justus
Recent libc breaks Hurd builds
Hello, with the current libc from debian-ports (2.19-16~1) I see: gcc -std=gnu99 -fgnu89-inline -Wall -g -O3 -g -O2 -fstack-protector-strong -Wformat -Werror=format-security -I. -I../../libshouldbeinlibc -I.. -I../.. -I../include -I../../include -D_GNU_SOURCE -D_IO_MTSAFE_IO -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -DPACKAGE_NAME=\"GNU\ Hurd\" -DPACKAGE_TARNAME=\"hurd\" -DPACKAGE_VERSION=\"0.5\" -DPACKAGE_STRING=\"GNU\ Hurd\ 0.5\" -DPACKAGE_BUGREPORT=\"bug-hurd@gnu.org\" -DPACKAGE_URL=\"http://www.gnu.org/software/hurd/\"; -DHAVE_MIG_RETCODE=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_PARTED_PARTED_H=1 -DHAVE_LIBPARTED=1 -DHAVE_LIBUUID=1 -DHAVE_LIBDL=1 -DYYTEXT_POINTER=1 -DX11_PREFIX=\"/usr\" -DHAVE_DAEMON=1 -DHAVE_BLKID=1 -DHAVE_LIBREADLINE=1 -c -o timefmt.o ../../libshouldbeinlibc/timefmt.c In file included from /usr/include/i386-gnu/bits/stdio-lock.h:22:0, from /usr/include/libio.h:149, from /usr/include/stdio.h:74, from ../../libshouldbeinlibc/timefmt.c:21: /usr/include/i386-gnu/bits/libc-lock.h:257:34: error: unknown type name ‘pthread_mutex_t’ extern int __pthread_mutex_init (pthread_mutex_t *__mutex, ^ [...] Minimal test case: echo "#include " | gcc -D_IO_MTSAFE_IO -x c - Justus
Re: Recent libc breaks Hurd builds
On Sat, 2015-03-07 at 17:33 +0100, Justus Winter wrote: > Hello, > > with the current libc from debian-ports (2.19-16~1) I see: > > gcc -std=gnu99 -fgnu89-inline -Wall -g -O3 -g -O2 -fstack-protector-strong > -Wformat -Werror=format-security -I. -I../../libshouldbeinlibc -I.. -I../.. > -I../include -I../../include -D_GNU_SOURCE -D_IO_MTSAFE_IO > -D_FILE_OFFSET_BITS=64 -D_FORTIFY_SOURCE=2 -DPACKAGE_NAME=\"GNU\ Hurd\" > -DPACKAGE_TARNAME=\"hurd\" -DPACKAGE_VERSION=\"0.5\" -DPACKAGE_STRING=\"GNU\ > Hurd\ 0.5\" -DPACKAGE_BUGREPORT=\"bug-hurd@gnu.org\" > -DPACKAGE_URL=\"http://www.gnu.org/software/hurd/\"; -DHAVE_MIG_RETCODE=1 > -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 > -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 > -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DHAVE_PARTED_PARTED_H=1 > -DHAVE_LIBPARTED=1 -DHAVE_LIBUUID=1 -DHAVE_LIBDL=1 -DYYTEXT_POINTER=1 > -DX11_PREFIX=\"/usr\" -DHAVE_DAEMON=1 -DHAVE_BLKID=1 -DHAVE_LIBREADLINE=1 -c > -o timefmt.o ../../libshouldbeinlibc/timefmt.c > In file included from /usr/include/i386-gnu/bits/stdio-lock.h:22:0, > from /usr/include/libio.h:149, > from /usr/include/stdio.h:74, > from ../../libshouldbeinlibc/timefmt.c:21: > /usr/include/i386-gnu/bits/libc-lock.h:257:34: error: unknown type name > ‘pthread_mutex_t’ > extern int __pthread_mutex_init (pthread_mutex_t *__mutex, I see this too when building hurd. pthread/pthread-functions.h is missing. Should'nt that file be provided in libc0.3-dev?