All the mail mirrored from lore.kernel.org
 help / color / mirror / Atom feed
From: "Loc Ho" <lho@amcc.com>
To: "Evgeniy Polyakov" <zbr@ioremap.net>,
	"Shasi Pulijala" <spulijala@amcc.com>
Cc: "Herbert Xu" <herbert@gondor.apana.org.au>,
	<linux-crypto@vger.kernel.org>
Subject: RE: [PATCH 1/1 v7] Add Crypto API User Interface Support
Date: Fri, 24 Oct 2008 15:16:52 -0700	[thread overview]
Message-ID: <0CA0A16855646F4FA96D25A158E299D6053E6363@SDCEXCHANGE01.ad.amcc.com> (raw)
In-Reply-To: <20081024210755.GB26930@ioremap.net>

Hi Evgenly,

See inline...

-----Original Message-----
From: Evgeniy Polyakov [mailto:zbr@ioremap.net] 
Sent: Friday, October 24, 2008 2:08 PM
To: Shasi Pulijala
Cc: Herbert Xu; linux-crypto@vger.kernel.org; Loc Ho
Subject: Re: [PATCH 1/1 v7] Add Crypto API User Interface Support

Hi.

On Fri, Oct 24, 2008 at 01:54:23PM -0700, Shasi Pulijala (spulijala@amcc.com) wrote:
> This patch v7 includes a few coding style changes and benchmark comparison between for tcrypt and cryptodev. These are just a rough estimate and not the exact numbers for cbc-aes. CryptoDev interface will always be slight more as it includes crypto setup and a few other housekeeping tasks. Tcrypt is just the time for the encrypt or decrypt function calls only.
> 
> 		Tcrypt	Cryptodev
> 16 byte	47us		132us
> 32 byte	51us		141us
> 64 byte	68us		150us

Can you also run cryptodev under profiler to determine, why it is, well,
noticebly, slower than tcrypt?

[Loc Ho]
We will look at profiling but in either case cryptodev will always takes longer as tcrypto only measure the encrypt/decrypt function. Cryptodev has to setup the operation as well as other house cleaning.

> With regard to forward declaration, they are needed. 

Why? Can't you reorder functions to eliminate that?
[Loc Ho]
We will look again.

> >> +		}
> >> +		sg_set_page(&sg[x], page, bufsize, offset);
> >> +		rop = PAGE_SIZE - sg[x].offset;
> >> +		if (bufsize > rop) {
> >> +			sg[x].length = rop;
> >> +			bufsize = bufsize - rop;
> >> +		}
> >> +		offset = 0;
> >>
> >>What if bufsize is smaller than 'rop', but there are several pages?
> >>This will initialize wrong buffers, but probably there is a check somewhere above this layer.
> 
> Yes, there is a check above for the number of pages returned. It returns an error if the number of pages returned is greater/less than requested.
> 
> With regard to "Still this is not an async crypto," it is asynchronous interface if called via AIO. For vector write, it will turn into synchronous AIO within the kernel AIO framework.

It does not mean it is async, since crypto processing itself is
synchronous. I.e. you can submit requests asynchronously, but they are
processed by the crypto code one-by-one with waiting after each request.
This actually can explain your numbers: instead of having flow of
requests, you have to do really lots of work per-request. I do not say
this is wrong (although imho it should be done differently), since it is
your code and likely it fits your needs.

[Loc Ho]
I don't understand what you are referring to here. Let's assume that operation is submitted synchronously to cryptodev, cryptodev in turn will submit to the underlying driver. If the underlying driver is software based, it will completed synchronous and return without calling wait_for_completion. If the underlying driver is hardware based or asynchronous, it will wait for completion via the callback function signaling the event wait object. Now, let's assume that operation is submitted asynchronously to cryptodev, crypto in turn will submit to the underlying driver. If the underlying driver is software based and completed, it just return. If the underlying driver is asynchronous such as hardware, it will return immediately without waiting. CryptoDev will call the AIO callback function when
  the crypto driver call cryptodev callback function. Therefore, what is the issue?

As regard to performance, asynchronous only help performance if there are a large number request (which implement hardware support).


