Hi Thomas,

> What is the benefit?

Goal of this patchset is to present application developers with more options to 
fine tune hairpin configuration to their use case.
I added more details regarding the possible benefits and motivation to the 
cover letter of v2.

> How the user knows what to use?
> Why it is not automatic in the driver?

Basic assumption is that the default behavior of the PMD (mlx5 in that specific 
case) is a baseline for hairpin performance.
If that default performance is enough for a user, he will not have to change 
anything in the hairpin queue configuration.
If performance is not satisfying, user will have to experiment with different 
configurations e.g., if decreasing traffic latency is a priority for the user,
user can check how his specific application works when 
`use_locked_device_memory` is used.

Specific performance gains of each of the hairpin options is not a given,
since hairpin performance will be a function of hairpin configuration and flow 
configuration (number of flows, types of flows, etc.).

> Isn't it too much low level for a user?

In my opinion, it's not too low level since purpose of these new options is 
fine tuning the hairpin performance to the specific use case of the application.

> > +      * - When set, PMD will use detault memory type as a backing
> > + storage. Please refer to PMD
> 
> You probably mean "clear".
> Please make lines shorter.
> You should split lines logically, after a dot or at the end of a part.

Fixed in v2.

> > +
> > +     uint32_t reserved:11; /**< Reserved bits. */
> 
> You can insert a blank line here.
> 
> >       struct rte_eth_hairpin_peer peers[RTE_ETH_MAX_HAIRPIN_PEERS];
> > };

Added in v2.

Best regards,
Dariusz Sosnowski

Reply via email to