public inbox for libc-alpha@sourceware.org
 help / color / mirror / Atom feed
From: Adhemerval Zanella <adhemerval.zanella@linaro.org>
To: libc-alpha@sourceware.org,
	Tulio Magno Quites Machado Filho <tuliom@linux.ibm.com>,
	Florian Weimer <fweimer@redhat.com>
Subject: Re: [PATCH] Fix building tst-socket-timestamp-compat on older Linux
Date: Mon, 14 Feb 2022 10:12:06 -0300	[thread overview]
Message-ID: <91ee1a2a-d432-9fce-4030-c5063e134c94@linaro.org> (raw)
In-Reply-To: <66ae3a9f-0002-2942-d100-db184fca9ab9@linaro.org>



On 14/02/2022 10:08, Adhemerval Zanella wrote:
> 
> 
> On 11/02/2022 18:40, Florian Weimer via Libc-alpha wrote:
>> * Tulio Magno Quites Machado Filho:
>>
>>> Florian Weimer via Libc-alpha <libc-alpha@sourceware.org> writes:
>>>
>>>> * Tulio Magno Quites Machado Filho via Libc-alpha:
>>>>
>>>>> diff --git a/sysdeps/unix/sysv/linux/tst-socket-timestamp-compat.c b/sysdeps/unix/sysv/linux/tst-socket-timestamp-compat.c
>>>>> index 0ff1a214e6..68b0a0e412 100644
>>>>> --- a/sysdeps/unix/sysv/linux/tst-socket-timestamp-compat.c
>>>>> +++ b/sysdeps/unix/sysv/linux/tst-socket-timestamp-compat.c
>>>>> @@ -23,6 +23,23 @@
>>>>>  #include <support/xunistd.h>
>>>>>  #include <stdbool.h>
>>>>>  
>>>>> +/* The following macros are only available on ABIs that support 32 bit time_t.
>>>>> +   This test has a runtime check to guarantee it runs only on these ABIs.
>>>>> +   However, we need to create fake values to guarantee this test is built
>>>>> +   for all the ABIs.  */
>>>>
>>>> Isn't this related to the kernel header version, and not just time32
>>>> support?
>>>
>>> The runtime test does depend on the kernel header version because it depends
>>> on the time_t size.
>>> However, the definition of these macros depends only on the value of
>>> __TIMESIZE, which doesn't depend on the kernel header [1].
>>>
>>> [1] https://sourceware.org/git/?p=glibc.git;a=blob;f=sysdeps/unix/sysv/linux/powerpc/bits/socket-constants.h;hb=HEAD#l50
>>
>> What I meant is this: I see the same build failure on aarch64 with our
>> 4.18-derived headers, but not with our 5.14-derived headers.  This is on
>> the same architecture, so it can't be glibc's time32 support state.
> 
> There are two issue in fact, one is that socket-constants.h is only included
> for !__USE_MISC, which is then disable for _DEFAULT_SOURCE (enabled with
> _GNU_SOURCE).  The another issue is socket-constants.h only defines
> the *_OLD and *_NEW variant in some cases, different than kernel header.
> 
> I think we should always include socket-constants.h, only define the values
> if there are not already defined by the kernel headers, and always define
> the *_OLD and *_NEW constants.  Something like the below (it requires to
> adapt to other arch-specific socket-constants.h as well).
> 

Another way is to move the test to a internal one and use the values
on socket-constants-time64.h instead.

      reply	other threads:[~2022-02-14 13:12 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2022-02-11 19:16 Tulio Magno Quites Machado Filho
2022-02-11 19:29 ` Florian Weimer
2022-02-11 21:25   ` Tulio Magno Quites Machado Filho
2022-02-11 21:40     ` Florian Weimer
2022-02-14 13:08       ` Adhemerval Zanella
2022-02-14 13:12         ` Adhemerval Zanella [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=91ee1a2a-d432-9fce-4030-c5063e134c94@linaro.org \
    --to=adhemerval.zanella@linaro.org \
    --cc=fweimer@redhat.com \
    --cc=libc-alpha@sourceware.org \
    --cc=tuliom@linux.ibm.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).