Skip to content

Add miob example config#879

Closed
IgnoreWarnings wants to merge 0 commit into
masterfrom
miob-config
Closed

Add miob example config#879
IgnoreWarnings wants to merge 0 commit into
masterfrom
miob-config

Conversation

@IgnoreWarnings
Copy link
Copy Markdown
Collaborator

Add a miob example config for loopback.

@n-eiling
Copy link
Copy Markdown
Member

please name the file fpga-miob. The filename should reference the node type the file is an example for.

@IgnoreWarnings
Copy link
Copy Markdown
Collaborator Author

please name the file fpga-miob. The filename should reference the node type the file is an example for.

I renamed the file. 5a24f6b

@stv0g
Copy link
Copy Markdown
Contributor

stv0g commented Mar 22, 2025

The new config fails in the integration test:

=== Testing config: /builds/acs/public/villas/node/etc/examples/nodes/fpga-miob.conf
17:11:54 info memory           Initialize memory sub-system: #hugepages=100
17:11:54 warn memory:mmap      Running in an unprivileged environment. Hugepages are not used!
17:11:54 warn memory           Running in an unprivileged environment. Memory is not locked to RAM!
17:11:54 info test-config      This is VILLASnode v0.11.0-5a24f6b-release-ci (built on Mar 21 2025, 17:10:18)
17:11:54 info signals          Initialize subsystem
17:11:54 info config           Reading configuration from local file: /builds/acs/public/villas/node/etc/examples/nodes/fpga-miob.conf
modprobe: FATAL: Module vfio not found in directory /lib/modules/5.15.0-1073-kvm
17:11:54  err test-config      Kernel module 'vfio' required but could not be loaded. Please load manually!
[FAIL]  test-config (exited with code 255, ran for 2.366331618s)
Summary: 1 of 61 tests failed.
   Timedout: 0
   Skipped: 18
gmake[3]: *** [tests/integration/CMakeFiles/run-integration-tests.dir/build.make:73: tests/integration/CMakeFiles/run-integration-tests] Error 1
gmake[2]: *** [CMakeFiles/Makefile2:1506: tests/integration/CMakeFiles/run-integration-tests.dir/all] Error 2
gmake[1]: *** [CMakeFiles/Makefile2:1513: tests/integration/CMakeFiles/run-integration-tests.dir/rule] Error 2
gmake: *** [Makefile:631: run-integration-tests] Error 2

@IgnoreWarnings
Copy link
Copy Markdown
Collaborator Author

The new config fails in the integration test:

=== Testing config: /builds/acs/public/villas/node/etc/examples/nodes/fpga-miob.conf
17:11:54 info memory           Initialize memory sub-system: #hugepages=100
17:11:54 warn memory:mmap      Running in an unprivileged environment. Hugepages are not used!
17:11:54 warn memory           Running in an unprivileged environment. Memory is not locked to RAM!
17:11:54 info test-config      This is VILLASnode v0.11.0-5a24f6b-release-ci (built on Mar 21 2025, 17:10:18)
17:11:54 info signals          Initialize subsystem
17:11:54 info config           Reading configuration from local file: /builds/acs/public/villas/node/etc/examples/nodes/fpga-miob.conf
modprobe: FATAL: Module vfio not found in directory /lib/modules/5.15.0-1073-kvm
17:11:54  err test-config      Kernel module 'vfio' required but could not be loaded. Please load manually!
[FAIL]  test-config (exited with code 255, ran for 2.366331618s)
Summary: 1 of 61 tests failed.
   Timedout: 0
   Skipped: 18
gmake[3]: *** [tests/integration/CMakeFiles/run-integration-tests.dir/build.make:73: tests/integration/CMakeFiles/run-integration-tests] Error 1
gmake[2]: *** [CMakeFiles/Makefile2:1506: tests/integration/CMakeFiles/run-integration-tests.dir/all] Error 2
gmake[1]: *** [CMakeFiles/Makefile2:1513: tests/integration/CMakeFiles/run-integration-tests.dir/rule] Error 2
gmake: *** [Makefile:631: run-integration-tests] Error 2

@stv0g It looks like the module vfio or vfio-platform can not be loaded on the integration server

@n-eiling
Copy link
Copy Markdown
Member

n-eiling commented Mar 22, 2025

fpga test will always fail because the CI does not have a FPGA. We tested the file offline. Why does fpga.conf work?

@stv0g
Copy link
Copy Markdown
Contributor

stv0g commented Mar 23, 2025

The test will only attempt to parse the configuration. No actual exchange via VFIO needs to take place here. The point is only to verify that the configuration file is semantically correct and can be parsed.

@n-eiling
Copy link
Copy Markdown
Member

the parsing shouldn't try to load the vfio kernel module. @IgnoreWarnings can you check what is happening? Maybe you have to separate the device resolution from the parsing.

@stv0g stv0g changed the title feat: add miob example config feat: Add miob example config Mar 26, 2025
@IgnoreWarnings
Copy link
Copy Markdown
Collaborator Author

I will look into why this fails, it works on hardware.

@stv0g
Copy link
Copy Markdown
Contributor

stv0g commented Mar 27, 2025

@IgnoreWarnings I see you removed the module loading for vfio_platform. The test is now failing on another module: vfio

@IgnoreWarnings
Copy link
Copy Markdown
Collaborator Author

@IgnoreWarnings I see you removed the module loading for vfio_platform. The test is now failing on another module: vfio

Yes, I will look at this the next weeks, should be an easy fix.

@IgnoreWarnings IgnoreWarnings force-pushed the miob-config branch 2 times, most recently from 8c2ffc0 to f10fc2c Compare April 14, 2025 15:38
@IgnoreWarnings
Copy link
Copy Markdown
Collaborator Author

@stv0g
I wondered why this didnt fail with the other fpga config. It seems like that one was ignored somewhere:
=== Skipping config: /builds/acs/public/villas/node/etc/examples/nodes/fpga.conf

The creation of a vfio container, which is passed to the fpga factories, requires vfio module, which cannot be loaded on pipeline. Maybe we should just ignore the integration test?

@stv0g stv0g changed the title feat: Add miob example config Add miob example config Apr 24, 2025
@stv0g
Copy link
Copy Markdown
Contributor

stv0g commented Apr 24, 2025

Okay, thats strange. Ideally, we would be able to defer loading modules to after the configuration parsing.

If thats not possible, we could add another exception. But, I think we should first understand why the modules are loadded so early..

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants