On 5/23/2016 2:24 PM, Yuanhan Liu wrote: > On Fri, May 20, 2016 at 11:37:47AM +0100, Bruce Richardson wrote: >> On Thu, May 19, 2016 at 06:44:44PM +0200, Thomas Monjalon wrote: >>> 2016-05-19 17:28, Ferruh Yigit: >>>> On 5/19/2016 9:33 AM, Thomas Monjalon wrote: >>>>> 2016-05-18 18:10, Ferruh Yigit: >>>>>> Add rte_eth_from_vhost() API to create vhost PMD dynamically from >>>>>> applications. >>>>> >>>>> How is it different from rte_eth_dev_attach() calling rte_eal_vdev_init()? >>>>> >>>> >>>> When used rte_eth_dev_attach(), application also needs to do: >>>> rte_eth_dev_configure() >>>> rte_eth_rx_queue_setup() >>>> rte_eth_tx_queue_setup() >>>> rte_eth_dev_start() >>>> >>>> rte_eth_from_vhost() does these internally, easier to use for applications. >>> >>> This argument is not sufficient. >>> We are not going to add new APIs just for wrapping others. >> >> Why not - if there is a sufficient increase in developer usability by doing >> so? >> Having one API that saves an app from having to call 5 other APIs looks like >> something that should always be given fair consideration. > > Good point. Judging that vhost is not the only virtual device we > support, and it may also look reasonable to add something similar > for others in future (say, IIRC, you proposed two more internally > that also introduced similar APIs). So, instead of introducing a > new API for each such vdev, may we introduce a common one? Say, > a refined rte_eth_dev_attach(), including dev_configure(), > queue_setup(), etc. >
This sounds good to me. If there is not objection, I will send a patch and we can discuss based on patch. Something like: rte_eth_dev_attach_and_setup() Regards, ferruh