Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix setup.py license #7

Closed
wants to merge 28 commits into from
Closed

Fix setup.py license #7

wants to merge 28 commits into from

Commits on Sep 18, 2023

  1. Configuration menu
    Copy the full SHA
    666a2bd View commit details
    Browse the repository at this point in the history
  2. Makefile: Force symlink creation

    This fixes failure when repeatedly run make install:
    
    ln -s /opt/ltp/runltp-ng /opt/ltp/kirk
    ln: failed to create symbolic link '/opt/ltp/kirk': File exists
    make: *** [Makefile:16: install] Error 1
    
    Fixes: 666a2bd ("Symlink kirk with runltp-ng in LTP installation")
    Signed-off-by: Petr Vorel <[email protected]>
    pevik committed Sep 18, 2023
    Configuration menu
    Copy the full SHA
    ced64ff View commit details
    Browse the repository at this point in the history
  3. Merge pull request #2 from pevik/fix-symlink

    Makefile: Force symlink creation
    acerv authored Sep 18, 2023
    Configuration menu
    Copy the full SHA
    b9e4d1b View commit details
    Browse the repository at this point in the history
  4. Fix 666a2bd

    runltp-ng symlink is not pointing to kirk, but the opposite way.
    acerv committed Sep 18, 2023
    Configuration menu
    Copy the full SHA
    7e397fe View commit details
    Browse the repository at this point in the history

Commits on Oct 2, 2023

  1. Makefile: Make symlink relative

    Using full path creates problems with rpm packaging:
    
    ERROR: Link /opt/ltp/runltp-ng ->
    /home/abuild/rpmbuild/BUILDROOT/ltp-20230929.48a150bf-1573.1.x86_64/opt/ltp/kirk
    points inside build root.
    
    Closes: #6
    Fixes: 666a2bd ("Symlink kirk with runltp-ng in LTP installation")
    Fixes: 7e397fe ("Fix 666a2bd")
    Suggested-by: Cyril Hrubis <[email protected]>
    Reviewed-by: Petr Cervinka <[email protected]>
    Signed-off-by: Petr Vorel <[email protected]>
    pevik committed Oct 2, 2023
    Configuration menu
    Copy the full SHA
    c47d3d9 View commit details
    Browse the repository at this point in the history

Commits on Oct 18, 2023

  1. Update README.md

    Modify incorrect ssh sut sample code
    ji-huan authored Oct 18, 2023
    Configuration menu
    Copy the full SHA
    86a5e30 View commit details
    Browse the repository at this point in the history
  2. Merge pull request #7 from imjihuan/master

    Update README.md
    acerv authored Oct 18, 2023
    Configuration menu
    Copy the full SHA
    07ccd27 View commit details
    Browse the repository at this point in the history

