Skip to content

Chaotic Chameleon.1 #123

Merged
merged 30 commits into from
Feb 21, 2022
Merged

Chaotic Chameleon.1 #123

merged 30 commits into from
Feb 21, 2022

Commits on Feb 21, 2022

  1. gpu-setup: Use flock

    Currently the script assumes that it is not called multiple times in
    parallel. This is not true, because for `gpu-setup job-init` it is
    called by the forked user process.
    
    Use flock to avoid GPU allocation races.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    689e97c View commit details
    Browse the repository at this point in the history
  2. gpu-setup: Tolerate empty pid files and pid file removal

    Because `gpu-setup job-init` is asynchronous to mxqd (see previous
    commit), `gpu-setup job-relaese` races with it, too.
    
    Tolerate empty pid files as well as a pid files being removed away from
    under us.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    4e41689 View commit details
    Browse the repository at this point in the history
  3. mxqd: Set "group initialized" message to debug level

    This message is rather annoying during normal operation, so set it to
    debug level.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    47ce327 View commit details
    Browse the repository at this point in the history
  4. mxqadmin: Add missing initialization

    If the -u option is not given, passwd will not be set in the args
    evaluation loop, yet we use `if (!passwd) {` later in the code.
    
    Initialze pointer.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    922a46b View commit details
    Browse the repository at this point in the history
  5. mxqkill: Add missing initialization

    If the -u option is not given, passwd will not be set in the args
    evaluation loop, yet we use `if (!passwd) {` later in the code.
    
    Initialze pointer.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    7bd4b22 View commit details
    Browse the repository at this point in the history
  6. mx_proc: Add missing initialization

    If pid 1 is not found in the loop, `pid1` will be left unititialized,
    yet it is evaluated in `if (!pid1)` after the loop.
    
    Add missing initialization.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    e58f37c View commit details
    Browse the repository at this point in the history
  7. tree: Remove "inline" function attributes

    Remove "inline" function attributes and leave the decision to the
    compiler.
    
    Note: We keep "inline" in the cleanup functions in mx_util.h to avoid
    conflicts between instances of the functions bodies in multiple
    compilation units.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    76a8287 View commit details
    Browse the repository at this point in the history
  8. tree: Remove "extern" function attributes

    Remove "extern" keyword from functions, because it has no effect.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    69f9f1c View commit details
    Browse the repository at this point in the history
  9. mx_getopt: Remove dead code

    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    2cbc3e8 View commit details
    Browse the repository at this point in the history
  10. mx_mysql: Remove dead code

    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    50a8a3d View commit details
    Browse the repository at this point in the history
  11. mx_daemon: Remove dead code

    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    09da264 View commit details
    Browse the repository at this point in the history
  12. tree: Convert some functions into static

    Turn some functions, which are only used inside a compilation unit, into
    static. If the funtions was published in the include file, remove it
    there.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    90f3a36 View commit details
    Browse the repository at this point in the history
  13. tree; Remove dead stores

    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    ea504b4 View commit details
    Browse the repository at this point in the history
  14. tree: Apply cosmetics

    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    3ce871a View commit details
    Browse the repository at this point in the history
  15. mx_flock: Don't call _flock_free to early

    Don't call _flock_free before flock->fname has been initialized.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    76b7022 View commit details
    Browse the repository at this point in the history
  16. Configuration menu
    Copy the full SHA
    4f87991 View commit details
    Browse the repository at this point in the history
  17. mxqd: Remove capability to run as non-root

    This feature was once added to help in development. However since then,
    mxqd has learned a few more more things (like mounting TMPDIR) which can
    not be done without privileges and would require more special code.
    
    Even if we special-case everywhere, testing done as non-root wouldn't
    exercise code paths of the real thing.
    
    I don't really use that feature anymore. Does anyone?
    
    Moreover, nowadays there are other options (like user namespaces).
    
    Remove feature to simplify code.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    523b995 View commit details
    Browse the repository at this point in the history
  18. mx_call_external: Change EPIPE to EPROTO

    If an external helper does something unexpected like exiting with a
    non-zero exit status or sending more data than mxqd wants to handle,
    mx_call_external sets errno to an error code.
    
    Currenty we use EPIPE ("Broken pipe"). Change this to EPROTO ("Protocol
    error"), which seems to be better fitting.
    
    We assume that the external helper, which shares its stderr with mxqd,
    has already sent some diagnostic to the logfile.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    218e94a View commit details
    Browse the repository at this point in the history
  19. Doxfile: Update for Doxygen 1.8.18

    Use `doxygen -u` to upgrade `Doxyfile`.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    1690ccb View commit details
    Browse the repository at this point in the history
  20. Configuration menu
    Copy the full SHA
    05aaace View commit details
    Browse the repository at this point in the history
  21. tree: Remove some dead stores

    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    80c1e09 View commit details
    Browse the repository at this point in the history
  22. mxqd: Fix uninitialized value in error message

    In the "reaper died" codepath, the exit status has not yet read when
    the error message is emitted. Move error message behind the wait4 call.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    2b08bbd View commit details
    Browse the repository at this point in the history
  23. mxqd: Fix use after free

    Capture jlist->next because jlist might be freed by job_is_lost() inside
    the loop body.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    049ef4d View commit details
    Browse the repository at this point in the history
  24. Configuration menu
    Copy the full SHA
    ef54844 View commit details
    Browse the repository at this point in the history
  25. mxqd: Remove unused variable

    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    addc997 View commit details
    Browse the repository at this point in the history
  26. mxqd: Remove dead stores

    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    e402066 View commit details
    Browse the repository at this point in the history
  27. Configuration menu
    Copy the full SHA
    0de4433 View commit details
    Browse the repository at this point in the history
  28. Configuration menu
    Copy the full SHA
    3f2fe00 View commit details
    Browse the repository at this point in the history
  29. mxqd: Simplify reexec

    Currently argv is converted to a string and back to an array before mxqd
    reexecs itself. Use the original argv instead.
    
    Difference is, that options are not included in the informational
    messages.
    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    c45a22e View commit details
    Browse the repository at this point in the history
  30. mxqd: Remove pointless loop

    donald committed Feb 21, 2022
    Configuration menu
    Copy the full SHA
    06562ea View commit details
    Browse the repository at this point in the history