arch/ceva: cannot be selected, has no board, and tests the removed CONFIG_DISABLE_SIGNALS

Aperta
#21,075 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

Nessuno ha ancora preso questa issue.

Valutazione

Difficoltà
5/5
Tempo stimato
Più di una settimana
Idoneità per principianti
25/100
Tipo di issue
Refactoring
Chiarezza
Abbastanza chiara
Stato di attività
Attiva
Stack tecnologico
c
Ambito
embedded-iot

Direzione di ricerca

Start by checking arch/Kconfig, arch/ceva/Kconfig, and the listed signal guards in arch/ceva; compare them with other architectures’ CONFIG_ENABLE_ALL_SIGNALS guards. The issue offers two possible resolutions: make the port selectable and buildable by adding a board, or remove it. First determine whether the port is still in use; done means the selected path is resolved, including the stale signal configuration references if the port remains.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

Description

arch/ceva (added in ee916bdb91c, 2022-01) cannot be built in the tree:

  • arch/Kconfig has no ARCH_CEVA option and does not source arch/ceva/Kconfig (which starts with if ARCH_CEVA). So no configuration can select the architecture.
  • No board under boards/ uses it, and no CI test list builds it.

The code is also out of date. 13 lines in 9 files test CONFIG_DISABLE_SIGNALS, which NuttX removed in 7.30 ("Signals can no longer be disabled"):

  • arch/ceva/include/xc5/irq.h:131, arch/ceva/include/xm6/irq.h:134
  • arch/ceva/src/common/ceva_schedulesigaction.c:38, :149
  • arch/ceva/src/common/ceva_sigdeliver.c:37, :98
  • arch/ceva/src/common/ceva_signal_dispatch.c:33
  • arch/ceva/src/common/ceva_svcall.c:281, :322
  • arch/ceva/src/common/ceva_userspace.c:217
  • arch/ceva/src/xc5/xc5_signal_handler.S:32, arch/ceva/src/xm6/xm6_signal_handler.S:32

The other architectures guard the same code with CONFIG_ENABLE_ALL_SIGNALS (0ea686bc5b3, partial signal support). With CONFIG_ENABLE_PARTIAL_SIGNALS or CONFIG_DISABLE_ALL_SIGNALS, ceva_userspace.c:218 and ceva_svcall.c:295 use userspace_s.signal_handler, which include/nuttx/userspace.h then does not declare.

Nobody can build or test a change to these files in the tree. Two ways forward:

  1. If the port is still in use: add ARCH_CEVA to arch/Kconfig and a board, then change the signal guards to CONFIG_ENABLE_ALL_SIGNALS.
  2. If not: remove arch/ceva.
Verification
  • I have verified before submitting the report.
Lingua principale
C
Stelle
4.1k
Fork
1.8k
Merge medio
1g 5h
PR unite (30g)
841

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di apache/nuttx

Tutte le issue di apache/nuttx

Issue simili

Altre issue su C

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.