All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH libgpg-error] syscfg: Add ARC architecture
       [not found]               ` <87musdsoxl.fsf@wheatstone.g10code.de>
@ 2018-09-19 18:46                 ` Vineet Gupta
  2018-09-19 20:53                   ` Alexey Brodkin
  0 siblings, 1 reply; 3+ messages in thread
From: Vineet Gupta @ 2018-09-19 18:46 UTC (permalink / raw)
  To: linux-snps-arc

On 09/19/2018 04:44 AM, Werner Koch wrote:
> On Tue, 18 Sep 2018 21:34, Vineet.Gupta1 at synopsys.com said:
>
>> I'm not exactly clear what the question is ? What is specific in ABI related to
>> locks ?
> Libgpg-error abstracts the native lock interface and thus needs to get
> some information on the actual implementation.  It can very well be the
> case that the big-endian ABI is different from the little endian ABI.
> In particular the static initialization may be different; this is
> implemented in libgpg-error using a macro which may look like this
>
>   #define GPGRT_LOCK_INITIALIZER {1,{{167,171,170,50,0,0,0,0, \
>   0,0,0,0,0,0,0,0, \
>   0,0,0,0,0,0,0,0, \
>   0,0,0,0,0,0,0,0, \
>   0,0,0,0,0,0,0,0, \
>   0,0,0,0,0,0,0,0, \
>   0,0,0,0,0,0,0,0, \
>   0,0,0,0,0,0,0,0}}}
>
> This is an memory image and we can't make use of C data types because
> we don't know them.

Well BE will certainly be different than LE.
Back to the original discussion, was the question about glibc vs. uClibc pthread
ABI ? Since they are different / independent implementations (even if uClibc is
sort of copy over from glibc) we can't guarantee that these would the same so each
would need a specific initializer I guess.

-Vineet

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH libgpg-error] syscfg: Add ARC architecture
  2018-09-19 18:46                 ` [PATCH libgpg-error] syscfg: Add ARC architecture Vineet Gupta
@ 2018-09-19 20:53                   ` Alexey Brodkin
  2018-09-21 12:38                     ` Werner Koch
  0 siblings, 1 reply; 3+ messages in thread
From: Alexey Brodkin @ 2018-09-19 20:53 UTC (permalink / raw)
  To: linux-snps-arc

Hi Vineet, Werner,

On Wed, 2018-09-19@18:46 +0000, Vineet Gupta wrote:
> On 09/19/2018 04:44 AM, Werner Koch wrote:
> > On Tue, 18 Sep 2018 21:34, Vineet.Gupta1 at synopsys.com said:
> > 
> > > I'm not exactly clear what the question is ? What is specific in ABI related to
> > > locks ?
> > 
> > Libgpg-error abstracts the native lock interface and thus needs to get
> > some information on the actual implementation.  It can very well be the
> > case that the big-endian ABI is different from the little endian ABI.
> > In particular the static initialization may be different; this is
> > implemented in libgpg-error using a macro which may look like this
> > 
> >   #define GPGRT_LOCK_INITIALIZER {1,{{167,171,170,50,0,0,0,0, \
> >   0,0,0,0,0,0,0,0, \
> >   0,0,0,0,0,0,0,0, \
> >   0,0,0,0,0,0,0,0, \
> >   0,0,0,0,0,0,0,0, \
> >   0,0,0,0,0,0,0,0, \
> >   0,0,0,0,0,0,0,0, \
> >   0,0,0,0,0,0,0,0}}}
> > 
> > This is an memory image and we can't make use of C data types because
> > we don't know them.
> 
> Well BE will certainly be different than LE.
> Back to the original discussion, was the question about glibc vs. uClibc pthread
> ABI ? Since they are different / independent implementations (even if uClibc is
> sort of copy over from glibc) we can't guarantee that these would the same so each
> would need a specific initializer I guess.

That's what I've got for glibc case:
-------------------------->8-------------------------
## lock-obj-pub.arc-buildroot-linux-gnu.h
## File created by gen-posix-lock-obj - DO NOT EDIT
## To be included by mkheader into gpg-error.h

typedef struct
{
  long _vers;
  union {
    volatile char _priv[24];
    long _x_align;
    long *_xp_align;
  } u;
} gpgrt_lock_t;

#define GPGRT_LOCK_INITIALIZER {1,{{0,0,0,0,0,0,0,0, \
                                    0,0,0,0,0,0,0,0, \
                                    0,0,0,0,0,0,0,0}}}
##
## Local Variables:
## mode: c
## buffer-read-only: t
## End:
##
-------------------------->8-------------------------

I'd say it looks similar to uClibc version which is below
as a reference:
-------------------------->8-------------------------
## lock-obj-pub.arc-buildroot-linux-uclibc.h
## File created by gen-posix-lock-obj - DO NOT EDIT
## To be included by mkheader into gpg-error.h

typedef struct
{
  long _vers;
  union {
    volatile char _priv[24];
    long _x_align;
    long *_xp_align;
  } u;
} gpgrt_lock_t;

#define GPGRT_LOCK_INITIALIZER {1,{{0,0,0,0,0,0,0,0, \
                                    0,0,0,0,0,0,0,0, \
                                    0,0,0,0,0,0,0,0}}}
##
## Local Variables:
## mode: c
## buffer-read-only: t
## End:
##
-------------------------->8-------------------------

-Alexey

^ permalink raw reply	[flat|nested] 3+ messages in thread

* [PATCH libgpg-error] syscfg: Add ARC architecture
  2018-09-19 20:53                   ` Alexey Brodkin
@ 2018-09-21 12:38                     ` Werner Koch
  0 siblings, 0 replies; 3+ messages in thread
From: Werner Koch @ 2018-09-21 12:38 UTC (permalink / raw)
  To: linux-snps-arc

On Wed, 19 Sep 2018 22:53, Alexey.Brodkin at synopsys.com said:

> I'd say it looks similar to uClibc version which is below
> as a reference:

Ack.  I added it to the list.


Shalom-Salam,

   Werner

-- 
Die Gedanken sind frei.  Ausnahmen regelt ein Bundesgesetz.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 227 bytes
Desc: not available
URL: <http://lists.infradead.org/pipermail/linux-snps-arc/attachments/20180921/dac2f7d0/attachment.sig>

^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2018-09-21 12:38 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
     [not found] <20180917051401.11358-1-abrodkin@synopsys.com>
     [not found] ` <878t3ztiif.fsf@wheatstone.g10code.de>
     [not found]   ` <e563c80e70dd56fed924be3097a51370cb121868.camel@synopsys.com>
     [not found]     ` <8736u7t0vm.fsf@wheatstone.g10code.de>
     [not found]       ` <4de08347a84dabdab577e02bf3702dc8c9eb769b.camel@synopsys.com>
     [not found]         ` <87sh26st3i.fsf@wheatstone.g10code.de>
     [not found]           ` <45de4a5495aa029bc6299b63452889ce829a82bf.camel@synopsys.com>
     [not found]             ` <C2D7FE5348E1B147BCA15975FBA23075012B095AC0@us01wembx1.internal.synopsys.com>
     [not found]               ` <87musdsoxl.fsf@wheatstone.g10code.de>
2018-09-19 18:46                 ` [PATCH libgpg-error] syscfg: Add ARC architecture Vineet Gupta
2018-09-19 20:53                   ` Alexey Brodkin
2018-09-21 12:38                     ` Werner Koch

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.