-
Notifications
You must be signed in to change notification settings - Fork 2
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
Closed
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
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]>
Makefile: Force symlink creation
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]>
Modify incorrect ssh sut sample code
Update README.md
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]>
full_command will permit to have the entire command starting from command itself plus the arguments.
The Framework::find_command API will permit to support external commands, as well as test binaries which could be inside the framework path.
With this patch it's possible tot execute tests which are inside the framework path by using the --run-command option.
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.
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.
This patch filters out kselftests binaries using python regexp, instead of using a bash script.
This patch fixes a documentation issue with the SSH module, where reset command is saved as `reset_command` but it's `reset_cmd`.
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.
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.
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.
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.
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.
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.
Link: https://lore.kernel.org/ltp/[email protected]/ Reviewed-by: Andrea Cervesato <[email protected]> Signed-off-by: Petr Vorel <[email protected]>
The setuptools script is using LGPLv2 while the project is developed in GPLv2. Signed-off-by: Andrea Cervesato <[email protected]>
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The setuptools script is using LGPLv2 while the project is developed in GPLv2.
Signed-off-by: Andrea Cervesato [email protected]