apache / apache/nuttx

INCOMPATIBILITIES WITH execv() AND execl()

Open
#3,332 0 comments 0 reactions 0 assignees View on GitHub
Type: Migrated TODO
Dominant language
C
Stars
4k
Forks
1.7k
Avg merge
1d 13h
Merged PRs (30d)
230

Description

```
Description: Simplified 'execl()' and 'execv()' functions are provided by
NuttX. NuttX does not support processes and hence the concept
of overlaying a tasks process image with a new process image
does not make any sense. In NuttX, these functions are
wrapper functions that:

1. Call the non-standard binfmt function 'exec', and then
2. exit(0).

As a result, the current implementations of 'execl()' and
'execv()' suffer from some incompatibilities, the most
serious of these is that the exec'ed task will not have
the same task ID as the vfork'ed function. So the parent
function cannot know the ID of the exec'ed task.
Status: Open
Priority: Medium Low for now
```

Contributor guide

Open the contributing guide

Research direction

Start by locating NuttX's execl() and execv() implementations and tracing their calls to the non-standard binfmt exec function and exit(0). Compare their behavior with the issue's stated process and task-ID expectations. The issue does not name files, tests, or a complete target behavior, so the required compatibility and definition of done need clarification first.

Written by the indexing model from the issue text.

Assessment

Tech stack
c
Domain
embedded-iot, operating-systems
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.