Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CA+mdN-E0jiW3ervFRj4KmA5O6VNbjA1_SqoJwjoeKbE3rcV7dQ@mail.gmail.com>
Date: Wed, 11 May 2016 09:32:16 -0700
From: Gry Gunvor <gry.gunvor@...il.com>
To: musl@...ts.openwall.com
Subject: Re: porting musl to RISCV-64

On Wed, May 11, 2016 at 4:25 AM, Szabolcs Nagy <nsz@...t70.net> wrote:

> newlib is for baremetal development, you don't
> need to use threading with it

It's attempt at reentrancy support is causing me problems.

> musl now has 32bit mips, mips64 and mipsn32 support as well.
> these are different abis so they have to be separate ports,
> same is true for the riscv targets.

Your documentation does not seem to mention the MIPS64 port, but now
that I look in arch, I see the directory for it.

> there is a google summer of code project to add riscv support
> http://www.openwall.com/lists/musl/2016/04/27/3
> i think it is supposed to provide a working port within 1-2
> months (?) so if you can wait you don't need to do much work.

Suppose I can't wait and I attempt this myself.  Right now I'm just
trying to get a generic libc working.  I do not want to handle
multi-threading or signals.  What can I omit?  Are the
non-portabilities isolated in arch/ ?  That is, is there much more to
it than cloning the arch/mips64 directory and hacking on it?

atomic_arch.h: I think I can make all of these functions empty as I am
not going to be using multi-threading, right?

crt_arch.h: program startup; what is this doing in a libc
implementation?  doesn't the compiler handle this?

ksigaction.h: sorry, I'm not a hardware person; I suppose different
hardware has a different default layout for a signal object? so this
is not a thing determined by kernel software?  I don't care to handle
signals right now anyway.

pthread_arch.h: again, I think I can make all of these functions empty
as I am not going to be using multi-threading.

reloc.h: I can't figure out what this is.

syscall_arch.h: I've already written this for RISCV-64 (and so have
the RISCV people).

bits: to what extent is this MIPS64-specific?  since there is *no*
inline assembly, how come arch/generic/ doesn't do here?

Gry

Powered by blists - more mailing lists

Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.