merlin2011
merlin2011

Reputation: 75589

Are the full set of valid arguments for rte_eal_init documented anywhere?

The dpdk documentation indicates that the rte_eal_init takes arguments argc and argv, but there does not appear to be any documentation about options that this function considers valid, or what their meanings are.

The source code lists the options, but doesn't actually explain what each option means.

Is there some place where these options are documented, and their implications for dpdk made clear?

Upvotes: 3

Views: 4772

Answers (4)

Farhat
Farhat

Reputation: 21

Most people has confusion about DPDK EAL parameters. The EAL parameters are documented here https://doc.dpdk.org/guides/linux_gsg/linux_eal_parameters.html. These EAL parameters are initialized by rte_eal_init().

Other parameters documented in testpmd and other applications are not handled by rte_eal_init(). They are custom parameters and the programmers has to parse and handle them all in the application. You will see getopt_long() api with struct option in testpmd and example applications to parse the custom command line arguments.

They are separated by -- in command line. Options before -- are built-in EAL and options after -- are custom for application.

Upvotes: 0

Shankar Narayanan
Shankar Narayanan

Reputation: 171

One place where most of them seem to be documented is https://doc.dpdk.org/guides/linux_gsg/linux_eal_parameters.html

Upvotes: 1

mindoverflow
mindoverflow

Reputation: 424

Using the -h or --help option with e.g. one of the DPDK example programs lists all options found in the source (from what I could tell). It also prints a short summary of what each option does. Better than nothing or looking around in the source, but for details and especially --vdev, Andriy's answer still stands.

Also, just to make sure because the API reference doesn't explicitly say it at the moment: rte_eal_init() is supposed to get its arguments from the argc and argv arguments of your main() function as seen in the example programs.

Upvotes: 0

Andriy Berestovskyy
Andriy Berestovskyy

Reputation: 8544

Unfortunately, there is no single place describing all possible options. Some basic options are described in the Getting Started Guide.

The most comprehensive list of EAL command line options could be found in Testpmd User Guide.

For some options, like vdev the description could be found inside the PMD's documentation. For example, here is the description of vdev options for libpcap and ring PMDs.

Upvotes: 3

Related Questions