All of lore.kernel.org
 help / color / mirror / Atom feed
From: Vineet.Gupta1@synopsys.com (Vineet Gupta)
To: linux-snps-arc@lists.infradead.org
Subject: [RFC 4/6] ARC: Initial port to glibc
Date: Tue, 27 Jun 2017 18:51:43 +0300	[thread overview]
Message-ID: <0cd32bdd-5ec4-0fb6-8cf8-fd658596e790@synopsys.com> (raw)
In-Reply-To: <alpine.DEB.2.20.1706271147470.17677@digraph.polyomino.org.uk>

On 06/27/2017 02:56 PM, Joseph Myers wrote:
> On Tue, 27 Jun 2017, Vineet Gupta wrote:
> 
>> Signed-off-by: Cupertino Miranda <cmiranda at synopsys.com>
>> Signed-off-by: Vineet Gupta <vgupta at synopsys.com>
> 
> We need ChangeLog entries and copyright assignments, but don't use
> Signed-off-by.

OK !

>> diff --git a/.gitignore b/.gitignore
>> index 07d4a129e5dc..969dabc873d6 100644
>> --- a/.gitignore
>> +++ b/.gitignore
>> @@ -6,6 +6,7 @@
>>   *.bz2
>>   *.rej
>>   *.orig
>> +*.sw*
>>   =*
>>   TAGS
>>   TODO
> 
> I don't think this belongs here.  If it does you'll need to explain
> further.

Right - that was a local change which seeped out. Now removed.

>> diff --git a/sysdeps/arc/Makefile b/sysdeps/arc/Makefile
>> new file mode 100644
>> index 000000000000..b43ae0d0dedf
>> --- /dev/null
>> +++ b/sysdeps/arc/Makefile
>> @@ -0,0 +1,26 @@
>> +# Copyright (C) 1993-2015 Free Software Foundation, Inc.
> 
> All new files should have a descriptive comment before the copyright
> notice.  All copyright notices should use <year>-2017 as dates.

OK !

