From: "Tan, Jianfeng" <jianfeng.tan@intel.com>
To: Jeff Guo <jia.guo@intel.com>,
stephen@networkplumber.org, bruce.richardson@intel.com,
ferruh.yigit@intel.com, konstantin.ananyev@intel.com,
gaetan.rivet@6wind.com, jingjing.wu@intel.com,
thomas@monjalon.net, motih@mellanox.com,
harry.van.haaren@intel.com
Cc: jblunck@infradead.org, shreyansh.jain@nxp.com, dev@dpdk.org,
helin.zhang@intel.com
Subject: Re: [dpdk-dev] [PATCH V16 4/4] app/testpmd: enable device hotplug monitoring
Date: Thu, 29 Mar 2018 00:41:58 +0800 [thread overview]
Message-ID: <dbb20874-e627-ed04-57ce-30b289e394a9@intel.com> (raw)
In-Reply-To: <1522063256-3997-5-git-send-email-jia.guo@intel.com>
On 3/26/2018 7:20 PM, Jeff Guo wrote:
> Use testpmd for example, to show an application how to use device event
> mechanism to monitor the hotplug event, involve both hot removal event
involve -> including
> and the hot insertion event.
>
> The process is that, testpmd first enable hotplug monitoring and register
> the user's callback, when device being hotplug insertion or hotplug
> removal, the eal monitor the event and call user's callbacks, the
> application according their hot plug policy to detach or attach the device
> from the bus.
You are not exactly describing what's done in this example. From what I
see, you only implement hot-unplug. For hot-plug, we will need to
register callback with dev_name of NULL.
And without the other patch series, this only works without starting
datapath.
>
> Signed-off-by: Jeff Guo <jia.guo@intel.com>
> ---
> 1.modify log and patch description.
> ---
> app/test-pmd/parameters.c | 5 +-
> app/test-pmd/testpmd.c | 195 +++++++++++++++++++++++++++++++++++++++++++++-
> app/test-pmd/testpmd.h | 11 +++
> 3 files changed, 209 insertions(+), 2 deletions(-)
>
> diff --git a/app/test-pmd/parameters.c b/app/test-pmd/parameters.c
> index 97d22b8..825d602 100644
> --- a/app/test-pmd/parameters.c
> +++ b/app/test-pmd/parameters.c
> @@ -186,6 +186,7 @@ usage(char* progname)
> printf(" --flow-isolate-all: "
> "requests flow API isolated mode on all ports at initialization time.\n");
> printf(" --tx-offloads=0xXXXXXXXX: hexadecimal bitmask of TX queue offloads\n");
> + printf(" --hot-plug: enalbe hot plug for device.\n");
> }
>
> #ifdef RTE_LIBRTE_CMDLINE
> @@ -621,6 +622,7 @@ launch_args_parse(int argc, char** argv)
> { "print-event", 1, 0, 0 },
> { "mask-event", 1, 0, 0 },
> { "tx-offloads", 1, 0, 0 },
> + { "hot-plug", 0, 0, 0 },
> { 0, 0, 0, 0 },
> };
>
> @@ -1102,7 +1104,8 @@ launch_args_parse(int argc, char** argv)
> rte_exit(EXIT_FAILURE,
> "invalid mask-event argument\n");
> }
> -
> + if (!strcmp(lgopts[opt_idx].name, "hot-plug"))
> + hot_plug = 1;
> break;
> case 'h':
> usage(argv[0]);
> diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
> index 4c0e258..bb1ac8f 100644
> --- a/app/test-pmd/testpmd.c
> +++ b/app/test-pmd/testpmd.c
> @@ -12,6 +12,7 @@
> #include <sys/mman.h>
> #include <sys/types.h>
> #include <errno.h>
> +#include <stdbool.h>
>
> #include <sys/queue.h>
> #include <sys/stat.h>
> @@ -284,6 +285,9 @@ uint8_t lsc_interrupt = 1; /* enabled by default */
> */
> uint8_t rmv_interrupt = 1; /* enabled by default */
>
> +
> +uint8_t hot_plug = 0; /**< hotplug disabled by default. */
> +
> /*
> * Display or mask ether events
> * Default to all events except VF_MBOX
> @@ -384,6 +388,8 @@ uint8_t bitrate_enabled;
> struct gro_status gro_ports[RTE_MAX_ETHPORTS];
> uint8_t gro_flush_cycles = GRO_DEFAULT_FLUSH_CYCLES;
>
> +static struct hotplug_request_list hp_list;
> +
> /* Forward function declarations */
> static void map_port_queue_stats_mapping_registers(portid_t pi,
> struct rte_port *port);
> @@ -391,6 +397,14 @@ static void check_all_ports_link_status(uint32_t port_mask);
> static int eth_event_callback(portid_t port_id,
> enum rte_eth_event_type type,
> void *param, void *ret_param);
> +static int eth_dev_event_callback(char *device_name,
> + enum rte_dev_event_type type,
> + void *param);
> +static int eth_dev_event_callback_register(portid_t port_id);
> +static bool in_hotplug_list(const char *dev_name);
> +
> +static int hotplug_list_add(struct rte_device *device,
> + enum rte_kernel_driver device_kdrv);
>
> /*
> * Check if all the ports are started.
> @@ -1853,6 +1867,27 @@ reset_port(portid_t pid)
> printf("Done\n");
> }
>
> +static int
> +eth_dev_event_callback_register(portid_t port_id)
> +{
> + int diag;
> + char device_name[128];
> +
> + snprintf(device_name, sizeof(device_name),
> + "%s", rte_eth_devices[port_id].device->name);
> +
> + /* register the dev_event callback */
> +
> + diag = rte_dev_callback_register(device_name,
> + eth_dev_event_callback, (void *)(intptr_t)port_id);
> + if (diag) {
> + printf("Failed to setup dev_event callback\n");
> + return -1;
> + }
> +
> + return 0;
> +}
> +
> void
> attach_port(char *identifier)
> {
> @@ -1869,6 +1904,8 @@ attach_port(char *identifier)
> if (rte_eth_dev_attach(identifier, &pi))
> return;
>
> + eth_dev_event_callback_register(pi);
What's the difference with below one?
> +
> socket_id = (unsigned)rte_eth_dev_socket_id(pi);
> /* if socket_id is invalid, set to 0 */
> if (check_socket_id(socket_id) < 0)
> @@ -1880,6 +1917,12 @@ attach_port(char *identifier)
>
> ports[pi].port_status = RTE_PORT_STOPPED;
>
> + if (hot_plug) {
> + hotplug_list_add(rte_eth_devices[pi].device,
> + rte_eth_devices[pi].data->kdrv);
> + eth_dev_event_callback_register(pi);
> + }
> +
> printf("Port %d is attached. Now total ports is %d\n", pi, nb_ports);
> printf("Done\n");
> }
> @@ -1906,6 +1949,12 @@ detach_port(portid_t port_id)
>
> nb_ports = rte_eth_dev_count();
>
> + if (hot_plug) {
> + hotplug_list_add(rte_eth_devices[port_id].device,
> + rte_eth_devices[port_id].data->kdrv);
> + eth_dev_event_callback_register(port_id);
> + }
> +
> printf("Port '%s' is detached. Now total ports is %d\n",
> name, nb_ports);
> printf("Done\n");
> @@ -1929,6 +1978,9 @@ pmd_test_exit(void)
> close_port(pt_id);
> }
> }
> +
> + rte_dev_event_monitor_stop();
> +
> printf("\nBye...\n");
> }
>
> @@ -2013,6 +2065,49 @@ rmv_event_callback(void *arg)
> dev->device->name);
> }
>
> +static void
> +rmv_dev_event_callback(void *arg)
> +{
> + char name[RTE_ETH_NAME_MAX_LEN];
> + uint8_t port_id = (intptr_t)arg;
> +
> + rte_eal_alarm_cancel(rmv_dev_event_callback, arg);
> +
> + RTE_ETH_VALID_PORTID_OR_RET(port_id);
> + printf("removing port id:%u\n", port_id);
> +
> + if (!in_hotplug_list(rte_eth_devices[port_id].device->name))
> + return;
> +
> + stop_packet_forwarding();
> +
> + stop_port(port_id);
> + close_port(port_id);
> + if (rte_eth_dev_detach(port_id, name)) {
> + RTE_LOG(ERR, USER1, "Failed to detach port '%s'\n", name);
> + return;
> + }
> +
> + nb_ports = rte_eth_dev_count();
> +
> + printf("Port '%s' is detached. Now total ports is %d\n",
> + name, nb_ports);
> +}
> +
> +static void
> +add_dev_event_callback(void *arg)
> +{
> + char *dev_name = (char *)arg;
> +
> + rte_eal_alarm_cancel(add_dev_event_callback, arg);
> +
> + if (!in_hotplug_list(dev_name))
> + return;
> +
> + RTE_LOG(ERR, EAL, "add device: %s\n", dev_name);
> + attach_port(dev_name);
> +}
> +
> /* This function is used by the interrupt thread */
> static int
> eth_event_callback(portid_t port_id, enum rte_eth_event_type type, void *param,
> @@ -2059,6 +2154,86 @@ eth_event_callback(portid_t port_id, enum rte_eth_event_type type, void *param,
> return 0;
> }
>
> +static bool
> +in_hotplug_list(const char *dev_name)
> +{
> + struct hotplug_request *hp_request = NULL;
> +
> + TAILQ_FOREACH(hp_request, &hp_list, next) {
> + if (!strcmp(hp_request->dev_name, dev_name))
> + break;
> + }
> +
> + if (hp_request)
> + return true;
> +
> + return false;
> +}
> +
> +static int
> +hotplug_list_add(struct rte_device *device, enum rte_kernel_driver device_kdrv)
> +{
> + struct hotplug_request *hp_request;
> +
> + hp_request = rte_zmalloc("hoplug request",
> + sizeof(*hp_request), 0);
> + if (hp_request == NULL) {
> + fprintf(stderr, "%s can not alloc memory\n",
> + __func__);
> + return -ENOMEM;
> + }
> +
> + hp_request->dev_name = device->name;
> + hp_request->dev_kdrv = device_kdrv;
> +
> + TAILQ_INSERT_TAIL(&hp_list, hp_request, next);
> +
> + return 0;
> +}
> +
> +/* This function is used by the interrupt thread */
> +static int
> +eth_dev_event_callback(char *device_name, enum rte_dev_event_type type,
> + void *arg)
> +{
> + static const char * const event_desc[] = {
> + [RTE_DEV_EVENT_UNKNOWN] = "Unknown",
> + [RTE_DEV_EVENT_ADD] = "add",
> + [RTE_DEV_EVENT_REMOVE] = "remove",
> + };
> + char *dev_name = malloc(strlen(device_name) + 1);
> +
> + strcpy(dev_name, device_name);
strdup is easier?
> +
> + if (type >= RTE_DEV_EVENT_MAX) {
> + fprintf(stderr, "%s called upon invalid event %d\n",
> + __func__, type);
> + fflush(stderr);
> + } else if (event_print_mask & (UINT32_C(1) << type)) {
> + printf("%s event\n",
> + event_desc[type]);
> + fflush(stdout);
> + }
> +
> + switch (type) {
> + case RTE_DEV_EVENT_REMOVE:
> + if (rte_eal_alarm_set(100000,
> + rmv_dev_event_callback, arg))
Why not rmv_dev_event_callback directly?
Besides, the name of rmv_dev_event_callback is really confusing. It's
not a dev event callback.
> + fprintf(stderr,
> + "Could not set up deferred device removal\n");
> + break;
> + case RTE_DEV_EVENT_ADD:
> + if (rte_eal_alarm_set(100000,
> + add_dev_event_callback, dev_name))
> + fprintf(stderr,
> + "Could not set up deferred device add\n");
Ditto.
> + break;
> + default:
> + break;
> + }
> + return 0;
> +}
> +
> static int
> set_tx_queue_stats_mapping_registers(portid_t port_id, struct rte_port *port)
> {
> @@ -2474,8 +2649,9 @@ signal_handler(int signum)
> int
> main(int argc, char** argv)
> {
> - int diag;
> + int diag;
> portid_t port_id;
> + int ret;
>
> signal(SIGINT, signal_handler);
> signal(SIGTERM, signal_handler);
> @@ -2543,6 +2719,23 @@ main(int argc, char** argv)
> nb_rxq, nb_txq);
>
> init_config();
> +
> + if (hot_plug) {
> + /* enable hot plug monitoring */
> + ret = rte_dev_event_monitor_start();
> + if (ret) {
> + rte_errno = EINVAL;
> + return -1;
> + }
> + if (TAILQ_EMPTY(&hp_list))
> + TAILQ_INIT(&hp_list);
> + RTE_ETH_FOREACH_DEV(port_id) {
> + hotplug_list_add(rte_eth_devices[port_id].device,
> + rte_eth_devices[port_id].data->kdrv);
> + eth_dev_event_callback_register(port_id);
> + }
Why not monitoring all devices with dev_name of NULL? It makes things
much easier. And we can also monitor the hot-plug event.
> + }
> +
> if (start_port(RTE_PORT_ALL) != 0)
> rte_exit(EXIT_FAILURE, "Start ports failed\n");
>
> diff --git a/app/test-pmd/testpmd.h b/app/test-pmd/testpmd.h
> index 153abea..c619e11 100644
> --- a/app/test-pmd/testpmd.h
> +++ b/app/test-pmd/testpmd.h
> @@ -63,6 +63,15 @@ typedef uint16_t streamid_t;
> #define TM_MODE 0
> #endif
>
> +struct hotplug_request {
> + TAILQ_ENTRY(hotplug_request) next; /**< Callbacks list */
> + const char *dev_name; /* request device name */
> + enum rte_kernel_driver dev_kdrv; /* kernel driver binded */
> +};
> +
> +/** @internal Structure to keep track of registered callbacks */
> +TAILQ_HEAD(hotplug_request_list, hotplug_request);
> +
> enum {
> PORT_TOPOLOGY_PAIRED,
> PORT_TOPOLOGY_CHAINED,
> @@ -319,6 +328,8 @@ extern volatile int test_done; /* stop packet forwarding when set to 1. */
> extern uint8_t lsc_interrupt; /**< disabled by "--no-lsc-interrupt" parameter */
> extern uint8_t rmv_interrupt; /**< disabled by "--no-rmv-interrupt" parameter */
> extern uint32_t event_print_mask;
> +extern uint8_t hot_plug; /**< enable by "--hot-plug" parameter */
> +
> /**< set by "--print-event xxxx" and "--mask-event xxxx parameters */
>
> #ifdef RTE_LIBRTE_IXGBE_BYPASS
next prev parent reply other threads:[~2018-03-28 16:42 UTC|newest]
Thread overview: 494+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-05-28 15:44 [dpdk-dev] [RFC] Add hot plug event in rte eal interrupt and inplement it in i40e driver Jeff Guo
2017-05-30 7:14 ` Gaëtan Rivet
2017-06-07 7:40 ` Wu, Jingjing
2017-06-15 21:22 ` Gaëtan Rivet
2017-06-21 2:50 ` Guo, Jia
2017-06-29 17:27 ` Stephen Hemminger
2017-06-30 3:36 ` Wu, Jingjing
2017-06-07 7:27 ` Wu, Jingjing
2017-06-28 11:07 ` [dpdk-dev] [PATCH v2 1/2] eal: add uevent api for hot plug Jeff Guo
2017-06-28 11:07 ` [dpdk-dev] [PATCH v2 2/2] net/i40e: add hot plug monitor in i40e Jeff Guo
2017-06-29 1:41 ` Wu, Jingjing
2017-06-29 4:31 ` Guo, Jia
2017-06-29 3:34 ` Stephen Hemminger
2017-06-29 4:48 ` Wu, Jingjing
2017-06-29 7:47 ` Guo, Jia
2017-06-29 4:37 ` [dpdk-dev] [PATCH v3 0/2] add uevent api for hot plug Jeff Guo
2017-06-29 4:37 ` [dpdk-dev] [PATCH v3 1/2] eal: " Jeff Guo
2017-06-30 3:38 ` Wu, Jingjing
2017-06-29 4:37 ` [dpdk-dev] [PATCH v3 2/2] net/i40e: add hot plug monitor in i40e Jeff Guo
2017-06-30 3:38 ` Wu, Jingjing
2018-04-13 8:30 ` [dpdk-dev] [PATCH V22 0/4] add device event monitor framework Jeff Guo
2018-04-13 8:30 ` [dpdk-dev] [PATCH V22 1/4] eal: add device event handle in interrupt thread Jeff Guo
2018-04-13 8:30 ` [dpdk-dev] [PATCH V22 2/4] eal: add device event monitor framework Jeff Guo
2018-04-13 8:30 ` [dpdk-dev] [PATCH V22 3/4] eal/linux: uevent parse and process Jeff Guo
2018-04-13 8:30 ` [dpdk-dev] [PATCH V22 4/4] app/testpmd: enable device hotplug monitoring Jeff Guo
2018-04-13 10:03 ` [dpdk-dev] [PATCH V22 0/4] add device event monitor framework Thomas Monjalon
2018-04-18 13:38 ` [dpdk-dev] [PATCH V20 0/4] add hot plug recovery mechanism Jeff Guo
2018-04-18 13:38 ` [dpdk-dev] [PATCH V20 1/4] bus/pci: introduce device hot unplug handle Jeff Guo
2018-04-20 10:32 ` Ananyev, Konstantin
2018-05-03 3:05 ` Guo, Jia
2018-04-18 13:38 ` [dpdk-dev] [PATCH V20 2/4] eal: add failure handler mechanism for hot plug Jeff Guo
2018-04-19 1:30 ` Zhang, Qi Z
2018-04-20 11:14 ` Ananyev, Konstantin
2018-05-03 3:13 ` Guo, Jia
2018-04-20 16:16 ` Ananyev, Konstantin
2018-05-03 3:17 ` Guo, Jia
2018-04-18 13:38 ` [dpdk-dev] [PATCH V20 3/4] igb_uio: fix uio release issue when hot unplug Jeff Guo
2018-04-18 13:38 ` [dpdk-dev] [PATCH V20 4/4] app/testpmd: show example to handler " Jeff Guo
2018-05-03 7:25 ` Matan Azrad
2018-05-03 9:35 ` Guo, Jia
2018-05-03 11:27 ` Matan Azrad
2018-05-03 8:57 ` [dpdk-dev] [PATCH V21 0/4] hot plug recovery mechanism Jeff Guo
2018-05-03 8:57 ` [dpdk-dev] [PATCH V21 1/4] bus/pci: handle device hot unplug Jeff Guo
2018-05-03 8:57 ` [dpdk-dev] [PATCH V21 2/4] eal: add failure handle mechanism for hot plug Jeff Guo
2018-05-03 8:57 ` [dpdk-dev] [PATCH V21 3/4] igb_uio: fix uio release issue when hot unplug Jeff Guo
2018-05-03 8:57 ` [dpdk-dev] [PATCH V21 4/4] app/testpmd: show example to handle " Jeff Guo
2018-05-16 14:30 ` Iremonger, Bernard
2018-05-03 10:48 ` [dpdk-dev] [PATCH V21 0/4] hot plug recovery mechanism Jeff Guo
2018-05-03 10:48 ` [dpdk-dev] [PATCH V21 1/4] bus/pci: handle device hot unplug Jeff Guo
2018-05-03 10:48 ` [dpdk-dev] [PATCH V21 2/4] eal: add failure handle mechanism for hot plug Jeff Guo
2018-05-04 15:56 ` Ananyev, Konstantin
2018-05-08 14:57 ` Guo, Jia
2018-05-08 15:19 ` Ananyev, Konstantin
2018-05-03 10:48 ` [dpdk-dev] [PATCH V21 3/4] igb_uio: fix uio release issue when hot unplug Jeff Guo
2018-05-03 10:48 ` [dpdk-dev] [PATCH V21 4/4] app/testpmd: show example to handle " Jeff Guo
2018-06-14 12:59 ` Iremonger, Bernard
2018-06-15 8:32 ` Guo, Jia
2018-06-22 11:51 ` [dpdk-dev] [PATCH v2 0/4] hot plug failure handle mechanism Jeff Guo
2018-06-22 11:51 ` [dpdk-dev] [PATCH v2 1/4] bus/pci: handle device hot unplug Jeff Guo
2018-06-22 12:59 ` Gaëtan Rivet
2018-06-26 15:30 ` Guo, Jia
2018-06-22 11:51 ` [dpdk-dev] [PATCH v2 2/4] eal: add failure handle mechanism for hot plug Jeff Guo
2018-06-22 11:51 ` [dpdk-dev] [PATCH v2 3/4] igb_uio: fix uio release issue when hot unplug Jeff Guo
2018-06-22 11:51 ` [dpdk-dev] [PATCH v2 4/4] app/testpmd: show example to handle " Jeff Guo
2018-06-26 10:06 ` Iremonger, Bernard
2018-06-26 11:58 ` Matan Azrad
2018-06-26 15:33 ` Guo, Jia
2018-06-26 15:36 ` [dpdk-dev] [PATCH V3 1/4] bus/pci: handle device " Jeff Guo
2018-06-26 15:36 ` [dpdk-dev] [PATCH V3 2/4] eal: add failure handle mechanism for hot plug Jeff Guo
2018-06-26 15:36 ` [dpdk-dev] [PATCH V3 3/4] igb_uio: fix uio release issue when hot unplug Jeff Guo
2018-06-26 15:36 ` [dpdk-dev] [PATCH V3 4/4] app/testpmd: show example to handle " Jeff Guo
2018-06-26 17:07 ` Matan Azrad
2018-06-27 3:56 ` Guo, Jia
2018-06-27 6:05 ` Matan Azrad
2018-06-29 10:26 ` Guo, Jia
2018-06-29 10:30 ` [dpdk-dev] [PATCH V4 0/9] hot plug failure handle mechanism Jeff Guo
2018-06-29 10:30 ` [dpdk-dev] [PATCH V4 1/9] bus: introduce hotplug failure handler Jeff Guo
2018-07-03 22:21 ` Thomas Monjalon
2018-07-04 7:16 ` Guo, Jia
2018-07-04 7:55 ` Thomas Monjalon
2018-07-05 6:23 ` Guo, Jia
2018-07-05 8:30 ` Thomas Monjalon
2018-06-29 10:30 ` [dpdk-dev] [PATCH V4 2/9] bus/pci: implement hotplug handler operation Jeff Guo
2018-06-29 10:30 ` [dpdk-dev] [PATCH V4 3/9] bus: introduce sigbus handler Jeff Guo
2018-07-10 21:55 ` Stephen Hemminger
2018-07-11 2:15 ` Jeff Guo
2018-06-29 10:30 ` [dpdk-dev] [PATCH V4 4/9] bus/pci: implement sigbus handler operation Jeff Guo
2018-06-29 10:30 ` [dpdk-dev] [PATCH V4 5/9] bus: add helper to handle sigbus Jeff Guo
2018-06-29 10:51 ` Ananyev, Konstantin
2018-06-29 11:23 ` Guo, Jia
2018-06-29 12:21 ` Ananyev, Konstantin
2018-06-29 12:52 ` Gaëtan Rivet
2018-07-03 11:24 ` Guo, Jia
2018-06-29 10:30 ` [dpdk-dev] [PATCH V4 6/9] eal: add failure handle mechanism for hot plug Jeff Guo
2018-06-29 10:49 ` Ananyev, Konstantin
2018-06-29 11:15 ` Guo, Jia
2018-06-29 12:06 ` Ananyev, Konstantin
2018-06-29 10:30 ` [dpdk-dev] [PATCH V4 7/9] igb_uio: fix uio release issue when hot unplug Jeff Guo
2018-07-03 12:12 ` Ferruh Yigit
2018-06-29 10:30 ` [dpdk-dev] [PATCH V4 8/9] app/testpmd: show example to handle " Jeff Guo
2018-07-01 7:46 ` Matan Azrad
2018-07-03 9:35 ` Guo, Jia
2018-07-03 22:44 ` Thomas Monjalon
2018-07-04 3:48 ` Guo, Jia
2018-07-04 7:06 ` Matan Azrad
2018-07-05 7:54 ` Guo, Jia
2018-06-29 10:30 ` [dpdk-dev] [PATCH V4 9/9] app/testpmd: enable device hotplug monitoring Jeff Guo
2018-07-05 7:38 ` [dpdk-dev] [PATCH V5 0/7] hot plug failure handle mechanism Jeff Guo
2018-07-05 7:38 ` [dpdk-dev] [PATCH V5 1/7] bus: add hotplug failure handler Jeff Guo
2018-07-06 15:17 ` He, Shaopeng
2018-07-05 7:38 ` [dpdk-dev] [PATCH V5 2/7] bus/pci: implement hotplug failure handler ops Jeff Guo
2018-07-06 15:17 ` He, Shaopeng
2018-07-09 5:29 ` Jeff Guo
2018-07-05 7:38 ` [dpdk-dev] [PATCH V5 3/7] bus: add sigbus handler Jeff Guo
2018-07-06 15:17 ` He, Shaopeng
2018-07-05 7:38 ` [dpdk-dev] [PATCH V5 4/7] bus/pci: implement sigbus handler operation Jeff Guo
2018-07-06 15:18 ` He, Shaopeng
2018-07-05 7:38 ` [dpdk-dev] [PATCH V5 5/7] bus: add helper to handle sigbus Jeff Guo
2018-07-06 15:22 ` He, Shaopeng
2018-07-09 5:31 ` Jeff Guo
2018-07-08 13:30 ` Andrew Rybchenko
2018-07-09 5:33 ` Jeff Guo
2018-07-05 7:38 ` [dpdk-dev] [PATCH V5 6/7] eal: add failure handle mechanism for hotplug Jeff Guo
2018-07-06 15:22 ` He, Shaopeng
2018-07-08 13:46 ` Andrew Rybchenko
2018-07-09 5:40 ` Jeff Guo
2018-07-05 8:21 ` [dpdk-dev] [PATCH V5 0/7] hot plug failure handle mechanism Jeff Guo
2018-07-05 8:21 ` [dpdk-dev] [PATCH V5 7/7] igb_uio: fix uio release issue when hot unplug Jeff Guo
2018-07-09 6:51 ` [dpdk-dev] [PATCH v6 0/7] hotplug failure handle mechanism Jeff Guo
2018-07-09 6:51 ` [dpdk-dev] [PATCH v6 1/7] bus: add hotplug failure handler Jeff Guo
2018-07-09 6:51 ` [dpdk-dev] [PATCH v6 2/7] bus/pci: implement hotplug failure handler ops Jeff Guo
2018-07-09 6:51 ` [dpdk-dev] [PATCH v6 3/7] bus: add sigbus handler Jeff Guo
2018-07-09 6:51 ` [dpdk-dev] [PATCH v6 4/7] bus/pci: implement sigbus handler operation Jeff Guo
2018-07-09 6:51 ` [dpdk-dev] [PATCH v6 5/7] bus: add helper to handle sigbus Jeff Guo
2018-07-09 6:51 ` [dpdk-dev] [PATCH v6 6/7] eal: add failure handle mechanism for hotplug Jeff Guo
2018-07-09 7:42 ` Gaëtan Rivet
2018-07-09 8:12 ` Jeff Guo
2018-07-09 6:51 ` [dpdk-dev] [PATCH v6 7/7] igb_uio: fix uio release issue when hot unplug Jeff Guo
2018-07-09 11:56 ` [dpdk-dev] [PATCH v7 0/7] hotplug failure handle mechanism Jeff Guo
2018-07-09 11:56 ` [dpdk-dev] [PATCH v7 1/7] bus: add hotplug failure handler Jeff Guo
2018-07-09 11:56 ` [dpdk-dev] [PATCH v7 2/7] bus/pci: implement hotplug failure handler ops Jeff Guo
2018-07-09 11:56 ` [dpdk-dev] [PATCH v7 3/7] bus: add sigbus handler Jeff Guo
2018-07-09 11:56 ` [dpdk-dev] [PATCH v7 4/7] bus/pci: implement sigbus handler operation Jeff Guo
2018-07-09 11:56 ` [dpdk-dev] [PATCH v7 5/7] bus: add helper to handle sigbus Jeff Guo
2018-07-09 11:56 ` [dpdk-dev] [PATCH v7 6/7] eal: add failure handle mechanism for hotplug Jeff Guo
2018-07-09 11:56 ` [dpdk-dev] [PATCH v7 7/7] igb_uio: fix uio release issue when hot unplug Jeff Guo
2018-07-09 12:00 ` [dpdk-dev] [PATCH v7 0/7] hotplug failure handle mechanism Jeff Guo
2018-07-09 12:01 ` [dpdk-dev] [PATCH v7 1/7] bus: add hotplug failure handler Jeff Guo
2018-07-09 12:01 ` [dpdk-dev] [PATCH v7 2/7] bus/pci: implement hotplug failure handler ops Jeff Guo
2018-07-09 12:01 ` [dpdk-dev] [PATCH v7 3/7] bus: add sigbus handler Jeff Guo
2018-07-09 12:01 ` [dpdk-dev] [PATCH v7 4/7] bus/pci: implement sigbus handler operation Jeff Guo
2018-07-09 12:01 ` [dpdk-dev] [PATCH v7 5/7] bus: add helper to handle sigbus Jeff Guo
2018-07-09 13:48 ` Andrew Rybchenko
2018-07-10 8:22 ` Jeff Guo
2018-07-10 8:40 ` Gaëtan Rivet
2018-07-10 10:07 ` Jeff Guo
2018-07-09 12:01 ` [dpdk-dev] [PATCH v7 6/7] eal: add failure handle mechanism for hotplug Jeff Guo
2018-07-09 13:50 ` Andrew Rybchenko
2018-07-10 8:23 ` Jeff Guo
2018-07-09 12:01 ` [dpdk-dev] [PATCH v7 7/7] igb_uio: fix uio release issue when hot unplug Jeff Guo
2018-07-09 22:44 ` Stephen Hemminger
2018-07-10 8:28 ` Jeff Guo
2018-07-10 11:03 ` [dpdk-dev] [PATCH v8 0/7] hotplug failure handle mechanism Jeff Guo
2018-07-10 11:03 ` [dpdk-dev] [PATCH v8 1/7] bus: add hotplug failure handler Jeff Guo
2018-07-10 11:03 ` [dpdk-dev] [PATCH v8 2/7] bus/pci: implement hotplug failure handler ops Jeff Guo
2018-07-10 11:03 ` [dpdk-dev] [PATCH v8 3/7] bus: add sigbus handler Jeff Guo
2018-07-10 11:03 ` [dpdk-dev] [PATCH v8 4/7] bus/pci: implement sigbus handler operation Jeff Guo
2018-07-10 11:03 ` [dpdk-dev] [PATCH v8 5/7] bus: add helper to handle sigbus Jeff Guo
2018-07-10 11:03 ` [dpdk-dev] [PATCH v8 6/7] eal: add failure handle mechanism for hotplug Jeff Guo
2018-07-10 11:03 ` [dpdk-dev] [PATCH v8 7/7] igb_uio: fix uio release issue " Jeff Guo
2018-07-10 21:48 ` Stephen Hemminger
2018-07-11 3:10 ` Jeff Guo
2018-07-10 21:52 ` Stephen Hemminger
2018-07-11 2:46 ` Jeff Guo
2018-07-11 10:01 ` Jeff Guo
2018-07-11 10:41 ` [dpdk-dev] [PATCH v9 0/7] hotplug failure handle mechanism Jeff Guo
2018-07-11 10:41 ` [dpdk-dev] [PATCH v9 1/7] bus: add hotplug failure handler Jeff Guo
2018-07-11 10:41 ` [dpdk-dev] [PATCH v9 2/7] bus/pci: implement hotplug failure handler ops Jeff Guo
2018-07-11 10:41 ` [dpdk-dev] [PATCH v9 3/7] bus: add sigbus handler Jeff Guo
2018-07-11 10:41 ` [dpdk-dev] [PATCH v9 4/7] bus/pci: implement sigbus handler operation Jeff Guo
2018-07-11 10:41 ` [dpdk-dev] [PATCH v9 5/7] bus: add helper to handle sigbus Jeff Guo
2018-07-11 10:41 ` [dpdk-dev] [PATCH v9 6/7] eal: add failure handle mechanism for hotplug Jeff Guo
2018-07-11 10:41 ` [dpdk-dev] [PATCH v9 7/7] igb_uio: fix unexpected remove issue " Jeff Guo
2018-07-12 1:57 ` He, Shaopeng
2018-07-11 15:46 ` [dpdk-dev] [PATCH v9 0/7] hotplug failure handle mechanism Stephen Hemminger
2018-07-12 3:14 ` Jeff Guo
2018-08-17 10:48 ` [dpdk-dev] [PATCH v10 0/8] " Jeff Guo
2018-08-17 10:48 ` [dpdk-dev] [PATCH v10 1/8] bus: add memory failure handler Jeff Guo
2018-08-17 10:48 ` [dpdk-dev] [PATCH v10 2/8] bus/pci: implement memory failure handler ops Jeff Guo
2018-08-17 10:48 ` [dpdk-dev] [PATCH v10 3/8] bus: add sigbus handler Jeff Guo
2018-08-17 10:48 ` [dpdk-dev] [PATCH v10 4/8] bus/pci: implement sigbus handler ops Jeff Guo
2018-08-17 10:48 ` [dpdk-dev] [PATCH v10 5/8] bus: add helper to handle sigbus Jeff Guo
2018-08-17 10:48 ` Jeff Guo
2018-08-17 10:48 ` [dpdk-dev] [PATCH v10 6/8] eal: add failure handle mechanism for hotplug Jeff Guo
2018-08-17 10:48 ` [dpdk-dev] [PATCH v10 7/8] igb_uio: fix unexpected remove issue " Jeff Guo
2018-09-27 15:07 ` Ferruh Yigit
2018-10-18 5:51 ` Jeff Guo
2018-10-18 6:27 ` [dpdk-dev] [PATCH v1] igb_uio: fix unexpected removal for hot-unplug Jeff Guo
2018-10-18 16:06 ` Ferruh Yigit
2018-10-19 8:35 ` Jeff Guo
2018-10-22 11:13 ` Ferruh Yigit
2018-10-24 23:14 ` Thomas Monjalon
2018-08-17 10:48 ` [dpdk-dev] [PATCH v10 8/8] testpmd: use hotplug failure handle mechanism Jeff Guo
2018-09-30 10:24 ` [dpdk-dev] [PATCH v11 0/7] hot-unplug " Jeff Guo
2018-09-30 10:24 ` [dpdk-dev] [PATCH v11 1/7] bus: add hot-unplug handler Jeff Guo
2018-09-30 10:24 ` [dpdk-dev] [PATCH v11 2/7] bus/pci: implement hot-unplug handler ops Jeff Guo
2018-09-30 10:24 ` [dpdk-dev] [PATCH v11 3/7] bus: add sigbus handler Jeff Guo
2018-09-30 10:24 ` [dpdk-dev] [PATCH v11 4/7] bus/pci: implement sigbus handler ops Jeff Guo
2018-09-30 10:24 ` [dpdk-dev] [PATCH v11 5/7] bus: add helper to handle sigbus Jeff Guo
2018-09-30 10:24 ` [dpdk-dev] [PATCH v11 6/7] eal: add failure handle mechanism for hot-unplug Jeff Guo
2018-09-30 10:24 ` [dpdk-dev] [PATCH v11 7/7] testpmd: use hot-unplug failure handle mechanism Jeff Guo
2018-09-30 11:29 ` [dpdk-dev] [PATCH v11 0/7] " Jeff Guo
2018-09-30 11:29 ` [dpdk-dev] [PATCH v11 1/7] bus: add hot-unplug handler Jeff Guo
2018-09-30 11:29 ` [dpdk-dev] [PATCH v11 2/7] bus/pci: implement hot-unplug handler ops Jeff Guo
2018-09-30 11:29 ` [dpdk-dev] [PATCH v11 3/7] bus: add sigbus handler Jeff Guo
2018-09-30 11:30 ` [dpdk-dev] [PATCH v11 4/7] bus/pci: implement sigbus handler ops Jeff Guo
2018-09-30 11:30 ` [dpdk-dev] [PATCH v11 5/7] bus: add helper to handle sigbus Jeff Guo
2018-09-30 11:30 ` [dpdk-dev] [PATCH v11 6/7] eal: add failure handle mechanism for hot-unplug Jeff Guo
2018-09-30 19:46 ` Ananyev, Konstantin
2018-10-02 4:01 ` Jeff Guo
2018-09-30 11:30 ` [dpdk-dev] [PATCH v11 7/7] testpmd: use hot-unplug failure handle mechanism Jeff Guo
2018-10-01 9:00 ` [dpdk-dev] [PATCH v11 0/7] " Stephen Hemminger
2018-10-01 9:55 ` Jerin Jacob
2018-10-02 10:08 ` Jeff Guo
2018-10-02 9:57 ` Jeff Guo
2018-10-02 12:32 ` [dpdk-dev] [PATCH v12 " Jeff Guo
2018-10-02 12:32 ` [dpdk-dev] [PATCH v12 1/7] bus: add hot-unplug handler Jeff Guo
2018-10-02 12:32 ` [dpdk-dev] [PATCH v12 2/7] bus/pci: implement hot-unplug handler ops Jeff Guo
2018-10-02 12:32 ` [dpdk-dev] [PATCH v12 3/7] bus: add sigbus handler Jeff Guo
2018-10-02 12:32 ` [dpdk-dev] [PATCH v12 4/7] bus/pci: implement sigbus handler ops Jeff Guo
2018-10-02 12:32 ` [dpdk-dev] [PATCH v12 5/7] bus: add helper to handle sigbus Jeff Guo
2018-10-02 12:32 ` [dpdk-dev] [PATCH v11 6/7] eal: add failure handle mechanism for hot-unplug Jeff Guo
2018-10-02 12:32 ` [dpdk-dev] [PATCH v11 7/7] testpmd: use hot-unplug failure handle mechanism Jeff Guo
2018-10-02 12:35 ` [dpdk-dev] [PATCH v12 0/7] " Jeff Guo
2018-10-02 12:35 ` [dpdk-dev] [PATCH v12 1/7] bus: add hot-unplug handler Jeff Guo
2018-10-02 12:35 ` [dpdk-dev] [PATCH v12 2/7] bus/pci: implement hot-unplug handler ops Jeff Guo
2018-10-02 12:35 ` [dpdk-dev] [PATCH v12 3/7] bus: add sigbus handler Jeff Guo
2018-10-02 14:32 ` Burakov, Anatoly
2018-10-04 3:14 ` Jeff Guo
2018-10-02 12:35 ` [dpdk-dev] [PATCH v12 4/7] bus/pci: implement sigbus handler ops Jeff Guo
2018-10-02 14:39 ` Burakov, Anatoly
2018-10-04 3:58 ` Jeff Guo
2018-10-02 12:35 ` [dpdk-dev] [PATCH v12 5/7] bus: add helper to handle sigbus Jeff Guo
2018-10-02 12:35 ` [dpdk-dev] [PATCH v12 6/7] eal: add failure handle mechanism for hot-unplug Jeff Guo
2018-10-02 13:34 ` Ananyev, Konstantin
2018-10-04 2:31 ` Jeff Guo
2018-10-02 15:53 ` Burakov, Anatoly
2018-10-02 16:00 ` Ananyev, Konstantin
2018-10-04 3:12 ` Jeff Guo
2018-10-02 12:35 ` [dpdk-dev] [PATCH v12 7/7] testpmd: use hot-unplug failure handle mechanism Jeff Guo
2018-10-02 15:21 ` Iremonger, Bernard
2018-10-04 2:56 ` Jeff Guo
2018-10-04 6:30 ` [dpdk-dev] [PATCH v13 0/7] " Jeff Guo
2018-10-04 6:30 ` [dpdk-dev] [PATCH v13 1/7] bus: add hot-unplug handler Jeff Guo
2018-10-04 6:30 ` [dpdk-dev] [PATCH v13 2/7] bus/pci: implement hot-unplug handler ops Jeff Guo
2018-10-04 6:30 ` [dpdk-dev] [PATCH v13 3/7] bus: add sigbus handler Jeff Guo
2018-10-04 6:30 ` [dpdk-dev] [PATCH v13 4/7] bus/pci: implement sigbus handler ops Jeff Guo
2018-10-04 6:30 ` [dpdk-dev] [PATCH v13 5/7] bus: add helper to handle sigbus Jeff Guo
2018-10-04 6:30 ` [dpdk-dev] [PATCH v13 6/7] eal: add failure handle mechanism for hot-unplug Jeff Guo
2018-10-04 6:30 ` [dpdk-dev] [PATCH v13 7/7] app/testpmd: use hotplug failure handler Jeff Guo
2018-10-04 10:31 ` Iremonger, Bernard
2018-10-04 13:53 ` Jeff Guo
2018-10-04 12:02 ` [dpdk-dev] [PATCH v13 0/7] hot-unplug failure handle mechanism Ananyev, Konstantin
2018-10-04 14:46 ` [dpdk-dev] [PATCH v14 " Jeff Guo
2018-10-04 14:46 ` [dpdk-dev] [PATCH v14 1/7] bus: add hot-unplug handler Jeff Guo
2018-10-04 14:46 ` [dpdk-dev] [PATCH v14 2/7] bus/pci: implement hot-unplug handler ops Jeff Guo
2018-10-04 14:46 ` [dpdk-dev] [PATCH v14 3/7] bus: add sigbus handler Jeff Guo
2018-10-04 14:46 ` [dpdk-dev] [PATCH v14 4/7] bus/pci: implement sigbus handler ops Jeff Guo
2018-10-04 14:46 ` [dpdk-dev] [PATCH v14 5/7] bus: add helper to handle sigbus Jeff Guo
2018-10-04 14:46 ` [dpdk-dev] [PATCH v14 6/7] eal: add failure handle mechanism for hot-unplug Jeff Guo
2018-10-15 10:43 ` Thomas Monjalon
2018-10-04 14:46 ` [dpdk-dev] [PATCH v14 7/7] app/testpmd: use hotplug failure handler Jeff Guo
2018-10-05 12:26 ` Iremonger, Bernard
2018-10-15 11:27 ` [dpdk-dev] [PATCH v15 0/7] hot-unplug failure handle mechanism Jeff Guo
2018-10-15 11:27 ` [dpdk-dev] [PATCH v15 1/7] bus: add hot-unplug handler Jeff Guo
2018-10-15 11:27 ` [dpdk-dev] [PATCH v15 2/7] bus/pci: implement hot-unplug handler ops Jeff Guo
2018-10-15 11:27 ` [dpdk-dev] [PATCH v15 3/7] bus: add sigbus handler Jeff Guo
2018-10-15 11:27 ` [dpdk-dev] [PATCH v15 4/7] bus/pci: implement sigbus handler ops Jeff Guo
2018-10-15 13:41 ` Thomas Monjalon
2018-10-15 14:16 ` Thomas Monjalon
2018-10-15 11:27 ` [dpdk-dev] [PATCH v15 5/7] bus: add helper to handle sigbus Jeff Guo
2018-10-15 11:27 ` [dpdk-dev] [PATCH v15 6/7] eal: add failure handle mechanism for hot-unplug Jeff Guo
2018-10-15 11:27 ` [dpdk-dev] [PATCH v15 7/7] app/testpmd: use hotplug failure handler Jeff Guo
2018-10-15 20:19 ` [dpdk-dev] [PATCH v15 0/7] hot-unplug failure handle mechanism Thomas Monjalon
2017-06-29 5:01 ` [dpdk-dev] [PATCH v3 0/2] add uevent api for hot plug Jeff Guo
2017-06-29 5:01 ` [dpdk-dev] [PATCH v3 1/2] eal: " Jeff Guo
2017-07-04 7:15 ` Wu, Jingjing
2017-09-03 15:49 ` [dpdk-dev] [PATCH v4 0/2] add uevent monitor " Jeff Guo
2017-09-03 15:49 ` [dpdk-dev] [PATCH v4 1/2] eal: " Jeff Guo
2017-09-03 16:10 ` Stephen Hemminger
2017-09-03 16:12 ` Stephen Hemminger
2017-09-05 5:28 ` Guo, Jia
2017-09-03 16:14 ` Stephen Hemminger
2017-09-03 16:16 ` Stephen Hemminger
2017-09-03 15:49 ` [dpdk-dev] [PATCH v4 2/2] app/testpmd: use uevent to monitor hot removal Jeff Guo
2017-09-20 4:12 ` [dpdk-dev] [PATCH v5 0/2] add uevent monitor for hot plug Jeff Guo
2017-09-19 18:44 ` Jan Blunck
2017-09-20 6:51 ` Guo, Jia
2017-09-20 4:12 ` [dpdk-dev] [PATCH v5 1/2] eal: " Jeff Guo
2017-09-20 4:12 ` [dpdk-dev] [PATCH v5 2/2] app/testpmd: use uevent to monitor hot removal Jeff Guo
2017-11-01 20:16 ` [dpdk-dev] [PATCH v6 0/2] add uevent monitor for hot plug Jeff Guo
2017-11-01 20:16 ` [dpdk-dev] [PATCH v6 1/2] eal: " Jeff Guo
2017-11-01 21:36 ` Stephen Hemminger
2017-11-01 21:41 ` Stephen Hemminger
2017-11-08 5:39 ` Guo, Jia
2017-12-25 8:30 ` Guo, Jia
2017-12-25 18:06 ` Stephen Hemminger
2018-01-02 9:40 ` Guo, Jia
2017-11-01 20:16 ` [dpdk-dev] [PATCH v6 2/2] app/testpmd: use uevent to monitor hotplug Jeff Guo
2018-01-03 1:42 ` [dpdk-dev] [PATCH v7 0/2] add uevent monitor for hot plug Jeff Guo
2018-01-03 1:42 ` [dpdk-dev] [PATCH v7 1/2] eal: " Jeff Guo
2018-01-02 17:02 ` Matan Azrad
2018-01-08 5:26 ` Guo, Jia
2018-01-08 8:14 ` Matan Azrad
2018-01-08 6:05 ` Guo, Jia
2018-01-09 0:39 ` Thomas Monjalon
2018-01-09 8:25 ` Guo, Jia
2018-01-09 10:31 ` Mordechay Haimovsky
2018-01-09 10:47 ` Thomas Monjalon
2018-01-09 11:39 ` Guo, Jia
2018-01-09 11:44 ` Thomas Monjalon
2018-01-09 12:08 ` Guo, Jia
2018-01-09 12:42 ` Gaëtan Rivet
2018-01-10 9:29 ` Guo, Jia
2018-01-09 13:44 ` Thomas Monjalon
2018-01-10 9:32 ` Guo, Jia
2018-01-09 11:45 ` Guo, Jia
2018-01-09 11:38 ` Thomas Monjalon
2018-01-09 11:58 ` Guo, Jia
2018-01-09 13:40 ` Thomas Monjalon
2018-01-03 1:42 ` [dpdk-dev] [PATCH v7 2/2] app/testpmd: use uevent to monitor hotplug Jeff Guo
2018-01-10 3:30 ` [dpdk-dev] [PATCH V8 0/3] add uevent mechanism in eal framework Jeff Guo
2018-01-10 3:30 ` [dpdk-dev] [PATCH V8 1/3] eal: add uevent monitor for hot plug Jeff Guo
2018-01-10 3:30 ` [dpdk-dev] [PATCH V8 2/3] igb_uio: fix device removal issuse for hotplug Jeff Guo
2018-01-10 3:30 ` [dpdk-dev] [PATCH V8 3/3] app/testpmd: use uevent to monitor hotplug Jeff Guo
2018-01-10 9:12 ` [dpdk-dev] [PATCH V9 0/5] add uevent mechanism in eal framework Jeff Guo
2018-01-10 9:12 ` [dpdk-dev] [PATCH V9 1/5] eal: add uevent monitor api and callback func Jeff Guo
2018-01-10 16:34 ` Stephen Hemminger
2018-01-11 1:43 ` Thomas Monjalon
2018-01-11 14:24 ` Guo, Jia
2018-01-10 9:12 ` [dpdk-dev] [PATCH V9 2/5] eal: add uevent pass and process function Jeff Guo
2018-01-11 14:05 ` [dpdk-dev] [PATCH V10 1/2] eal: add uevent monitor api and callback func Jeff Guo
2018-01-11 14:05 ` [dpdk-dev] [PATCH V10 2/2] eal: add uevent pass and process function Jeff Guo
2018-01-14 23:24 ` Thomas Monjalon
2018-01-15 10:52 ` Guo, Jia
2018-01-15 11:29 ` Thomas Monjalon
2018-01-15 15:33 ` Guo, Jia
2018-01-15 10:48 ` [dpdk-dev] [PATCH V11 1/3] eal: add uevent monitor api and callback func Jeff Guo
2018-01-15 10:48 ` [dpdk-dev] [PATCH V11 2/3] eal: add uevent pass and process function Jeff Guo
2018-01-17 22:00 ` Thomas Monjalon
2018-01-18 4:17 ` Guo, Jia
2018-01-15 10:48 ` [dpdk-dev] [PATCH V11 3/3] app/testpmd: use uevent to monitor hotplug Jeff Guo
2018-01-18 4:12 ` [dpdk-dev] [PATCH V12 1/3] eal: add uevent monitor api and callback func Jeff Guo
2018-01-18 4:12 ` [dpdk-dev] [PATCH V12 2/3] eal: add uevent pass and process function Jeff Guo
2018-01-24 15:00 ` Wu, Jingjing
2018-01-18 4:12 ` [dpdk-dev] [PATCH V12 3/3] app/testpmd: use uevent to monitor hotplug Jeff Guo
2018-01-24 15:21 ` Wu, Jingjing
2018-01-25 14:58 ` Guo, Jia
2018-01-25 14:46 ` [dpdk-dev] [PATCH V13 1/3] eal: add uevent monitor api and callback func Jeff Guo
2018-01-25 14:46 ` [dpdk-dev] [PATCH V13 2/3] eal: add uevent pass and process function Jeff Guo
2018-01-25 14:46 ` [dpdk-dev] [PATCH V13 3/3] app/testpmd: use uevent to monitor hotplug Jeff Guo
2018-01-26 3:49 ` [dpdk-dev] [PATCH V13 1/3] eal: add uevent monitor api and callback func Jeff Guo
2018-01-26 3:49 ` [dpdk-dev] [PATCH V13 2/3] eal: add uevent pass and process function Jeff Guo
2018-01-26 3:49 ` [dpdk-dev] [PATCH V13 3/3] app/testpmd: use uevent to monitor hotplug Jeff Guo
2018-01-30 12:20 ` [dpdk-dev] [PATCH V14 1/3] eal: add uevent monitor api and callback func Jeff Guo
2018-01-30 12:20 ` [dpdk-dev] [PATCH V14 2/3] eal: add uevent pass and process function Jeff Guo
2018-01-30 12:21 ` [dpdk-dev] [PATCH V14 3/3] app/testpmd: use uevent to monitor hotplug Jeff Guo
2018-01-31 5:21 ` Wu, Jingjing
2018-03-21 5:27 ` [dpdk-dev] [PATCH V15 1/5] eal: add uevent monitor api and callback func Jeff Guo
2018-03-21 5:27 ` [dpdk-dev] [PATCH V15 2/5] eal: add uevent pass and process function Jeff Guo
2018-03-21 14:20 ` Tan, Jianfeng
2018-03-22 8:20 ` Guo, Jia
2018-03-21 5:27 ` [dpdk-dev] [PATCH V15 3/5] app/testpmd: use uevent to monitor hotplug Jeff Guo
2018-03-26 10:55 ` [dpdk-dev] [PATCH V16 0/3] add device event monitor framework Jeff Guo
2018-03-26 10:55 ` [dpdk-dev] [PATCH V16 1/3] eal: add device event handle in interrupt thread Jeff Guo
2018-03-26 10:55 ` [dpdk-dev] [PATCH V16 2/3] eal: add device event monitor framework Jeff Guo
2018-03-26 10:55 ` [dpdk-dev] [PATCH V16 3/3] app/testpmd: enable device hotplug monitoring Jeff Guo
2018-03-26 11:20 ` [dpdk-dev] [PATCH V16 0/4] add device event monitor framework Jeff Guo
2018-03-26 11:20 ` [dpdk-dev] [PATCH V16 1/4] eal: add device event handle in interrupt thread Jeff Guo
2018-03-27 9:26 ` Tan, Jianfeng
2018-03-28 8:14 ` Guo, Jia
2018-03-26 11:20 ` [dpdk-dev] [PATCH V16 2/4] eal: add device event monitor framework Jeff Guo
2018-03-28 3:39 ` Tan, Jianfeng
2018-03-28 8:12 ` Guo, Jia
2018-03-26 11:20 ` [dpdk-dev] [PATCH V16 3/4] eal/linux: uevent parse and process Jeff Guo
2018-03-28 16:15 ` Tan, Jianfeng
2018-03-29 13:32 ` Van Haaren, Harry
2018-03-29 15:03 ` Guo, Jia
2018-03-29 15:08 ` Guo, Jia
2018-03-26 11:20 ` [dpdk-dev] [PATCH V16 4/4] app/testpmd: enable device hotplug monitoring Jeff Guo
2018-03-28 16:41 ` Tan, Jianfeng [this message]
2018-03-29 16:00 ` [dpdk-dev] [PATCH V17 0/4] add device event monitor framework Jeff Guo
2018-03-29 16:00 ` [dpdk-dev] [PATCH V17 1/4] eal: add device event handle in interrupt thread Jeff Guo
2018-03-29 16:00 ` [dpdk-dev] [PATCH V17 2/4] eal: add device event monitor framework Jeff Guo
2018-03-29 16:00 ` [dpdk-dev] [PATCH V17 3/4] eal/linux: uevent parse and process Jeff Guo
2018-03-29 16:59 ` Stephen Hemminger
2018-04-02 4:20 ` Guo, Jia
2018-03-29 17:00 ` Stephen Hemminger
2018-04-02 4:19 ` Guo, Jia
2018-03-29 16:00 ` [dpdk-dev] [PATCH V17 4/4] app/testpmd: enable device hotplug monitoring Jeff Guo
2018-03-29 17:00 ` Stephen Hemminger
2018-04-02 4:18 ` Guo, Jia
2018-04-02 5:49 ` Wu, Jingjing
2018-04-02 11:31 ` Guo, Jia
2018-04-03 10:33 ` [dpdk-dev] [PATCH V18 0/4] add device event monitor framework Jeff Guo
2018-04-03 10:33 ` [dpdk-dev] [PATCH V18 1/4] eal: add device event handle in interrupt thread Jeff Guo
2018-04-04 1:47 ` Tan, Jianfeng
2018-04-04 4:00 ` Guo, Jia
2018-04-03 10:33 ` [dpdk-dev] [PATCH V18 2/4] eal: add device event monitor framework Jeff Guo
2018-04-04 2:53 ` Tan, Jianfeng
2018-04-05 3:44 ` Guo, Jia
2018-04-03 10:33 ` [dpdk-dev] [PATCH V18 3/4] eal/linux: uevent parse and process Jeff Guo
2018-04-04 3:15 ` Tan, Jianfeng
2018-04-05 6:09 ` Guo, Jia
2018-04-03 10:33 ` [dpdk-dev] [PATCH V18 4/4] app/testpmd: enable device hotplug monitoring Jeff Guo
2018-04-04 3:22 ` Tan, Jianfeng
2018-04-04 16:31 ` Matan Azrad
2018-04-05 8:40 ` Guo, Jia
2018-04-05 9:03 ` Tan, Jianfeng
2018-04-05 8:32 ` [dpdk-dev] [PATCH V19 0/4] add device event monitor framework Jeff Guo
2018-04-05 8:32 ` [dpdk-dev] [PATCH V19 1/4] eal: add device event handle in interrupt thread Jeff Guo
2018-04-05 8:32 ` [dpdk-dev] [PATCH V19 2/4] eal: add device event monitor framework Jeff Guo
2018-04-05 10:15 ` Tan, Jianfeng
2018-04-05 8:32 ` [dpdk-dev] [PATCH V19 3/4] eal/linux: uevent parse and process Jeff Guo
2018-04-05 8:32 ` [dpdk-dev] [PATCH V19 4/4] app/testpmd: enable device hotplug monitoring Jeff Guo
2018-04-05 9:02 ` [dpdk-dev] [PATCH V19 0/4] add device event monitor framework Jeff Guo
2018-04-05 9:02 ` [dpdk-dev] [PATCH V19 1/4] eal: add device event handle in interrupt thread Jeff Guo
2018-04-05 9:02 ` [dpdk-dev] [PATCH V19 2/4] eal: add device event monitor framework Jeff Guo
2018-04-05 9:02 ` [dpdk-dev] [PATCH V19 3/4] eal/linux: uevent parse and process Jeff Guo
2018-04-05 11:05 ` Tan, Jianfeng
2018-04-11 11:40 ` Guo, Jia
2018-04-05 9:02 ` [dpdk-dev] [PATCH V19 4/4] app/testpmd: enable device hotplug monitoring Jeff Guo
2018-04-05 16:10 ` [dpdk-dev] [PATCH V20 0/4] add device event monitor framework Jeff Guo
2018-04-05 16:10 ` [dpdk-dev] [PATCH V20 1/4] eal: add device event handle in interrupt thread Jeff Guo
2018-04-05 16:10 ` [dpdk-dev] [PATCH V20 2/4] eal: add device event monitor framework Jeff Guo
2018-04-05 21:54 ` Thomas Monjalon
2018-04-06 3:51 ` Guo, Jia
2018-04-05 16:10 ` [dpdk-dev] [PATCH V20 3/4] eal/linux: uevent parse and process Jeff Guo
2018-04-05 16:22 ` Tan, Jianfeng
2018-04-06 3:47 ` Guo, Jia
2018-04-05 21:58 ` Thomas Monjalon
2018-04-06 3:52 ` Guo, Jia
2018-04-05 16:10 ` [dpdk-dev] [PATCH V20 4/4] app/testpmd: enable device hotplug monitoring Jeff Guo
2018-04-05 21:48 ` Thomas Monjalon
2018-04-06 3:51 ` Guo, Jia
2018-04-06 3:54 ` [dpdk-dev] [PATCH V21 0/4] add device event monitor framework Jeff Guo
2018-04-06 3:54 ` [dpdk-dev] [PATCH V21 1/4] eal: add device event handle in interrupt thread Jeff Guo
2018-04-06 3:55 ` [dpdk-dev] [PATCH V21 2/4] eal: add device event monitor framework Jeff Guo
2018-04-12 8:36 ` Thomas Monjalon
2018-04-06 3:55 ` [dpdk-dev] [PATCH V21 3/4] eal/linux: uevent parse and process Jeff Guo
2018-04-06 3:55 ` [dpdk-dev] [PATCH V21 4/4] app/testpmd: enable device hotplug monitoring Jeff Guo
2018-01-31 0:44 ` [dpdk-dev] [PATCH V14 1/3] eal: add uevent monitor api and callback func Stephen Hemminger
2018-02-02 10:45 ` Guo, Jia
2018-01-26 16:53 ` [dpdk-dev] [PATCH V13 " Bruce Richardson
2018-01-27 3:48 ` Guo, Jia
2018-01-30 0:14 ` Thomas Monjalon
2018-01-30 12:20 ` Guo, Jia
2018-01-19 1:13 ` [dpdk-dev] [PATCH V12 " Thomas Monjalon
2018-01-19 2:51 ` Guo, Jia
2018-01-24 14:52 ` Wu, Jingjing
2018-01-25 14:57 ` Guo, Jia
2018-01-17 21:59 ` [dpdk-dev] [PATCH V11 " Thomas Monjalon
2018-01-18 4:23 ` Guo, Jia
2018-01-19 1:10 ` Thomas Monjalon
2018-01-14 23:16 ` [dpdk-dev] [PATCH V10 1/2] " Thomas Monjalon
2018-01-15 10:55 ` Guo, Jia
2018-01-15 11:32 ` Thomas Monjalon
2018-01-15 15:29 ` Guo, Jia
2018-01-10 9:12 ` [dpdk-dev] [PATCH V9 3/5] app/testpmd: use uevent to monitor hotplug Jeff Guo
2018-01-10 9:12 ` [dpdk-dev] [PATCH V9 4/5] pci_uio: add uevent hotplug failure handler in pci Jeff Guo
2018-01-10 9:12 ` [dpdk-dev] [PATCH V9 5/5] pci: add driver auto bind for hot insertion Jeff Guo
2018-03-21 6:11 ` [dpdk-dev] [PATCH V15 1/2] pci_uio: add uevent hotplug failure handler in uio Jeff Guo
2018-03-21 6:11 ` [dpdk-dev] [PATCH V15 2/2] pci: add driver auto bind for hot insertion Jeff Guo
2018-03-30 3:35 ` [dpdk-dev] [PATCH V15 1/2] pci_uio: add uevent hotplug failure handler in uio Tan, Jianfeng
2017-12-14 9:48 ` [dpdk-dev] [PATCH v6 0/2] add uevent monitor for hot plug Mordechay Haimovsky
2017-12-14 10:21 ` Gaëtan Rivet
2017-12-22 0:16 ` Guo, Jia
2017-12-24 15:12 ` Mordechay Haimovsky
2018-01-02 9:43 ` Guo, Jia
2017-06-29 5:01 ` [dpdk-dev] [PATCH v3 2/2] net/i40e: add hot plug monitor in i40e Jeff Guo
2017-07-04 7:15 ` Wu, Jingjing
2017-07-07 7:56 ` Thomas Monjalon
2017-07-07 10:17 ` Thomas Monjalon
2017-07-07 14:08 ` Guo, Jia
2017-07-09 22:35 ` Thomas Monjalon
2017-07-12 7:36 ` Guo, Jia
2017-06-29 2:25 ` [dpdk-dev] [PATCH v2 1/2] eal: add uevent api for hot plug Wu, Jingjing
2017-06-29 4:29 ` Guo, Jia
2017-07-04 23:45 ` Thomas Monjalon
2017-07-05 3:02 ` Guo, Jia
2017-07-05 7:32 ` Thomas Monjalon
2017-07-05 9:04 ` Guo, Jia
2017-08-22 14:56 ` Guo, Jia
2017-08-28 15:50 ` Gaëtan Rivet
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=dbb20874-e627-ed04-57ce-30b289e394a9@intel.com \
--to=jianfeng.tan@intel.com \
--cc=bruce.richardson@intel.com \
--cc=dev@dpdk.org \
--cc=ferruh.yigit@intel.com \
--cc=gaetan.rivet@6wind.com \
--cc=harry.van.haaren@intel.com \
--cc=helin.zhang@intel.com \
--cc=jblunck@infradead.org \
--cc=jia.guo@intel.com \
--cc=jingjing.wu@intel.com \
--cc=konstantin.ananyev@intel.com \
--cc=motih@mellanox.com \
--cc=shreyansh.jain@nxp.com \
--cc=stephen@networkplumber.org \
--cc=thomas@monjalon.net \
/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).