mailing list of musl libc
 help / color / mirror / code / Atom feed
From: Hesham Almatary <heshamelmatary@gmail.com>
To: Rich Felker <dalias@libc.org>
Cc: lowrisc-dev@lists.lowrisc.org, musl@lists.openwall.com
Subject: Re: musl risc-v port & gsoc - resources & ideas
Date: Sun, 6 Mar 2016 18:31:30 +0000	[thread overview]
Message-ID: <CA+wsVCDbvOnMaYrtBYJ2EnvKiK2YZPcp_YMiBsb-9EADGFQhBQ@mail.gmail.com> (raw)
In-Reply-To: <20160304035811.GA10218@brightrain.aerifal.cx>

Hi Rich,

Thanks for this detailed e-mail. It's worth mentioning that during my
last GSoC project that ported seL4 to RISC-V, I had to add RISC-V
support to the muslc library [1] (only 32-bit, imitating the or1k
port). It was mainly useful for userspace tasks, and works pretty
well.

I thought this might be a good starting point for anyone who might
work on this project. We can work to get this local code upstream if
that makes sense.

[1] https://github.com/heshamelmatary/musllibc

Best,
Hesham

On Fri, Mar 4, 2016 at 3:58 AM, Rich Felker <dalias@libc.org> wrote:
> lowrisc.org has been accepted into Google Summer of Code 2016, and has
> porting musl to risc-v as one of the suggested projects:
>
> http://www.lowrisc.org/docs/gsoc-2016-ideas/
>
> I'm very hopeful that we'll make the port happen this year. In this
> email I'd like to go over some resources that may be helpful to
> students interested in applying, and some ideas for other tasks that
> could be included in proposals.
>
> The musl wiki contains a porting page with some useful but
> not-entirely-up-to-date information on porting musl to a new arch.
> This is a good starting point, and updating it could actually be part
> of the gsoc project. See http://wiki.musl-libc.org/wiki/Porting
>
> Some information on recent changes can be found in the mailing list
> archives. These threads pertain to changes to how ports are expected
> to provide atomic primitives:
>
> http://www.openwall.com/lists/musl/2015/05/17/2
> http://www.openwall.com/lists/musl/2015/05/20/1
> http://www.openwall.com/lists/musl/2016/01/10/6
>
> which was committed here:
>
> http://git.musl-libc.org/cgit/musl/commit/?id=1315596b510189b5159e742110b504177bdd4932
>
> and other subsequent commits with per-arch improvements.
>
> And these cover the bits deduplication:
>
> http://www.openwall.com/lists/musl/2016/01/25/1
> http://www.openwall.com/lists/musl/2016/01/27/9
>
> which was committed here:
>
> http://git.musl-libc.org/cgit/musl/commit/?id=4dfac11538cb20c848c30d754863800061ee8c81
>
> Threads on the recent mips64 port work, which is almost ready for
> merging, may also be helpful to read. It's broken up across several
> threads but you can find most of the content in the January-March 2016
> archives.
>
> Since a port of musl to a new arch does not actually involve much
> code, mainly attention to detail to make sure that all of the type
> definitions/ABI/etc. are correct, I think that for a proposal to be
> big enough to make a reasonable GSoC project, it should go beyond just
> the basic porting. Some ideas for things to include would be:
>
> - Improvement of porting documentation
>
> - Feedback/patches on where there's too much redundancy between ports
>   and how to reduce it (i.e. making improvements to musl that reduce
>   the amount of code/headers needed for a new port).
>
> - Patches for musl-cross and/or musl-cross-make (build systems for
>   generating a cross-compiler toolchain) to make it easy to build a
>   musl/riscv cross compiler.
>
> - Optimizing performance-critical code like memcpy or floating point
>   math functions for riscv.
>
> - Improving test coverage, especially for things that are easy to get
>   wrong in a new port.
>
> I'll follow up with more ideas if I think of any.
>
> Students interested in the project are welcome (and encouraged!) to
> ask questions and discuss here on the musl list. Obviously everyone
> should have in mind writing their own proposals but I want everyone to
> have access to knowledge/resources/community for ideas.
>
> Rich
>



-- 
Hesham



  parent reply	other threads:[~2016-03-06 18:31 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2016-03-04  3:58 Rich Felker
2016-03-06  3:25 ` Rich Felker
2016-03-06 18:31 ` Hesham Almatary [this message]
2016-03-06 18:45   ` Re: [lowrisc-dev] " Rich Felker
2016-03-06 22:33 ` Rich Felker

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=CA+wsVCDbvOnMaYrtBYJ2EnvKiK2YZPcp_YMiBsb-9EADGFQhBQ@mail.gmail.com \
    --to=heshamelmatary@gmail.com \
    --cc=dalias@libc.org \
    --cc=lowrisc-dev@lists.lowrisc.org \
    --cc=musl@lists.openwall.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.
Code repositories for project(s) associated with this public inbox

	https://git.vuxu.org/mirror/musl/

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 NNTP newsgroup(s).