DPDK patches and discussions
 help / color / mirror / Atom feed
From: Bruce Richardson <bruce.richardson@intel.com>
To: Tetsuya Mukawa <mukawa@igel.co.jp>
Cc: dev@dpdk.org, nakajima.yoshihiro@lab.ntt.co.jp,
	masutani.hitoshi@lab.ntt.co.jp
Subject: Re: [dpdk-dev] [RFC PATCH 02/25] ethdev: Remove assumption that port will not be detached
Date: Wed, 29 Oct 2014 15:14:20 +0000	[thread overview]
Message-ID: <20141029145207.GA7084@bricha3-MOBL3> (raw)
In-Reply-To: <1414572576-21371-3-git-send-email-mukawa@igel.co.jp>

On Wed, Oct 29, 2014 at 05:49:13PM +0900, Tetsuya Mukawa wrote:
> To remove assumption, do like followings.
> 
> - Add 'attached' member to rte_eth_dev structure.
>   This member is used for indicating the port is attached, or not.
> - Delete nb_ports, and fix rte_eth_dev_count().
>   The value was used for counting attached ports and also used for indicating
>   maximum attached port number. But if some ports are detached, these 2 values
>   may not be equal. So delete nb_ports, and fix rte_eth_dev_count() to count
>   how many ports are attached actually.
> - Add rte_eth_dev_allocate_new_port().
>   This function is used for allocating new port.
> - Add rte_eth_dev_validate_port().
>   This function is used for check whether the port number is valid and the
>   port is attached.
> - Replace port validation codes to rte_eth_dev_validate_port().
>   nb_ports is deleted in this patch, so use rte_eth_dev_validate_port() to
>   validate a port.
> 
> Signed-off-by: Tetsuya Mukawa <mukawa@igel.co.jp>
> ---
>  lib/librte_ether/rte_ethdev.c | 247 +++++++++++++++++++++++-------------------
>  lib/librte_ether/rte_ethdev.h |   5 +
>  2 files changed, 143 insertions(+), 109 deletions(-)
> 
> diff --git a/lib/librte_ether/rte_ethdev.c b/lib/librte_ether/rte_ethdev.c
> index ff1c769..93d5a42 100644
> --- a/lib/librte_ether/rte_ethdev.c
> +++ b/lib/librte_ether/rte_ethdev.c
> @@ -109,7 +109,6 @@
>  static const char *MZ_RTE_ETH_DEV_DATA = "rte_eth_dev_data";
>  struct rte_eth_dev rte_eth_devices[RTE_MAX_ETHPORTS];
>  static struct rte_eth_dev_data *rte_eth_dev_data = NULL;
> -static uint8_t nb_ports = 0;
>  
>  /* spinlock for eth device callbacks */
>  static rte_spinlock_t rte_eth_dev_cb_lock = RTE_SPINLOCK_INITIALIZER;
> @@ -201,19 +200,33 @@ rte_eth_dev_allocated(const char *name)
>  {
>  	unsigned i;
>  
> -	for (i = 0; i < nb_ports; i++) {
> -		if (strcmp(rte_eth_devices[i].data->name, name) == 0)
> +	for (i = 0; i < RTE_MAX_ETHPORTS; i++)
> +		if (rte_eth_devices[i].attached && strcmp(
> +				rte_eth_dev_data[i].name, name) == 0)
>  			return &rte_eth_devices[i];
> -	}
> +
>  	return NULL;
>  }
>  
> +static uint8_t
> +rte_eth_dev_allocate_new_port(void)
> +{
> +	unsigned i;
> +
> +	for (i = 0; i < RTE_MAX_ETHPORTS; i++)
> +		if (!rte_eth_devices[i].attached)
> +			return i;
> +	return RTE_MAX_ETHPORTS;
> +}
> +
>  struct rte_eth_dev *
>  rte_eth_dev_allocate(const char *name)
>  {
> +	uint8_t port_id;
>  	struct rte_eth_dev *eth_dev;
>  
> -	if (nb_ports == RTE_MAX_ETHPORTS) {
> +	port_id = rte_eth_dev_allocate_new_port();
> +	if (port_id >= RTE_MAX_ETHPORTS) {
>  		PMD_DEBUG_TRACE("Reached maximum number of Ethernet ports\n");
>  		return NULL;
>  	}
> @@ -226,10 +239,11 @@ rte_eth_dev_allocate(const char *name)
>  		return NULL;
>  	}
>  
> -	eth_dev = &rte_eth_devices[nb_ports];
> -	eth_dev->data = &rte_eth_dev_data[nb_ports];
> +	eth_dev = &rte_eth_devices[port_id];
> +	eth_dev->data = &rte_eth_dev_data[port_id];
>  	snprintf(eth_dev->data->name, sizeof(eth_dev->data->name), "%s", name);
> -	eth_dev->data->port_id = nb_ports++;
> +	eth_dev->data->port_id = port_id;
> +	eth_dev->attached = 1;
>  	return eth_dev;
>  }
>  
> @@ -283,7 +297,7 @@ rte_eth_dev_init(struct rte_pci_driver *pci_drv,
>  			(unsigned) pci_dev->id.device_id);
>  	if (rte_eal_process_type() == RTE_PROC_PRIMARY)
>  		rte_free(eth_dev->data->dev_private);
> -	nb_ports--;
> +	eth_dev->attached = 0;
>  	return diag;
>  }
>  
> @@ -308,10 +322,19 @@ rte_eth_driver_register(struct eth_driver *eth_drv)
>  	rte_eal_pci_register(&eth_drv->pci_drv);
>  }
>  
> +static int
> +rte_eth_dev_validate_port(uint8_t port_id)
> +{
> +	if (port_id >= RTE_MAX_ETHPORTS)
> +		return 1;
> +
> +	return !rte_eth_devices[port_id].attached;
> +}
> +
>  int
>  rte_eth_dev_socket_id(uint8_t port_id)
>  {
> -	if (port_id >= nb_ports)
> +	if (rte_eth_dev_validate_port(port_id))
>  		return -1;
>  	return rte_eth_devices[port_id].pci_dev->numa_node;
>  }
> @@ -319,7 +342,13 @@ rte_eth_dev_socket_id(uint8_t port_id)
>  uint8_t
>  rte_eth_dev_count(void)
>  {
> -	return (nb_ports);
> +	unsigned i;
> +	uint8_t nb_ports = 0;
> +
> +	for (i = 0; i < RTE_MAX_ETHPORTS; i++)
> +		if (rte_eth_devices[i].attached)
> +			nb_ports++;
> +	return nb_ports;
>  }
>  

