bug-hurd
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Time for another round of releases


From: David Michael
Subject: Re: Time for another round of releases
Date: Sun, 2 Oct 2016 12:18:50 -0700

On Sun, Oct 2, 2016 at 10:53 AM, Samuel Thibault
<samuel.thibault@gnu.org> wrote:
> David Michael, on Sun 02 Oct 2016 10:22:12 -0700, wrote:
>> Add a GLIBC_2.22 { __mach_host_self_; } section to mach/Versions.
>
> Alright, I forgot to cherry-pick the upstream commit for this. Note
> however that in upstream, it got versioned to 2.23, so we are diverging
> here, distributions will have to handle this.

That's fine with me, but I don't know if Guix will have an issue with
this difference.  CCing Manolis and Ludovic so they are aware of it.

>> Commit a87bf9a8eab3af79798131b60c1f7f92f995df8c breaks static linking
>> (namely ext2fs.static) from missing pthread_setcancelstate.
>
> Ah? I don't understand how: this commit only makes libpthread use its
> own internal __pthread_setcancelstate symbol. A pthread_setcancelstate
> alias is still defined from pthread/pt-setcancelstate.c, how is it that
> you don't get it?

The following is the actual error when using that commit.  It looks
like pthread_setcancelstate is defined in libpthread2.a, and the
linking command includes -lpthread, which includes -lpthread2.
Changing error.c and pthread-functions.h doesn't seem correct since
there are many other instances of that throughout glibc.  I didn't get
much further into it than that yet.

/usr/i686-pc-gnu/sys-root/lib/libcrt.a(error.o): In function `__error':
(.text+0x26f): undefined reference to `pthread_setcancelstate'
/usr/i686-pc-gnu/sys-root/lib/libcrt.a(error.o): In function `__error':
(.text+0x2b4): undefined reference to `pthread_setcancelstate'
/usr/i686-pc-gnu/sys-root/lib/libcrt.a(error.o): In function `__error_at_line':
(.text+0x330): undefined reference to `pthread_setcancelstate'
/usr/i686-pc-gnu/sys-root/lib/libcrt.a(error.o): In function `__error_at_line':
(.text+0x38f): undefined reference to `pthread_setcancelstate'
collect2: error: ld returned 1 exit status
../Makeconf:347: recipe for target 'ext2fs.static' failed

>> The panic update patches produce -Wformat-security warnings--errors
>> with Fedora's CFLAGS.  Use a literal "%s" instead of a variable as the
>> format string.
>
> Could you be more precise?  A quick check didn't let me see where it was
> a problem.

This will make it build:

--- a/i386/i386at/biosmem.c
+++ b/i386/i386at/biosmem.c
@@ -35,7 +35,7 @@
 #define __init

 #define boot_memmove    memmove
-#define boot_panic      panic
+#define boot_panic(s)   panic("%s", s)
 #define boot_strlen     strlen

 #define BOOT_CGAMEM     phystokv(0xb8000)
@@ -216,7 +216,7 @@
     unsigned int i;

     if (start >= end) {
-        panic(biosmem_panic_inval_boot_data);
+        panic("%s", biosmem_panic_inval_boot_data);
     }

     assert(biosmem_nr_boot_data != 0);

Thanks.

David



reply via email to

[Prev in Thread] Current Thread [Next in Thread]