Skip to content

GitLab

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in / Register
Spot
Spot
  • Project overview
    • Project overview
    • Details
    • Activity
    • Releases
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 117
    • Issues 117
    • List
    • Boards
    • Labels
    • Service Desk
    • Milestones
  • Merge Requests 1
    • Merge Requests 1
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
  • Operations
    • Operations
    • Incidents
    • Environments
  • Analytics
    • Analytics
    • CI / CD
    • Repository
    • Value Stream
  • Wiki
    • Wiki
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • Spot
  • SpotSpot
  • Issues
  • #98

Closed
Open
Opened Jul 16, 2015 by Alexandre Duret-Lutz@adlOwner

speed up exec() in ltlcross and ltldo

exec_with_timeout() could be speed up in at least two ways.

  1. Try execv("/bin/sh",...) first and only resort to execvp("sh",...) if the first fails. This avoids the PATH lookup.

The first try should probably honor the SHELL variable if it is defined.

  1. If the command is simple enough so that we can split it by ourselves (a single command with redirection, maybe single-quoted strings and double-quoted strings that do not contain dollars, backaslashs or backquotes, no variable assignment), then we can run the command directly with execvp without starting a shell. GNU make has some code that does exactly that.
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information
Assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
None
Due date
None
Reference: spot/spot#98