Plus, you did not figure what happens when request completion is
interrupted with regard to freeing data, which may be accesed by the
crypto code in parallel.

[Loc Ho]
We looked at this. There is reference count that will prevent delete of the request context. Apparently, we missed this. We will fix this.


> +	aead_request_set_crypt(req, ssg, dsg, bufsize, cop->iv);
> +	aead_request_set_assoc(req, &adata, cop->assoc_len);
> +
> +	atomic_inc(&ses_ptr->refcnt);
> +
> +	if (cop->eop == COP_ENCRYPT)
> +		ret = crypto_aead_encrypt(req);
> +	else
> +		ret = crypto_aead_decrypt(req);
> +
> +	switch (ret) {
> +	case 0:
> +		if (!iocb)
> +			atomic_dec(&result->opcnt);
> +		break;
> +	case -EINPROGRESS:
> +	case -EBUSY:
> +		if (iocb) {
> +			CDPRINTK(2, KERN_INFO,
> +				"Async Call AEAD:Returning Now\n");
> +			return -EIOCBQUEUED;
> +		}
> +		ret = wait_for_completion_interruptible(
> +					&result->crypto_completion);
> +		if (!ret)
> +			ret = result->err;
> +		if (!ret) {
> +			INIT_COMPLETION(result->crypto_completion);
> +			break;
> +		}

I.e. let's suppose it was interrupted here, while crypto driver performs
a processing on given pages.

> +		/* fall through */
> +	default:
> +		printk(KERN_ERR PFX "sid %p enc/dec failed error %d\n",
> +			ses_ptr, -ret);
> +		if (!iocb)
> +			atomic_dec(&result->opcnt);
> +		break;
> +	}
> +
> +	if (nopin && !ret) {
> +		if (copy_to_user(dst, data, enc ? bufsize + authsize :
> +						bufsize - authsize))
> +			printk(KERN_ERR PFX
> +				"failed to copy encrypted data "
> +				"to user space\n");
> +		CD_HEXDUMP(data, enc ? bufsize + authsize :
> +					bufsize - authsize);
> +	}
> +
> +	/* Check if last reference */
> +	if (atomic_dec_and_test(&ses_ptr->refcnt))
> +		cryptodev_destroy_session(ses_ptr);
> +	if (dst_flag)
> +		cryptodev_release_pages(result->dpages, nr_dpages);
> +out_spages:
> +	cryptodev_release_pages(result->spages, nr_spages);

Now you have freed pages, which are still accessible by the request
crypto processing code somewhere in the underlying driver.

-- 
	Evgeniy Polyakov

  reply	other threads:[~2008-10-24 22:17 UTC|newest]

Thread overview: 275+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <PATCH>
     [not found] ` <1224786829-32405-1-git-send-email-spulijala@amcc.com>
     [not found]   ` <DB599F406D04E34389140B7D99C71B1B064CADB6@SDCEXCHANGE01.ad.amcc.com>
     [not found]     ` <0CA0A16855646F4FA96D25A158E299D6053E62E9@SDCEXCHANGE01.ad.amcc.com>
2008-10-24 20:54       ` [PATCH 1/1 v7] Add Crypto API User Interface Support Shasi Pulijala
2008-10-24 21:07         ` Evgeniy Polyakov
2008-10-24 22:16           ` Loc Ho [this message]
2008-10-25 13:50             ` Evgeniy Polyakov
2008-10-27 17:04               ` Loc Ho
2014-12-08 17:18 ` [PATCH] doc: add bsd license to svg file Bernard Iremonger
     [not found]   ` <1418059123-32145-1-git-send-email-bernard.iremonger-ral2JQCrhuEAvxtiuMwx3w@public.gmane.org>
