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

Program fails with Online config - Intel x710 with DPDK #21

Closed
hassaan-ali-arista opened this issue Oct 12, 2022 · 7 comments
Closed

Program fails with Online config - Intel x710 with DPDK #21

hassaan-ali-arista opened this issue Oct 12, 2022 · 7 comments

Comments

@hassaan-ali-arista
Copy link

admin@AN450:~/retina$ sudo env LD_LIBRARY_PATH=$LD_LIBRARY_PATH RUST_LOG=error ./target/release/client_randoms -c configs/online.toml
Initializing Retina runtime...
Ethdev port_id=0 invalid rss_hf: 0x3afbc, valid value: 0x7ef8
thread 'main' panicked at 'Failed to initialize port.: Failed to configure Port 0', /home/admin/retina/core/src/runtime/online.rs:69:14
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
[2022-10-12T18:28:17Z ERROR retina_core::port] Failed to close Port 0.

@tbarbette
Copy link
Collaborator

I think that device supports only a specific RSS key length. We'll try a programmatic solution, but meanwhile can you change https://github.com/stanford-esrg/retina/blob/47f2721e6b59a2e6ae2c4f584d3f3013ddd6468d/core/src/port/mod.rs to set rss_key_len to 52 and expand the key so it is long enough?

@hassaan-ali-arista
Copy link
Author

I tried it but getting the same error after changing the rss_key_len to 52 and expanding the key.

@thegwan
Copy link
Contributor

thegwan commented Oct 18, 2022

Did you change the rss_hf to the expected value?
https://github.com/stanford-esrg/retina/blob/main/core/src/port/mod.rs#L294

@hassaan-ali-arista
Copy link
Author

Just to confirm, I need to change the following value to what exactly?

port_conf.rx_adv_conf.rss_conf.rss_hf =
(dpdk::ETH_RSS_IP | dpdk::ETH_RSS_TCP | dpdk::ETH_RSS_UDP) as u64;

@thegwan
Copy link
Contributor

thegwan commented Oct 19, 2022

Try 0x7ef8, the valid value indicated in the error message.

@hassaan-ali-arista
Copy link
Author

Yes, I changed it to 0x7ef8. I get the following errors:
admin@AN450:~/retina$ sudo env LD_LIBRARY_PATH=$LD_LIBRARY_PATH RUST_LOG=error ./target/release/log_http -c configs/online.toml
Initializing Retina runtime...
Invalid value for nb_rx_desc(=32768), should be: <= 4096, >= 64, and a product of 32
thread 'main' panicked at 'Failed to initialize port.: Failed to setup up RX queue p0q0r', /home/admin/retina/core/src/runtime/online.rs:69:14
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace
i40e_dev_rx_queue_stop(): RX queue 0 not available or setup
i40e_dev_rx_queue_stop(): RX queue 1 not available or setup
i40e_dev_rx_queue_stop(): RX queue 2 not available or setup
i40e_dev_rx_queue_stop(): RX queue 3 not available or setup
i40e_dev_rx_queue_stop(): RX queue 4 not available or setup
i40e_dev_rx_queue_stop(): RX queue 5 not available or setup
i40e_dev_rx_queue_stop(): RX queue 6 not available or setup
i40e_dev_rx_queue_stop(): RX queue 7 not available or setup
i40e_remove_macvlan_filters(): Failed to remove macvlan filter
[2022-10-19T20:50:30Z ERROR retina_core::port] Failed to close Port 0.

@thegwan
Copy link
Contributor

thegwan commented Oct 20, 2022

The number of descriptors indicated in the config (32768) is too high for your setup, I suggest changing it to within the suggested range. You'll probably also need to adjust the number of queues depending on support from the NIC (this can all be modified in the config file).

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

No branches or pull requests

3 participants