Commits on Nov 1, 2023

  1. libkirk/host.py: Redirect stderr to stdout

    This fixes a problem with missing output on LTP new C API and new shell
    API, which both print tst_res() and tst_brk() messages to stderr
    (unlike the old APIs which print to stdout).
    
        $ /root/kirk.git/kirk -r smoketest -v
        ...
        ===== access01 =====
        command: access01
        Tained kernel: unsigned module was loaded
        tst_test.c:1690: TINFO: LTP version: 20230929-89-g446d82e5b
        tst_test.c:1574: TINFO: Timeout per run is 0h 05m 24s
        access01.c:245: TPASS: access(accessfile_rwx, F_OK) as root passed
        access01.c:245: TPASS: access(accessfile_rwx, F_OK) as nobody passed
        ...
        ===== ping602 =====
        command: ping02.sh -6
        Tained kernel: unsigned module was loaded
        ping02 1 TINFO: Running: ping02.sh -6
        ping02 1 TINFO: IPv6 disabled on lhost via kernel command line or not
        compiled in
        ping02 1 TINFO: initialize 'lhost' 'ltp_ns_veth2' interface
    
    Without this patch TINFO messages would be missing in the output and in
    the logs (debug.log, results.json).
    
    Merging stdout and stderr together can lead to problem of unexpected
    output (message from stderr instead of expected number in
    get_tainted_info()):
    
        $ mkdir /tmp/foo; cd /tmp/foo; rm -rf /tmp/foo; cd .
        cd: error retrieving current directory: getcwd: cannot access parent
        directories: No such file or directory
        $ /root/kirk.git/kirk -r smoketest -v
        ...
          File "/root/kirk.git/libkirk/scheduler.py", line 231, in _run_test
    	tainted_code1, _ = await self._get_tainted_status()
          File "/root/kirk.git/libkirk/scheduler.py", line 150, in _get_tainted_status
    	code, messages = await self._sut.get_tainted_info()
          File "/root/kirk.git/libkirk/sut.py", line 256, in get_tainted_info
    	code = int(stdout.rstrip())
        ValueError: invalid literal for int() with base 10: 'shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory\n8192'
    
    Therefore add check for it:
        $ /root/kirk.git/kirk -r smoketest -v
        Kernel Version: shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
        Linux 6.3.1-0.g944cb55-default #1 SMP PREEMPT_DYNAMIC Thu May 11 07:12:30 UTC 2023 (944cb55)
        CPU: shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
        x86_64
        Machine Architecture: shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
        x86_64
        RAM: 2010696 kB
        Swap memory: 2098152 kB
        Distro: shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
        opensuse-tumbleweed
        Distro Version: shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
        20230502
    
        Error: shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
        8192
    
    Fixes: #8
    Signed-off-by: Petr Vorel <[email protected]>
    pevik authored and acerv committed Nov 1, 2023
    Configuration menu
    Copy the full SHA
    1f58ceb View commit details
    Browse the repository at this point in the history

Commits on Nov 2, 2023

  1. Add full_command property inside Test class

    full_command will permit to have the entire command starting from
    command itself plus the arguments.
    acerv committed Nov 2, 2023
    Configuration menu
    Copy the full SHA
    3f00ad3 View commit details
    Browse the repository at this point in the history
  2. Add Framework::find_command API

    The Framework::find_command API will permit to support external
    commands, as well as test binaries which could be inside the framework
    path.
    acerv committed Nov 2, 2023
    Configuration menu
    Copy the full SHA
    cd4f176 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5da24d6 View commit details
    Browse the repository at this point in the history
  4. Search for commands to run in framework folder

    With this patch it's possible tot execute tests which are inside the
    framework path by using the --run-command option.
    acerv committed Nov 2, 2023
    Configuration menu
    Copy the full SHA
    73ab80a View commit details
    Browse the repository at this point in the history

Commits on Nov 3, 2023

  1. Use more Test::full_command

    Still some old code is not using full_command, but building up the full
    command using Test::command + Test::arguments. In this patch we use
    Test::full_command around the code.
    acerv committed Nov 3, 2023
    Configuration menu
    Copy the full SHA
    314a3bc View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    edc72a5 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    181ea09 View commit details
    Browse the repository at this point in the history

Commits on Nov 29, 2023

  1. Remove epoll() usage in LTX communication

    Using epoll() is a bad idea when asyncio is involved. The reason is that
    asyncio itself is using epoll() to implement concurrency, so we end up
    having 2 epoll() instances running in parallel. When we record a new file
    descriptor into an asyncio application, we supposed to use the
    asyncio.BaseEventLoop.add_reader() method which is, unfortunately, not
    working (by experience) with plain files.
    
    For this reason, the current solution is to use threaded read() syscall
    which permits to execute reading operations, as well as keeping asyncio
    loop running in the background without killing UI or data acquisition.
    acerv committed Nov 29, 2023
    Configuration menu
    Copy the full SHA
    bcb2df8 View commit details
    Browse the repository at this point in the history

Commits on Mar 6, 2024

  1. Fix cgroup kselftests collection

    This patch filters out kselftests binaries using python regexp, instead
    of using a bash script.
    acerv committed Mar 6, 2024
    Configuration menu
    Copy the full SHA
    c95c16b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6bf502b View commit details
    Browse the repository at this point in the history

Commits on Mar 13, 2024

  1. Fix typo: tained -> tainted

    acerv committed Mar 13, 2024
    Configuration menu
    Copy the full SHA
    3ffd6c8 View commit details
    Browse the repository at this point in the history
  2. Fix typo: reset_command -> reset_cmd

    This patch fixes a documentation issue with the SSH module, where
    reset command is saved as `reset_command` but it's `reset_cmd`.
    acerv committed Mar 13, 2024
    Configuration menu
    Copy the full SHA
    9ba480f View commit details
    Browse the repository at this point in the history
  3. Remove timeout parameter in the ssh module

    This parameter has been introduced long time ago and never removed after
    being replaced by --suite-timeout and --test-timeout parameters, which
    are using asyncio features instead.
    acerv committed Mar 13, 2024
    Configuration menu
    Copy the full SHA
    96f4545 View commit details
    Browse the repository at this point in the history
  4. Wait for SSH command to complete after execution

    This patch resolves a problem that started to show up when fast commands,
    such as 'cat', were executed on target. The original code was killing
    the command once we faced a return_value == None. This is obviously wrong
    and it probably comes from multiple SSH module implementations.
    
    The right thing to do is to wait for the process completion, once we
    finish to read stdout. In this way, return_value will be != None and we
    can process fast commands execution.
    acerv committed Mar 13, 2024
    Configuration menu
    Copy the full SHA
    cf0680d View commit details
    Browse the repository at this point in the history

Commits on Mar 14, 2024

  1. Fix SSH execution not redirecting output properly

    This patch aims to save commands stdout/stderr once they are executed
    inside the SSH channel. The whole implementation has been changed, in
    order to customize the current SSH session object and to store both
    stdout and stderr messages inside it, as well as checking for Kernel
    Panic triggered by the command. In this way, the whole SSH
    implementation should be also more stable.
    
    Also, SSH tests have been improved by adding more tests, in order to
    check stderr acquisition and long stdout text messages.
    acerv committed Mar 14, 2024
    Configuration menu
    Copy the full SHA
    fa3c571 View commit details
    Browse the repository at this point in the history
  2. Recognize when LTP test returns zero

    The previous code was not taking in consideration the return code 0, so
    when test text was not acquired correctly, the text process ended up to
    recognize test failure.
    acerv committed Mar 14, 2024
    Configuration menu
    Copy the full SHA
    b63ad1b View commit details
    Browse the repository at this point in the history
  3. SSH module is not showing live stdout/stderr

    The IOBuffer object that is meant to show realtime messages coming from
    the SSH commands was not passed to the event loop. Instead, it was
    called as a normal callback. asyncio.ensure_future() is now used to
    ensure that task will run.
    acerv committed Mar 14, 2024
    Configuration menu
    Copy the full SHA
    5343375 View commit details
    Browse the repository at this point in the history

Commits on Mar 19, 2024

  1. Fix crash if test is stopped during SSH execution

    Sometimes happens that test is stopped during execution, causing an
    internal exception that turns out using a stdout variable initialized
    with None. Then this will crash kirk due to unhandled TypeError.
    acerv committed Mar 19, 2024
    Configuration menu
    Copy the full SHA
    1c7c000 View commit details
    Browse the repository at this point in the history

Commits on Jun 10, 2024

  1. README: Document passing environment variables

    Link: https://lore.kernel.org/ltp/[email protected]/
    Reviewed-by: Andrea Cervesato <[email protected]>
    Signed-off-by: Petr Vorel <[email protected]>
    pevik committed Jun 10, 2024
    Configuration menu
    Copy the full SHA
    5e8c806 View commit details
    Browse the repository at this point in the history

Commits on Jun 12, 2024

  1. Fix setup.py license

    The setuptools script is using LGPLv2 while the project is developed in
    GPLv2.
    
    Signed-off-by: Andrea Cervesato <[email protected]>
    acerv committed Jun 12, 2024
    Configuration menu
    Copy the full SHA
    08fb2dc View commit details
    Browse the repository at this point in the history