2014-12-11 13:42     ` De Lara Guarch, Pablo
2015-06-10 15:12 ` [PATCH 0/2] doc: kni command line fixes Bernard Iremonger
2015-06-10 15:12   ` [PATCH 1/2] doc: correct kni command line in virtio chapter Bernard Iremonger
2015-06-15  2:29     ` Zhang, Helin
2015-06-10 15:12   ` [PATCH 2/2] doc: fix kni command line in Kernel NIC Interface chapter Bernard Iremonger
2015-06-15  2:30     ` Zhang, Helin
2015-06-10 17:13   ` [PATCH 0/2] doc: kni command line fixes Mcnamara, John
2015-07-27 21:45     ` Thomas Monjalon
2015-06-11 14:33 ` [PATCH] doc: update port attach and detach in Testpmd Runtime Functions chapter Bernard Iremonger
2015-06-16  2:45   ` Tetsuya Mukawa
2015-07-28 10:22     ` Thomas Monjalon
2015-06-12 16:21 ` [PATCH v3 0/2] bonding PCI Port Hotplug Bernard Iremonger
2015-06-12 16:21   ` [PATCH v3 1/2] bonding: add support for " Bernard Iremonger
2015-06-12 16:21   ` [PATCH v3 2/2] test-pmd: modified testpmd for link_bonding Bernard Iremonger
2015-06-19 16:33   ` [PATCH v3 0/2] bonding PCI Port Hotplug Declan Doherty
2015-06-16 11:30 ` [PATCH v2 0/2] virtio: " Bernard Iremonger
2015-06-16 11:30   ` [PATCH v3 1/2] virtio: add support for " Bernard Iremonger
2015-06-17  1:27     ` Ouyang, Changchun
2015-06-16 11:30   ` [PATCH v3 2/2] virtio: check vq parameter Bernard Iremonger
2015-06-17  1:27     ` Ouyang, Changchun
2015-06-17 11:38 ` [PATCH v4 0/6] i40e: PCI Port Hotplug Changes Bernard Iremonger
2015-06-17 11:38   ` [PATCH v4 1/6] i40e: changes to support PCI Port Hotplug Bernard Iremonger
2015-06-17 11:38   ` [PATCH v4 2/6] i40e: release vmdq vsi's in dev_close Bernard Iremonger
2015-06-17 11:38   ` [PATCH v4 3/6] i40e: increase ASQ_DELAY_MS to 100 in i40evf_wait_cmd_done() Bernard Iremonger
2015-06-17 11:39 ` [PATCH v4 4/6] i40e: call _clear_cmd() when error occurs Bernard Iremonger
2015-06-17 11:39   ` [PATCH v4 5/6] i40e: clear queues in i40evf_dev_stop Bernard Iremonger
2015-06-17 11:39   ` [PATCH v4 6/6] i40e: check rxq parameter in i40e_reset_rx_queue Bernard Iremonger
2015-06-18 12:44 ` [PATCH v5] e1000: igb and em1000 PCI Port Hotplug changes Bernard Iremonger
2015-06-19 17:03 ` [PATCH v5 0/6] i40e: PCI Port Hotplug Changes Bernard Iremonger
2015-06-19 17:03   ` [PATCH v5 1/6] i40e: changes to support PCI Port Hotplug Bernard Iremonger
2015-06-19 17:03   ` [PATCH v5 2/6] i40e: release vmdq vsi's in dev_close Bernard Iremonger
2015-06-19 17:03   ` [PATCH v5 3/6] i40e: increase ASQ_DELAY_MS to 100 and MAX_TRY_TIMES to 20 in i40evf_wait_cmd_done() Bernard Iremonger
2015-06-19 17:04   ` [PATCH v5 4/6] i40e: call _clear_cmd() when error occurs Bernard Iremonger
2015-06-19 17:04   ` [PATCH v5 5/6] i40e: clear queues in i40evf_dev_stop Bernard Iremonger
2015-06-19 17:04   ` [PATCH v5 6/6] i40e: check rxq parameter in i40e_reset_rx_queue Bernard Iremonger
2015-06-25  2:28   ` [PATCH v5 0/6] i40e: PCI Port Hotplug Changes Zhang, Helin
2015-06-22 10:44 ` [PATCH v6] e1000: igb and em1000 PCI Port Hotplug changes Bernard Iremonger
2015-06-25  2:33   ` Zhang, Helin
2015-06-25  9:04     ` Iremonger, Bernard
2015-06-26  8:56   ` Zhang, Helin
2015-06-24 15:08 ` [PATCH v5] ixgbe: changes to support PCI Port Hotplug Bernard Iremonger
2015-06-25 11:41   ` Ananyev, Konstantin
2015-06-25 14:30 ` [PATCH] librte_ether: release memory in uninit function Bernard Iremonger
2015-06-25 14:41   ` Stephen Hemminger
2015-06-25 18:32   ` Ananyev, Konstantin
2015-06-26  8:17     ` Iremonger, Bernard
2015-06-26  9:32 ` [PATCH v2] " Bernard Iremonger
2015-06-26  9:55   ` Ananyev, Konstantin
2015-06-29  8:54   ` Qiu, Michael
2015-06-29 10:20     ` Iremonger, Bernard
2015-06-29 15:22       ` Qiu, Michael
2015-06-29 16:42         ` Iremonger, Bernard
2015-06-30  1:31           ` Qiu, Michael
2015-07-06 11:35             ` Qiu, Michael
2015-07-07  3:38               ` Tetsuya Mukawa
2015-07-07 10:53                 ` Iremonger, Bernard
2015-07-08  3:47                   ` Tetsuya Mukawa
2015-07-08  9:49                     ` Iremonger, Bernard
2015-07-08  9:59                       ` Thomas Monjalon
2015-07-09  3:32                         ` Tetsuya Mukawa
2015-07-14  5:15                           ` Qiu, Michael
2015-07-09  5:46                       ` [PATCH] doc: Fix doxygen comments of rte_eth_dev_close() and rte_eth_dev_detach() Tetsuya Mukawa
2015-07-09  7:28                         ` Thomas Monjalon
2015-07-09  8:10                           ` Tetsuya Mukawa
2015-07-09  8:19                       ` [PATCH v2] " Tetsuya Mukawa
2015-07-10 22:31                         ` Thomas Monjalon
2015-07-02 14:36 ` [PATCH v6 0/2] PCI Port Hotplug Bernard Iremonger
2015-07-02 14:36   ` [PATCH v6 1/2] ixgbe: changes to support " Bernard Iremonger
2015-07-02 14:36   ` [PATCH v2] librte_ether: release memory in uninit function Bernard Iremonger
2015-07-02 14:36   ` [PATCH v6 2/2] ixgbe: release queue memory in close functions Bernard Iremonger
2015-07-02 14:59   ` [PATCH v6 0/2] PCI Port Hotplug Ananyev, Konstantin
2015-07-19 15:42     ` Thomas Monjalon
2015-07-03 14:03 ` [PATCH v6 0/7] i40e: PCI Port Hotplug Changes Bernard Iremonger
2015-07-03 14:03   ` [PATCH v6 1/7] i40e: changes to support PCI Port Hotplug Bernard Iremonger
2015-07-03 14:03   ` [PATCH v6 2/7] i40e: release vmdq vsi's in dev_close Bernard Iremonger
2015-07-03 14:03   ` [PATCH v6 3/7] i40e: increase ASQ_DELAY_MS to 100 and MAX_TRY_TIMES to 20 in i40evf_wait_cmd_done() Bernard Iremonger
2015-07-03 14:03   ` [PATCH v6 4/7] i40e: call _clear_cmd() when error occurs Bernard Iremonger
2015-07-03 14:03   ` [PATCH v6 5/7] i40e: clear queues in i40evf_dev_stop Bernard Iremonger
2015-07-03 14:03   ` [PATCH v6 6/7] i40e: check rxq parameter in i40e_reset_rx_queue Bernard Iremonger
2015-07-03 14:04   ` [PATCH v6 7/7] i40e: release queue memory in close functions Bernard Iremonger
2015-07-10 20:44   ` [PATCH v6 0/7] i40e: PCI Port Hotplug Changes Zhang, Helin
2015-07-19 19:39     ` Thomas Monjalon
2015-07-03 14:38 ` [PATCH v7 0/2] e1000: PCI Port Hotplug changes Bernard Iremonger
2015-07-03 14:38   ` [PATCH v7 1/2] e1000: igb and em1000 " Bernard Iremonger
2015-07-13 15:53     ` Zhang, Helin
2015-07-03 14:38   ` [PATCH v7 2/2] e1000: free queue memory in close functions Bernard Iremonger
2015-07-13 15:54     ` Zhang, Helin
2015-07-19 15:26   ` [PATCH v7 0/2] e1000: PCI Port Hotplug changes Thomas Monjalon
2015-07-07  9:18 ` [PATCH v4 0/4] virtio: PCI Port Hotplug Bernard Iremonger
2015-07-07  9:18   ` [PATCH v4 1/4] virtio: add support for " Bernard Iremonger
2015-07-07  9:18   ` [PATCH v4 2/4] virtio: check vq parameter in virtqueue_detatch_unused() function Bernard Iremonger
2015-07-07  9:18   ` [PATCH v4 3/4] virtio: free queue memory in virtio_dev_close() Bernard Iremonger
2015-07-07 18:04     ` Stephen Hemminger
2015-07-07  9:18   ` [PATCH v4 4/4] test-pmd: remove call to rte_eth_promiscuous_disable() from detach_port() Bernard Iremonger
2015-07-08  0:42     ` Ouyang, Changchun
2015-07-09  2:04       ` Tetsuya Mukawa
2015-07-07 10:21 ` [PATCH v4 0/3] bonding PCI Port Hotplug Bernard Iremonger
2015-07-07 10:21   ` [PATCH v4 1/3] bonding: add support for " Bernard Iremonger
2015-07-15 10:22     ` Declan Doherty
2015-07-07 10:21   ` [PATCH v4 2/3] test-pmd: modified testpmd for link_bonding Bernard Iremonger
2015-07-07 10:21   ` [PATCH v4 3/3] bonding: free queue memory in stop function Bernard Iremonger
2015-07-07 13:09 ` [PATCH v4 0/1] ring PCI Port Hotplug Bernard Iremonger
2015-07-07 13:09   ` [PATCH v4 1/1] ring: changes to support " Bernard Iremonger
2015-07-18 20:27     ` Thomas Monjalon
2015-07-21 15:36       ` Iremonger, Bernard
2015-07-27  2:52     ` Thomas Monjalon
2015-07-13 13:04 ` [PATCH v3 0/2] librte_ether release memory Bernard Iremonger
2015-07-13 13:04   ` [PATCH v3 1/2] librte_ether: release memory in uninit function Bernard Iremonger
2015-07-17 13:55     ` Thomas Monjalon
2015-07-13 13:04   ` [PATCH v3 2/2] librte_ether: release queue array memory in close function Bernard Iremonger
2015-07-19 21:37     ` Thomas Monjalon
2015-07-14  4:51   ` [PATCH v3 0/2] librte_ether release memory Qiu, Michael
2015-07-14 13:10 ` [PATCH v5 0/4] virtio PCI Port Hotplug Bernard Iremonger
2015-07-14 13:10   ` [PATCH 1/5] virtio: add support for " Bernard Iremonger
2015-07-14 13:10   ` [PATCH 2/5] virtio: check vq parameter in virtqueue_detatch_unused() function Bernard Iremonger
2015-07-14 13:10   ` [PATCH 3/5] virtio: add proper queue release Bernard Iremonger
2015-07-14 13:10   ` [PATCH 4/5] virtio: free queue memory in virtio_dev_close() Bernard Iremonger
2015-07-14 18:28     ` Stephen Hemminger
2015-07-15  8:27       ` Iremonger, Bernard
2015-07-15  8:38         ` Ouyang, Changchun
2015-07-15  8:50           ` Iremonger, Bernard
2015-07-15  1:36     ` Ouyang, Changchun
2015-07-15  8:01       ` Iremonger, Bernard
2015-07-15  8:36         ` Ouyang, Changchun
2015-07-14 13:10   ` [PATCH v5 5/5] test-pmd: remove call to rte_eth_promiscuous_disable() from detach_port() Bernard Iremonger
2015-07-15 13:50 ` [PATCH v6 0/6] virtio PCI Port Hotplug Bernard Iremonger
2015-07-15 13:51   ` [PATCH v6 1/6] virtio: add support for " Bernard Iremonger
2015-07-15 13:51   ` [PATCH v6 2/6] virtio: check vq parameter in virtqueue_detatch_unused() function Bernard Iremonger
2015-07-15 13:51   ` [PATCH v6 3/6] virtio: add proper queue release Bernard Iremonger
2015-07-15 13:51   ` [PATCH v6 4/6] virtio: free queue memory in virtio_dev_close() Bernard Iremonger
2015-07-15 13:51   ` [PATCH v6 5/6] virtio: use queue_release in dev_uninit Bernard Iremonger
2015-07-15 13:51   ` [PATCH v6 6/6] test-pmd: remove call to rte_eth_promiscuous_disable() from detach_port() Bernard Iremonger
2015-07-17  9:23     ` Xu, Qian Q
2015-07-17  0:53   ` [PATCH v6 0/6] virtio PCI Port Hotplug Stephen Hemminger
2015-07-19 20:12     ` Thomas Monjalon
2015-07-15 15:32 ` [PATCH v5 0/3] bonding " Bernard Iremonger
2015-07-15 15:32   ` [PATCH v5 1/3] bonding: add support for " Bernard Iremonger
2015-07-18 20:39     ` Thomas Monjalon
2015-07-21 10:18       ` Iremonger, Bernard
2015-07-15 15:32   ` [PATCH v5 2/3] test-pmd: modified testpmd for link_bonding Bernard Iremonger
2015-07-15 15:32   ` [PATCH v5 3/3] bonding: free queue memory in stop function Bernard Iremonger
2015-07-21 15:16 ` [PATCH v6 0/3] bonding PCI Port Hotplug Bernard Iremonger
2015-07-21 15:16   ` [PATCH v6 1/3] bonding: add support for " Bernard Iremonger
2015-07-21 15:16   ` [PATCH v6 2/3] test-pmd: modified testpmd for link_bonding Bernard Iremonger
2015-07-21 15:16   ` [PATCH v6 3/3] bonding: free queue memory in stop function Bernard Iremonger
2015-07-27  2:48     ` Thomas Monjalon
2015-07-27  8:31       ` Iremonger, Bernard
2015-07-27  9:55         ` Thomas Monjalon
2015-07-27 15:54 ` [PATCH v7 0/4] bonding PCI Port Hotplug Bernard Iremonger
2015-07-27 15:54   ` [PATCH v7 1/4] bonding: add support for " Bernard Iremonger
2015-07-27 17:14     ` Thomas Monjalon
2015-07-27 15:54   ` [PATCH v7 2/4] test-pmd: modified testpmd for link_bonding Bernard Iremonger
2015-07-27 17:15     ` Thomas Monjalon
2015-07-27 15:54   ` [PATCH v7 3/4] bonding: free queue memory in close function Bernard Iremonger
2015-07-27 15:54   ` [PATCH v7 4/4] testpmd_app_ug: add example of re-attaching bonded port Bernard Iremonger
2015-07-27 17:38   ` [PATCH v7 0/4] bonding PCI Port Hotplug Thomas Monjalon
2015-08-04 15:26 ` [PATCH 1/1] bonding: fix error handling in rte_eth_bond_create() Bernard Iremonger
2015-08-04 15:52   ` Thomas Monjalon
2015-08-05 12:28     ` Iremonger, Bernard
2015-08-05 12:36 ` [PATCH v2 " Bernard Iremonger
2015-08-05 12:48   ` Liu, Yong
2015-08-05 13:15   ` Thomas Monjalon
2015-08-05 13:19     ` Iremonger, Bernard
2015-08-05 13:35       ` Thomas Monjalon
2015-08-05 13:39         ` Iremonger, Bernard
2015-08-05 14:04 ` [PATCH v3 1/1] bonding: fix device initialisation error handling Bernard Iremonger
2015-08-06  8:19   ` Jastrzebski, MichalX K
2015-08-10  0:06     ` Thomas Monjalon
2015-09-28 13:03 ` [PATCH 00/20] remove pci driver from vdevs Bernard Iremonger
2015-09-28 13:03   ` [PATCH 01/20] librte_eal: add RTE_KDRV_NONE for vdevs Bernard Iremonger
2015-09-28 13:03   ` [PATCH 02/20] librte_ether: add fields from rte_pci_driver to rte_eth_dev_data Bernard Iremonger
2015-09-29 19:08     ` Neil Horman
2015-09-30  9:56       ` Bruce Richardson
2015-09-30 13:14         ` Neil Horman
2015-09-30 13:21           ` Bruce Richardson
2015-09-30 16:33             ` Iremonger, Bernard
2015-09-30 13:18     ` Neil Horman
2015-09-30 13:23       ` Bruce Richardson
2015-09-28 13:03   ` [PATCH 03/20] librte_ether: add function rte_eth_copy_dev_info() Bernard Iremonger
2015-09-28 13:03   ` [PATCH 04/20] null: remove pci device driver Bernard Iremonger
2015-09-28 13:03   ` [PATCH 05/20] ring: " Bernard Iremonger
2015-09-28 13:03   ` [PATCH 06/20] bonding: " Bernard Iremonger
2015-09-28 13:03   ` [PATCH 07/20] pcap: " Bernard Iremonger
2015-09-28 13:03   ` [PATCH 08/20] af_packet: " Bernard Iremonger
2015-09-28 13:03   ` [PATCH 09/20] xenvirt: " Bernard Iremonger
2015-09-28 13:03   ` [PATCH 10/20] mpipe: " Bernard Iremonger
2015-09-28 13:03   ` [PATCH 11/20] ixgbe: copy pci device info to eth_dev data Bernard Iremonger
2015-09-28 13:03   ` [PATCH 12/20] e1000: " Bernard Iremonger
2015-09-28 13:03   ` [PATCH 13/20] i40e: " Bernard Iremonger
2015-09-28 13:03   ` [PATCH 14/20] fm10k: " Bernard Iremonger
2015-09-28 13:03   ` [PATCH 15/20] bnx2x: " Bernard Iremonger
2015-09-28 19:55     ` Stephen Hemminger
2015-09-29  8:43       ` Iremonger, Bernard
2015-09-28 13:03   ` [PATCH 16/20] cxgbe: " Bernard Iremonger
2015-09-28 18:53     ` Rahul Lakkireddy
2015-09-29  8:41       ` Iremonger, Bernard
2015-09-28 13:03   ` [PATCH 17/20] enic: " Bernard Iremonger
2015-09-28 13:03   ` [PATCH 18/20] mlx4: " Bernard Iremonger
2015-09-28 13:03   ` [PATCH 19/20] virtio: " Bernard Iremonger
2015-09-28 13:03   ` [PATCH 20/20] vmxnet3: " Bernard Iremonger
2015-10-01 15:16 ` [PATCH 0/1] vmxnet3 hotplug support Bernard Iremonger
2015-10-01 15:16   ` [PATCH 1/1] vmxnet3: add PCI Port Hotplug support Bernard Iremonger
2015-10-02  9:08 ` [PATCH 1/2] xenvirt: add support for PCI Port Hotplug Bernard Iremonger
2015-10-02  9:08   ` [PATCH 2/2] xenvirt: free queues in dev_close Bernard Iremonger
2015-10-02  9:09 ` [PATCH] vhost_xen: fix compile error in main.c Bernard Iremonger
2015-10-02  9:20 ` [PATCH 0/2] xenvirt hotplug support Bernard Iremonger
2015-10-12 16:25 ` [PATCH v3 00/20] remove pci driver from vdevs Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 01/20] librte_eal: add RTE_KDRV_NONE for vdevs Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 02/20] librte_ether: add fields from rte_pci_driver to rte_eth_dev_data Bernard Iremonger
2015-10-14 16:28     ` Mcnamara, John
2015-10-16 10:34       ` Iremonger, Bernard
2015-10-20  8:57     ` Qiu, Michael
2015-10-20 11:18       ` Iremonger, Bernard
2015-10-20  9:18     ` Qiu, Michael
2015-10-20 10:35       ` Iremonger, Bernard
2015-10-12 16:25   ` [PATCH v3 03/20] librte_ether: add function rte_eth_copy_dev_info() Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 04/20] null: remove pci device driver Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 05/20] ring: " Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 06/20] bonding: " Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 07/20] pcap: " Bernard Iremonger
2015-10-14 16:31     ` Mcnamara, John
2015-10-12 16:25   ` [PATCH v3 08/20] af_packet: " Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 09/20] xenvirt: " Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 10/20] mpipe: " Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 11/20] ixgbe: copy pci device info to eth_dev data Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 12/20] e1000: " Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 13/20] i40e: " Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 14/20] fm10k: " Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 15/20] bnx2x: " Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 16/20] cxgbe: " Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 17/20] enic: " Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 18/20] mlx4: " Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 19/20] virtio: " Bernard Iremonger
2015-10-12 16:25   ` [PATCH v3 20/20] vmxnet3: " Bernard Iremonger
2015-10-20 15:37 ` [PATCH 1/2] virtio: fixed segmentation fault in queue_release Bernard Iremonger
2015-10-20 15:37   ` [PATCH 2/2] rel_notes: update for fix for virtio segmentation fault Bernard Iremonger
2015-10-20 18:44   ` [PATCH 1/2] virtio: fixed segmentation fault in queue_release Stephen Hemminger
2015-10-20 21:32     ` Thomas Monjalon
2015-11-06 16:30 ` [PATCH 1/1] librte_ether: fix coverity errors in rte_eth_copy_pci_info Bernard Iremonger
2015-11-06 16:39   ` Thomas Monjalon
2015-11-06 16:54     ` Iremonger, Bernard
2015-11-06 17:20 ` [v2 0/1] librte_ether: fix coverity errors Bernard Iremonger
2015-11-06 17:20   ` [v2 1/1] librte_ether: fix coverity errors in rte_eth_copy_pci_info Bernard Iremonger
2015-11-10 15:40     ` Thomas Monjalon
2015-11-23 15:20 ` [PATCH 1/1] app/test: create ring and ethdevs in pmd_ring_autotest Bernard Iremonger
2015-11-24 16:14   ` Bruce Richardson
2015-11-24 16:29     ` Iremonger, Bernard
2015-11-24 16:30       ` Richardson, Bruce
2015-11-24 17:33 ` [PATCH v2 0/2] ring pmd autotest Bernard Iremonger
2015-11-24 17:33   ` [PATCH v2 1/2] app/test: create ring and ethdevs in pmd_ring_autotest Bernard Iremonger
2015-11-24 17:33   ` [PATCH v2 2/2] doc: revise ring-based PMD to match latest ring PMD code Bernard Iremonger
2015-11-27 16:07 ` [PATCH v3 0/2] ring pmd autotest Bernard Iremonger
2015-11-27 16:07   ` [PATCH v3 1/2] app/test: fix failures in the ring_pmd_autotest program Bernard Iremonger
2015-11-27 16:14     ` Bruce Richardson
2015-11-27 16:40       ` Iremonger, Bernard
2015-11-27 18:20         ` Thomas Monjalon
2015-11-27 16:07   ` [PATCH v3 2/2] doc: correct Rings-based PMD section in the NIC Drivers guides Bernard Iremonger
2015-11-27 16:17     ` Bruce Richardson
2015-11-28 11:01       ` Iremonger, Bernard
2015-11-28 11:01   ` [PATCH v4 0/2] ring pmd autotest Bernard Iremonger
2015-11-28 11:01     ` [PATCH v4 1/2] app/test: fix failures in the ring_pmd_autotest program Bernard Iremonger
2015-11-28 11:01     ` [PATCH v4 2/2] doc: correct Rings-based PMD section in the NIC Drivers guides Bernard Iremonger
2015-12-01 11:24       ` Mcnamara, John
2015-12-07  2:55     ` [PATCH v4 0/2] ring pmd autotest Thomas Monjalon
2015-12-04 14:05 ` [PATCH] bonding: use eth_dev link state interrupt flag Bernard Iremonger
2015-12-04 16:45   ` Declan Doherty
2015-12-06 23:12     ` Thomas Monjalon
2015-12-04 15:14 ` [PATCH 1/1] virtio: call rte_eth_copy_pci_info() later Bernard Iremonger
2015-12-06 22:37   ` Thomas Monjalon

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=0CA0A16855646F4FA96D25A158E299D6053E6363@SDCEXCHANGE01.ad.amcc.com \
    --to=lho@amcc.com \
    --cc=herbert@gondor.apana.org.au \
    --cc=linux-crypto@vger.kernel.org \
    --cc=spulijala@amcc.com \
    --cc=zbr@ioremap.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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.