[v2,0/5] add s390 support to nolibc and rcutorture

Message ID 20230102105112.1661651-1-svens@linux.ibm.com
Headers
Series add s390 support to nolibc and rcutorture |

Message

Sven Schnelle Jan. 2, 2023, 10:51 a.m. UTC
  Hi,

these patches add support for the s390 architecture both to nolibc
and rcutorture. Note that this only adds support for the 64 bit
version, no support for 31 bit (compat) is added. For nolibc it
includes one bugfix to make the fd_set datatype match the kernel
type.

Changes in v2:

- use __attribute__((unused)) instead of __maybe_unused
- prefer aghi over lay, as lay is not present in all architecure levels
- add -m64 CFLAG to force 64 bit mode for compiler that can do 31bit and 64bit mode

Sven Schnelle (5):
  nolibc: fix fd_set type
  nolibc: add support for s390
  selftests/nolibc: add s390 support
  rcutorture: add support for s390
  rcutorture: build initrd for rcutorture with nolibc

 tools/include/nolibc/arch-s390.h              | 213 ++++++++++++++++++
 tools/include/nolibc/arch.h                   |   2 +
 tools/include/nolibc/sys.h                    |   2 +
 tools/include/nolibc/types.h                  |  53 +++--
 tools/testing/selftests/nolibc/Makefile       |   7 +-
 .../selftests/rcutorture/bin/functions.sh     |   6 +
 .../selftests/rcutorture/bin/mkinitrd.sh      |   2 +-
 7 files changed, 260 insertions(+), 25 deletions(-)
 create mode 100644 tools/include/nolibc/arch-s390.h
  

Comments

Willy Tarreau Jan. 2, 2023, 11:02 a.m. UTC | #1
On Mon, Jan 02, 2023 at 11:51:07AM +0100, Sven Schnelle wrote:
> Hi,
> 
> these patches add support for the s390 architecture both to nolibc
> and rcutorture. Note that this only adds support for the 64 bit
> version, no support for 31 bit (compat) is added. For nolibc it
> includes one bugfix to make the fd_set datatype match the kernel
> type.
> 
> Changes in v2:
> 
> - use __attribute__((unused)) instead of __maybe_unused
> - prefer aghi over lay, as lay is not present in all architecure levels
> - add -m64 CFLAG to force 64 bit mode for compiler that can do 31bit and 64bit mode

Excellent, now works out of the box for me, thank you Sven!.

Paul, would you mind taking these ones for your dev branch instead
of the previous ones ?

Thanks!
Willy
  
Sven Schnelle Jan. 2, 2023, 2:19 p.m. UTC | #2
Willy Tarreau <w@1wt.eu> writes:

> On Mon, Jan 02, 2023 at 11:51:07AM +0100, Sven Schnelle wrote:
>> Hi,
>> 
>> these patches add support for the s390 architecture both to nolibc
>> and rcutorture. Note that this only adds support for the 64 bit
>> version, no support for 31 bit (compat) is added. For nolibc it
>> includes one bugfix to make the fd_set datatype match the kernel
>> type.
>> 
>> Changes in v2:
>> 
>> - use __attribute__((unused)) instead of __maybe_unused
>> - prefer aghi over lay, as lay is not present in all architecure levels
>> - add -m64 CFLAG to force 64 bit mode for compiler that can do 31bit and 64bit mode
>
> Excellent, now works out of the box for me, thank you Sven!.
>
> Paul, would you mind taking these ones for your dev branch instead
> of the previous ones ?

Hrm, while looking at the code to make the adjustments for the auxv
stuff, i noted that the envp handling in the startup code is wrong. So i
have to fix that and send a v3 of the patchset.
  
Willy Tarreau Jan. 2, 2023, 2:33 p.m. UTC | #3
On Mon, Jan 02, 2023 at 03:19:10PM +0100, Sven Schnelle wrote:
> Willy Tarreau <w@1wt.eu> writes:
> 
> > On Mon, Jan 02, 2023 at 11:51:07AM +0100, Sven Schnelle wrote:
> >> Hi,
> >> 
> >> these patches add support for the s390 architecture both to nolibc
> >> and rcutorture. Note that this only adds support for the 64 bit
> >> version, no support for 31 bit (compat) is added. For nolibc it
> >> includes one bugfix to make the fd_set datatype match the kernel
> >> type.
> >> 
> >> Changes in v2:
> >> 
> >> - use __attribute__((unused)) instead of __maybe_unused
> >> - prefer aghi over lay, as lay is not present in all architecure levels
> >> - add -m64 CFLAG to force 64 bit mode for compiler that can do 31bit and 64bit mode
> >
> > Excellent, now works out of the box for me, thank you Sven!.
> >
> > Paul, would you mind taking these ones for your dev branch instead
> > of the previous ones ?
> 
> Hrm, while looking at the code to make the adjustments for the auxv
> stuff, i noted that the envp handling in the startup code is wrong. So i
> have to fix that and send a v3 of the patchset.

OK thank you for letting us know!

Willy