Given that apps may regularly use eth_dev_count, might it not be worthwhile to retain the nb_ports local variable to make this API call just be a variable read. The other APIs to enable/disable individual ports could easily just inc/dec this var as they do so.

/Bruce

  reply	other threads:[~2014-10-29 15:05 UTC|newest]

Thread overview: 176+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-10-29  8:49 [dpdk-dev] [RFC PATCH 00/25] Port Hotplug Framework Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 01/25] eal/pci: Add a new flag indicating a driver can detach devices at runtime Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 02/25] ethdev: Remove assumption that port will not be detached Tetsuya Mukawa
2014-10-29 15:14   ` Bruce Richardson [this message]
2014-10-30  7:24     ` Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 03/25] eal/pci: Replace pci address comparison code by eal_compare_pci_addr Tetsuya Mukawa
2014-10-29 16:28   ` Bruce Richardson
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 04/25] ethdev: Add rte_eth_dev_free to free specified device Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 05/25] eal, ethdev: Add function pointer for closing a device Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 06/25] ethdev: Add rte_eth_dev_shutdown for closing PCI devices Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 07/25] ethdev: Add functions to know which port is attached or detached Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 08/25] ethdev: Add rte_eth_dev_get_addr_by_port Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 09/25] ethdev: Add rte_eth_dev_get_port_by_addr Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 10/25] ethdev: Add rte_eth_dev_get_name_by_port Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 11/25] ethdev: Add rte_eth_dev_check_detachable Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 12/25] ethdev: Change scope of rte_eth_dev_allocated to global Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 13/25] eal/pci: Prevent double registration for devargs_list Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 14/25] eal/pci: Add rte_eal_devargs_remove Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 15/25] eal/pci: Add probe and close function for virtual drivers Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 16/25] eal/pci: Add port hotplug functions for virtual devices Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 17/25] eal/linux/pci: Add functions for unmapping igb_uio resources Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 18/25] eal/pci: Prevent double registrations for pci_device_list Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 19/25] eal/pci: Change scope of rte_eal_pci_scan to global Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 20/25] eal/pci: Add rte_eal_pci_close_one_driver Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 21/25] eal/pci: Fix pci_probe_all_drivers to share code with closing function Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 22/25] eal/pci: Add pci_close_all_drivers Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 23/25] eal/pci: Add rte_eal_pci_probe_one and rte_eal_pci_close_one Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 24/25] eal/pci: Add port hotplug functions for physical devices Tetsuya Mukawa
2014-10-29  8:49 ` [dpdk-dev] [RFC PATCH 25/25] eal: Enable port hotplug framework in Linux Tetsuya Mukawa
2014-11-04  3:45 ` [dpdk-dev] [RFC PATCH v2 00/25] Port Hotplug Framework Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 01/28] eal/pci: Add a new flag indicating a driver can detach devices at runtime Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 02/28] ethdev: Remove assumption that port will not be detached Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 03/28] eal/pci: Replace pci address comparison code by eal_compare_pci_addr Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 04/28] ethdev: Add rte_eth_dev_free to free specified device Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 05/28] eal, ethdev: Add function pointer for closing a device Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 06/28] ethdev: Add rte_eth_dev_shutdown for closing PCI devices Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 07/28] ethdev: Add functions to know which port is attached or detached Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 08/28] ethdev: Add rte_eth_dev_get_addr_by_port Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 09/28] ethdev: Add rte_eth_dev_get_port_by_addr Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 10/28] ethdev: Add rte_eth_dev_get_name_by_port Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 11/28] ethdev: Add rte_eth_dev_check_detachable Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 12/28] ethdev: Change scope of rte_eth_dev_allocated to global Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 13/28] eal/pci: Prevent double registration for devargs_list Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 14/28] eal/pci: Add rte_eal_devargs_remove Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 15/28] eal/pci: Add probe and close function for virtual drivers Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 16/28] eal/pci: Add port hotplug functions for virtual devices Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 17/28] eal/linux/pci: Add functions for unmapping igb_uio resources Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 18/28] eal/pci: Prevent double registrations for pci_device_list Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 19/28] eal/pci: Change scope of rte_eal_pci_scan to global Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 20/28] eal/pci: Add rte_eal_pci_close_one_driver Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 21/28] eal/pci: Fix pci_probe_all_drivers to share code with closing function Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 22/28] eal/pci: Add pci_close_all_drivers Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 23/28] eal/pci: Add rte_eal_pci_probe_one and rte_eal_pci_close_one Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 24/28] eal/pci: Add port hotplug functions for physical devices Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 25/28] eal: Enable port hotplug framework in Linux Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 26/28] librte_pmd_pcap: Add support for port hotplug Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 27/28] testpmd: Add support for the port hotplug framework Tetsuya Mukawa
2014-11-04  3:45   ` [dpdk-dev] [RFC PATCH v2 28/28] librte_pmd_e1000: Add workaround to test " Tetsuya Mukawa
2014-11-18  8:55   ` [dpdk-dev] [RFC PATCH v2 00/25] Port Hotplug Framework Tetsuya Mukawa
2014-11-20  9:06 ` [dpdk-dev] [PATCH " Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 01/25] eal/pci: Add a new flag indicating a driver can detach devices at runtime Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 02/25] ethdev: Remove assumption that port will not be detached Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 03/25] eal/pci: Replace pci address comparison code by eal_compare_pci_addr Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 04/25] ethdev: Add rte_eth_dev_free to free specified device Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 05/25] eal, ethdev: Add function pointer for closing a device Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 06/25] ethdev: Add rte_eth_dev_shutdown for closing PCI devices Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 07/25] ethdev: Add functions to know which port is attached or detached Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 08/25] ethdev: Add rte_eth_dev_get_addr_by_port Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 09/25] ethdev: Add rte_eth_dev_get_port_by_addr Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 10/25] ethdev: Add rte_eth_dev_get_name_by_port Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 11/25] ethdev: Add rte_eth_dev_check_detachable Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 12/25] ethdev: Change scope of rte_eth_dev_allocated to global Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 13/25] eal/pci: Prevent double registration for devargs_list Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 14/25] eal/pci: Add rte_eal_devargs_remove Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 15/25] eal/pci: Add probe and close function for virtual drivers Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 16/25] eal/pci: Add port hotplug functions for virtual devices Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 17/25] eal/linux/pci: Add functions for unmapping igb_uio resources Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 18/25] eal/pci: Prevent double registrations for pci_device_list Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 19/25] eal/pci: Change scope of rte_eal_pci_scan to global Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 20/25] eal/pci: Add rte_eal_pci_close_one_driver Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 21/25] eal/pci: Fix pci_probe_all_drivers to share code with closing function Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 22/25] eal/pci: Add pci_close_all_drivers Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 23/25] eal/pci: Add rte_eal_pci_probe_one and rte_eal_pci_close_one Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 24/25] eal/pci: Add port hotplug functions for physical devices Tetsuya Mukawa
2014-11-20  9:06   ` [dpdk-dev] [PATCH 25/25] eal: Enable port hotplug framework in Linux Tetsuya Mukawa
2014-12-09  3:42   ` [dpdk-dev] [PATCH v2 00/28] Port Hotplug Framework Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 01/28] eal/pci: Add a new flag indicating a driver can detach devices at runtime Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 02/28] ethdev: Remove assumption that port will not be detached Tetsuya Mukawa
2014-12-09  5:07       ` Zhang, Helin
2014-12-09  6:06         ` Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 03/28] eal/pci: Replace pci address comparison code by eal_compare_pci_addr Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 04/28] ethdev: Add rte_eth_dev_free to free specified device Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 05/28] eal, ethdev: Add function pointer for closing a device Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 06/28] ethdev: Add rte_eth_dev_shutdown for closing PCI devices Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 07/28] ethdev: Add functions to know which port is attached or detached Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 08/28] ethdev: Add rte_eth_dev_get_addr_by_port Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 09/28] ethdev: Add rte_eth_dev_get_port_by_addr Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 10/28] ethdev: Add rte_eth_dev_get_name_by_port Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 11/28] ethdev: Add rte_eth_dev_check_detachable Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 12/28] ethdev: Change scope of rte_eth_dev_allocated to global Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 13/28] eal/pci: Prevent double registration for devargs_list Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 14/28] eal/pci: Add rte_eal_devargs_remove Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 15/28] eal/pci: Add probe and close function for virtual drivers Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 16/28] eal/pci: Add port hotplug functions for virtual devices Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 17/28] eal/linux/pci: Add functions for unmapping igb_uio resources Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 18/28] eal/pci: Prevent double registrations for pci_device_list Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 19/28] eal/pci: Change scope of rte_eal_pci_scan to global Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 20/28] eal/pci: Add rte_eal_pci_close_one_driver Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 21/28] eal/pci: Fix pci_probe_all_drivers to share code with closing function Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 22/28] eal/pci: Add pci_close_all_drivers Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 23/28] eal/pci: Add rte_eal_pci_probe_one and rte_eal_pci_close_one Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 24/28] eal/pci: Add port hotplug functions for physical devices Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 25/28] eal/pci: Remove pci_probe/close_all_drivers() Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 26/28] eal/pci: Add rte_eal_dev_attach/detach() functions Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 27/28] eal/pci: Remove rte_eal_dev_attach/detach_pdev() and rte_eal_dev_attach/detach_vdev() Tetsuya Mukawa
2014-12-09  3:42     ` [dpdk-dev] [PATCH v2 28/28] eal: Enable port hotplug framework in Linux Tetsuya Mukawa
2014-12-09  3:44   ` [dpdk-dev] [PATCH v2] librte_pmd_pcap: Add port hotplug support Tetsuya Mukawa
2014-12-09  3:45   ` [dpdk-dev] [PATCH v2] testpmd: " Tetsuya Mukawa
2014-12-09  6:30   ` [dpdk-dev] [PATCH v3 00/28] Port Hotplug Framework Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 01/28] eal/pci: Add a new flag indicating a driver can detach devices at runtime Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 02/28] ethdev: Remove assumption that port will not be detached Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 03/28] eal/pci: Replace pci address comparison code by eal_compare_pci_addr Tetsuya Mukawa
2014-12-09 14:22       ` Qiu, Michael
2014-12-11  3:11         ` Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 04/28] ethdev: Add rte_eth_dev_free to free specified device Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 05/28] eal, ethdev: Add function pointer for closing a device Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 06/28] ethdev: Add rte_eth_dev_shutdown for closing PCI devices Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 07/28] ethdev: Add functions to know which port is attached or detached Tetsuya Mukawa
2014-12-09 14:39       ` Qiu, Michael
2014-12-11  3:12         ` Tetsuya Mukawa
2014-12-11  3:35           ` Qiu, Michael
2014-12-11  4:57             ` Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 08/28] ethdev: Add rte_eth_dev_get_addr_by_port Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 09/28] ethdev: Add rte_eth_dev_get_port_by_addr Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 10/28] ethdev: Add rte_eth_dev_get_name_by_port Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 11/28] ethdev: Add rte_eth_dev_check_detachable Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 12/28] ethdev: Change scope of rte_eth_dev_allocated to global Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 13/28] eal/pci: Prevent double registration for devargs_list Tetsuya Mukawa
2014-12-09 14:55       ` Qiu, Michael
2014-12-11  4:57         ` Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 14/28] eal/pci: Add rte_eal_devargs_remove Tetsuya Mukawa
2014-12-09 15:36       ` Qiu, Michael
2014-12-11  1:40         ` Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 15/28] eal/pci: Add probe and close function for virtual drivers Tetsuya Mukawa
2014-12-09 15:51       ` Qiu, Michael
2014-12-11  3:14         ` Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 16/28] eal/pci: Add port hotplug functions for virtual devices Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 17/28] eal/linux/pci: Add functions for unmapping igb_uio resources Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 18/28] eal/pci: Prevent double registrations for pci_device_list Tetsuya Mukawa
2014-12-11  3:24       ` Qiu, Michael
2014-12-11  5:33         ` Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 19/28] eal/pci: Change scope of rte_eal_pci_scan to global Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 20/28] eal/pci: Add rte_eal_pci_close_one_driver Tetsuya Mukawa
2014-12-11  3:41       ` Qiu, Michael
2014-12-11  9:55         ` Bruce Richardson
2014-12-11 15:45           ` Qiu, Michael
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 21/28] eal/pci: Fix pci_probe_all_drivers to share code with closing function Tetsuya Mukawa
2014-12-11  3:50       ` Qiu, Michael
2014-12-11  4:46         ` Qiu, Michael
2014-12-11  4:59           ` Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 22/28] eal/pci: Add pci_close_all_drivers Tetsuya Mukawa
2014-12-11  5:23       ` Qiu, Michael
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 23/28] eal/pci: Add rte_eal_pci_probe_one and rte_eal_pci_close_one Tetsuya Mukawa
2014-12-11  5:54       ` Qiu, Michael
2014-12-11  7:20         ` Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 24/28] eal/pci: Add port hotplug functions for physical devices Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 25/28] eal/pci: Remove pci_probe/close_all_drivers() Tetsuya Mukawa
2014-12-11  6:02       ` Qiu, Michael
2014-12-11  7:20         ` Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 26/28] eal/pci: Add rte_eal_dev_attach/detach() functions Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 27/28] eal/pci: Remove rte_eal_dev_attach/detach_pdev() and rte_eal_dev_attach/detach_vdev() Tetsuya Mukawa
2014-12-09  6:30     ` [dpdk-dev] [PATCH v3 28/28] eal: Enable port hotplug framework in Linux Tetsuya Mukawa
2014-12-09  6:32   ` [dpdk-dev] [PATCH v3] librte_pmd_pcap: Add port hotplug support Tetsuya Mukawa
2014-12-09  6:33   ` [dpdk-dev] [PATCH v3] testpmd: " Tetsuya Mukawa
2014-11-20  9:22 ` [dpdk-dev] [PATCH] librte_pmd_pcap: " Tetsuya Mukawa
2014-11-20  9:22 ` [dpdk-dev] [PATCH] testpmd: " Tetsuya Mukawa

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20141029145207.GA7084@bricha3-MOBL3 \
    --to=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=masutani.hitoshi@lab.ntt.co.jp \
    --cc=mukawa@igel.co.jp \
    --cc=nakajima.yoshihiro@lab.ntt.co.jp \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).