Follow @Openwall on Twitter for new release announcements and other news
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20200415182619.GI11469@brightrain.aerifal.cx>
Date: Wed, 15 Apr 2020 14:26:19 -0400
From: Rich Felker <dalias@...c.org>
To: sidneym@...eaurora.org, musl@...ts.openwall.com
Subject: Re: Hexagon DSP support

On Wed, Apr 15, 2020 at 08:06:20PM +0200, Szabolcs Nagy wrote:
> * sidneym@...eaurora.org <sidneym@...eaurora.org> [2020-04-15 12:50:21 -0500]:
> > > > Recently work has been done with clang/llvm/lld to extend support for
> > > > Qualcomm's Hexagon DSP to a Linux target.  At this point the publicly
> > > > available LLVM tools are able to build and run Hexagon programs via
> > QEMU.
> ....
> > This is the list, the context associated with some of the failures can be
> > bulky so I hope the summary is ok.  Let me know which failures are most
> > critical and I will try to fix those first.  51 failures after removing the
> > TIME64 define
> 
> is this qemu system emulation?
> 
> i'd look at the pthread failures first.

If qemu-user these would possibly be expected failures. If qemu-system
or native they almost surely indicate bugs in the atomics.

> sqrt/sqrtf should work too (you may want to
> implement them if there is a single instruction)
> other math failures are not target specific.
> the ipc failures may be relevant, or it
> may be a time issue (if timestamps fail).

arch/hexagon/bits is missing sem.h etc. so it's using the arch/generic
definitions, which only work for archs that are 64-bit or where the
only existing kernel interface has 64-bit time_t (i.e. riscv32). For
anything else they must be defined with the proper hi/lo time members,
and bits/ipcstat.h must define IPC_STAT as 0x102 to activate the
translations.

> > FAIL src/api/main.exe [status 1]
> > FAIL src/functional/dlopen.exe [status 1]
> > FAIL src/functional/ipc_msg-static.exe [status 1]
> > FAIL src/functional/ipc_msg.exe [status 1]
> > FAIL src/functional/ipc_sem-static.exe [status 1]
> > FAIL src/functional/ipc_sem.exe [status 1]
> > FAIL src/functional/ipc_shm-static.exe [status 1]
> > FAIL src/functional/ipc_shm.exe [status 1]
> > FAIL src/functional/pthread_mutex-static.exe [status 1]
> > FAIL src/functional/pthread_mutex.exe [status 1]
> > FAIL src/functional/pthread_mutex_pi-static.exe [timed out]
> > FAIL src/functional/pthread_mutex_pi.exe [signal Segmentation fault]
> > FAIL src/functional/pthread_robust-static.exe [timed out]
> > FAIL src/functional/pthread_robust.exe [timed out]
> > FAIL src/functional/sem_init-static.exe [status 1]
> > FAIL src/functional/sem_init.exe [status 1]
> > FAIL src/functional/strptime-static.exe [status 1]
> > FAIL src/functional/strptime.exe [status 1]
> > FAIL src/functional/utime-static.exe [status 1]
> > FAIL src/functional/utime.exe [status 1]
> > FAIL src/math/acoshl.exe [status 1]
> > FAIL src/math/asinhl.exe [status 1]
> > FAIL src/math/erfcl.exe [status 1]
> > FAIL src/math/exp2l.exe [status 1]
> > FAIL src/math/fmal.exe [status 1]
> > FAIL src/math/ilogb.exe [status 1]
> > FAIL src/math/ilogbf.exe [status 1]
> > FAIL src/math/ilogbl.exe [status 1]
> > FAIL src/math/lgammal.exe [status 1]
> > FAIL src/math/powf.exe [status 1]
> > FAIL src/math/powl.exe [status 1]
> > FAIL src/math/sqrt.exe [status 1]
> > FAIL src/math/sqrtf.exe [status 1]
> > FAIL src/math/sqrtl.exe [status 1]
> > FAIL src/math/tgamma.exe [status 1]
> > FAIL src/math/tgammaf.exe [status 1]
> > FAIL src/math/tgammal.exe [status 1]
> > FAIL src/math/y0.exe [status 1]
> > FAIL src/math/y0f.exe [status 1]
> > FAIL src/math/y1.exe [status 1]
> > FAIL src/math/y1f.exe [status 1]
> > FAIL src/math/yn.exe [status 1]
> > FAIL src/math/ynf.exe [status 1]
> > FAIL src/regression/malloc-brk-fail-static.exe [status 1]
> > FAIL src/regression/malloc-brk-fail.exe [timed out]
> > FAIL src/regression/pthread-robust-detach-static.exe [status 1]
> > FAIL src/regression/pthread-robust-detach.exe [status 1]
> > FAIL src/regression/pthread_cond-smasher-static.exe [status 1]
> > FAIL src/regression/pthread_cond-smasher.exe [status 1]
> > FAIL src/regression/pthread_cond_wait-cancel_ignored-static.exe [status 1]
> > FAIL src/regression/pthread_once-deadlock-static.exe [status 1]

Could you send the whole src/REPORT file which contains not just the
FAIL lines but the specific test failures that caused them? And label
whether it's for qemu-user, qemu-system, or real metal.

Rich

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.