about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAlistair Francis <alistair.francis@wdc.com>2019-12-30 13:33:07 -0800
committerAlistair Francis <alistair.francis@wdc.com>2020-04-25 19:16:16 -0700
commit858342bd91eb1fa9dec42f1fdfb9973d1e2845cc (patch)
treeae220262815ab314602fd9ee03174a345fef5242
parent09ce02006a41a0872fc8149832522dfa4506aa08 (diff)
downloadglibc-858342bd91eb1fa9dec42f1fdfb9973d1e2845cc.tar.gz
glibc-858342bd91eb1fa9dec42f1fdfb9973d1e2845cc.tar.xz
glibc-858342bd91eb1fa9dec42f1fdfb9973d1e2845cc.zip
COVER: glibc port for 32-bit RISC-V (RV32)
This patch set contains the glibc port for 32-bit RISC-V.

This is based on the original work from Zong Li [1] and has been
updated to use a 64-bit time_t.

This requires a 5.4+ kernel and all of the testing has been done using
the 5.4 stable kernel.

Nothing fails when running ./scripts/build-many-glibcs.py (for all
targets) on my x86-64 machine.

This is the current list of tests that fail when running inside QEMU RV32
system emulation on the 5.4 kernel:

FAIL: elf/tst-ldconfig-ld_so_conf-update
FAIL: io/tst-lockf
FAIL: misc/test-errno-linux
FAIL: nss/tst-nss-files-hosts-long
FAIL: resolv/tst-resolv-res_init-thread
FAIL: stdio-common/bug22
FAIL: stdlib/tst-strfrom
FAIL: stdlib/tst-strfrom-locale
FAIL: sysvipc/test-sysvmsg

---Links---
1: https://sourceware.org/ml/libc-alpha/2018-07/msg00892.html

The latest version of my work can be found here: https://github.com/alistair23/glibc/tree/alistair/rv32.next

This specific version can be found here: https://github.com/alistair23/glibc/tree/alistair/rv32.1

---Changelog---
v1:
 - Update based from feedback on RFCv6
 - Improve test passing
     - There are only 9 tests failing now
 - Rebase on Lukasz's work
 - Send only the RV32 specific patches (other patches are already merged
   or on the list)
RFC v6:
 - Rebase on top of accetpted patches
 - Fix issues so that the tests actually run
RFC v5:
 - Hopefully finally get the correct layout for the *64 syscalls
 - Sort out the Changelog
RFC v4:
 - Continue to fix things that weren't working
 - Update the coding style to match glibc
 - Update the __ASSUME_TIME64_SYSCALLS work to better match Lukasz's
 work
RFC v3:
 - Remove all "Hack" patches
 - Incorporate upstream comments
 - Ensure we don't break RV64
 - Lot's more testing and fixes
RFC v2:
 - Add Lukasz's patches
 - Update the non HACK syscalls after feedback
 - define __ASSUME_TIME64_SYSCALLS and __ASSUME_RLIM64_SYSCALLS
 - Remove lockf64.c
 - Other smaller changes from RFC v1
-rw-r--r--__COVER__0
1 files changed, 0 insertions, 0 deletions
diff --git a/__COVER__ b/__COVER__
new file mode 100644
index 0000000000..e69de29bb2
--- /dev/null
+++ b/__COVER__