>> diff --git a/sysdeps/arc/Versions b/sysdeps/arc/Versions
>> new file mode 100644
>> index 000000000000..54ac5e7d1b5f
>> --- /dev/null
>> +++ b/sysdeps/arc/Versions
>> @@ -0,0 +1,13 @@
>> +libc {
>> +  GLIBC_2.24 {
> 
> As a new port, of course use GLIBC_2.26 for minimum symbol version (or
> GLIBC_2.27 if that's when it gets in, etc.), and so for any port-specific
> symbols.

Done !

>> diff --git a/sysdeps/unix/sysv/linux/arc/Versions b/sysdeps/unix/sysv/linux/arc/Versions
>> new file mode 100644
>> index 000000000000..e42c85f57594
>> --- /dev/null
>> +++ b/sysdeps/unix/sysv/linux/arc/Versions
>> @@ -0,0 +1,6 @@
>> +libc {
>> +  GLIBC_2.21 {
>> +    _flush_cache;
>> +    cacheflush;
>> +  }
> 
> Same comment on symbol versions applies.

Done !

> 
>> +#define __ASSUME_ACCEPT4_SYSCALL        1
>> +#define __ASSUME_RECVMMSG_SYSCALL       1
>> +#define __ASSUME_SENDMMSG_SYSCALL       1
> 
> This is the default, so you shouldn't need your kernel-features.h file.

Now removed.

> 
>> diff --git a/sysdeps/unix/sysv/linux/arc/ld.abilist b/sysdeps/unix/sysv/linux/arc/ld.abilist
>> new file mode 100644
>> index 000000000000..6001f2e98402
>> --- /dev/null
>> +++ b/sysdeps/unix/sysv/linux/arc/ld.abilist
>> @@ -0,0 +1,12 @@
>> +GLIBC_2.24
>> + GLIBC_2.24 A
>> + __libc_memalign F
>> + __libc_stack_end D 0x4
>> + __stack_chk_guard D 0x4
>> + __tls_get_addr F
>> + _dl_mcount F
>> + _r_debug D 0x14
>> + calloc F
>> + free F
>> + malloc F
>> + realloc F
> 
> These ABI lists are in the old format.  You need to regenerate them anyway
> for the increased minimum symbol version.

OK !

> 
>> diff --git a/sysdeps/unix/sysv/linux/arc/shlib-versions b/sysdeps/unix/sysv/linux/arc/shlib-versions
>> new file mode 100644
>> index 000000000000..c4d5d029812d
>> --- /dev/null
>> +++ b/sysdeps/unix/sysv/linux/arc/shlib-versions
>> @@ -0,0 +1,2 @@
>> +DEFAULT                 GLIBC_2.21
>> +ld=ld-linux.so.2
> 
> Should be 2.26 (or later).  Consider using an architecture-specific
> dynamic linker name as various other architectures do.

OK ! FWIW, this also ties into gcc defined GLIBC_DYNAMIC_LINKER which needs a 
pairing change as well.

> 
>> diff --git a/sysdeps/unix/sysv/linux/arc/sys/ucontext.h b/sysdeps/unix/sysv/linux/arc/sys/ucontext.h
>> new file mode 100644
>> index 000000000000..37f7f9224853
>> --- /dev/null
>> +++ b/sysdeps/unix/sysv/linux/arc/sys/ucontext.h
>> @@ -0,0 +1,40 @@

...

>> +
>> +#ifndef _SYS_UCONTEXT_H
>> +#define _SYS_UCONTEXT_H	1
>> +
>> +#include <features.h>
>> +#include <signal.h>
>> +#include <bits/sigcontext.h>
> 
> I'd expect includes of bits/types/sigset_t.h and bits/types/stack_t.h like
> other versions, but not of signal.h.

Yeah I see that you recently did sweeping changes to same effect. Noted and updated.

> 
>> +typedef struct sigcontext mcontext_t;
> 
> You can avoid this problematic definition for a new architecture, even
> while we're still discussing eliminating it for existing architectures.

So just use struct sigcontext as data type for uc_mcontext ?

> 
>> +/* Userlevel context.  */
>> +typedef struct ucontext
>> +  {
>> +    unsigned long uc_flags;
>> +    struct ucontext *uc_link;
> 
> This is now struct ucontext_t.

Ah I see this was done yesterday on up/master - ok will do !

Thx for taking a quick first pass at the code and providing the comments.

-Vineet

  reply	other threads:[~2017-06-27 15:51 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-27  8:00 [RFC 0/6] glibc port to ARC architecture Vineet Gupta
2017-06-27  8:00 ` [RFC 1/6] upstream: comment update Vineet Gupta
2017-06-27  8:00 ` [RFC 2/6] ARC: Fixed inline asm contraints to gcc 6.x Vineet Gupta
2017-06-27 11:47   ` Joseph Myers
2017-06-27 16:40     ` Vineet Gupta
2017-06-27 16:53       ` Zack Weinberg
2017-06-27  8:00 ` [RFC 3/6] ARC: add definitions to elf/elf.h Vineet Gupta
2017-06-27  8:00 ` [RFC 4/6] ARC: Initial port to glibc Vineet Gupta
2017-06-27 11:29   ` Florian Weimer
2017-06-27 11:55     ` Vineet Gupta
2017-06-27 12:01       ` Florian Weimer
2017-06-27 12:03         ` Joseph Myers
2017-06-27 11:56   ` Joseph Myers
2017-06-27 15:51     ` Vineet Gupta [this message]
2017-06-27 15:55       ` Joseph Myers
2017-06-27 16:52         ` Vineet Gupta
2017-06-27 17:02           ` Joseph Myers
2017-06-27 19:32     ` Vineet Gupta
2017-06-27 19:56       ` Joseph Myers
2017-06-28  8:48     ` ucontect vs. ucontext_t (was Re: [RFC 4/6] ARC: Initial port to glibc) Vineet Gupta
2017-06-28  9:23       ` Szabolcs Nagy
2017-06-28  9:30       ` Joseph Myers
2017-06-28  9:42         ` Vineet Gupta
2017-06-29 15:22     ` [RFC 4/6] ARC: Initial port to glibc Vineet Gupta
2017-06-29 15:29       ` Joseph Myers
2017-11-06 20:19     ` Vineet Gupta
2017-11-06 22:26       ` Joseph Myers
2017-06-27  8:00 ` [RFC 5/6] ARC: Enable __start as entry point vs. canonical _start Vineet Gupta
2017-06-27  8:00 ` [RFC 6/6] ARC: Fix several testsuite failures related to unwinding Vineet Gupta
2017-06-27 11:31 ` [RFC 0/6] glibc port to ARC architecture Florian Weimer
2017-06-27 12:00   ` Joseph Myers
2017-11-06 22:51     ` Vineet Gupta
2017-11-06 23:08       ` Joseph Myers
2017-11-27 20:35     ` Vineet Gupta
2017-11-27 22:16       ` Joseph Myers
2017-12-08  0:31         ` Vineet Gupta
2017-12-08 11:15           ` Joseph Myers
2017-06-27 11:44 ` Joseph Myers
2017-06-27 13:15   ` Vineet Gupta

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=0cd32bdd-5ec4-0fb6-8cf8-fd658596e790@synopsys.com \
    --to=vineet.gupta1@synopsys.com \
    --cc=linux-snps-arc@lists.infradead.org \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.