This is the mail archive of the libc-alpha@sourceware.org mailing list for the glibc project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [PATCH] Remove obsolete, never-implemented XSI STREAMS declarations


On 3/14/19 8:05 AM, Florian Weimer wrote:
> * Carlos O'Donell:
> 
>> Reviewed-by: Carlos O'Donell <carlos@rehdat.com>
> 
> My pre-push testing revealed that my previous testing had been
> insufficient, and I had to make the changes below.
> 
> (Hurd does not have any other GLIBC_2.30 reference, which is why had to
> add the section to posix/Versions.)
> 
> Does your Reviewed-by: still stand?

Yes.

Reviewed-by: Carlos O'Donell <carlos@redhat.com>

> Thanks,
> Florian
> 
> diff --git a/ChangeLog b/ChangeLog
> index cf62a1a1c8..1688c47781 100644
> --- a/ChangeLog
> +++ b/ChangeLog
> @@ -1,4 +1,4 @@
> -2019-02-26  Florian Weimer  <fweimer@redhat.com>
> +2019-03-14  Florian Weimer  <fweimer@redhat.com>
>  
>  	Remove obsolete, never-implemented XSI STREAMS declarations.
>  	* manual/terminal.texi (Allocation): Remove portability note and
> @@ -13,6 +13,9 @@
>  	(conformtest-headers-POSIX2008): Likewise.
>  	* posix/compat-streams.c: New file.
>  	* posix/Makefile (routines): Add it.
> +	* posix/Versions (GLIBC_2.1): Add fattach, fdetach, getmsg,
> +	getpmsg, isastream, putmsg, putpmsg.
> +	(GLIBC_2.30): New section.

I'm *so* sorry, I thought about this and didn't mention it in my earlier
review.

* If GLIBC_2.30 isn't defined in any versions file then -Wundef will
  cause it to fail (because it's not in abi-versions.h for use with
  the compat reference. So I figured that you must have worked around this
  in some other way, but it seems like you found this failure in Hurd
  with a -Wundef failure, so that's working as expected. We've seen this
  kind of problem before and it was the impetus for the -Wundef changes.

* The other problem here is that you removed the version node for the
  existing compat symbols, and so they would probably not be exported.
  Sounds like you got the "not exported" case and got ABI testsuite
  failures.

I'm glad that the infrastructure caught all of this.

>  	* bits/stropts.h: Remove file.
>  	* bits/xtitypes.h: Likewise.
>  	* conform/data/stropts.h-data: Likewise.
> diff --git a/posix/Versions b/posix/Versions
> index ad693ae9a7..7d06a6d0c0 100644
> --- a/posix/Versions
> +++ b/posix/Versions
> @@ -80,6 +80,10 @@ libc {
>      # w*
>      waitid; wordexp; wordfree;
>    }
> +  GLIBC_2.1 {
> +    # Compat symbols for the obsolete, unimplemented XSI streams extension.
> +    fattach; fdetach; getmsg; getpmsg; isastream; putmsg; putpmsg;
> +  }

OK. Required for baseline for these symbols.

>    GLIBC_2.1.2 {
>      # functions used in other libraries
>      __vfork;
> @@ -141,6 +145,8 @@ libc {
>      posix_spawn_file_actions_addchdir_np;
>      posix_spawn_file_actions_addfchdir_np;
>    }
> +  GLIBC_2.30 {
> +  }

OK. Required for compat symbols.

>    GLIBC_PRIVATE {
>      __libc_fork; __libc_pread; __libc_pwrite;
>      __nanosleep_nocancel; __pause_nocancel;
> 

-- 
Cheers,
Carlos.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]