DPDK patches and discussions
 help / color / mirror / Atom feed
From: Ferruh Yigit <ferruh.yigit@intel.com>
To: Shahaf Shuler <shahafs@mellanox.com>,
	Tom Barbette <barbette@kth.se>, "dev@dpdk.org" <dev@dpdk.org>
Cc: "bruce.richardson@intel.com" <bruce.richardson@intel.com>,
	"john.mcnamara@intel.com" <john.mcnamara@intel.com>,
	Thomas Monjalon <thomas@monjalon.net>,
	Andrew Rybchenko <arybchenko@solarflare.com>,
	Yongseok Koh <yskoh@mellanox.com>,
	Alejandro Lucero <alejandro.lucero@netronome.com>,
	Konstantin Ananyev <konstantin.ananyev@intel.com>
Subject: Re: [dpdk-dev] [PATCH 1/3] rte_ethdev: Add API function to read dev clock
Date: Wed, 2 Jan 2019 17:44:39 +0000	[thread overview]
Message-ID: <e1828c02-e739-8045-0698-562692d12b4d@intel.com> (raw)
In-Reply-To: <DB7PR05MB44265847F5F467AC2F148BA1C3BA0@DB7PR05MB4426.eurprd05.prod.outlook.com>

On 12/23/2018 6:06 AM, Shahaf Shuler wrote:
> Ferruh,
> 
> I share the same thoughts as Tom here.
> 
>  
> 
>>Ferruh Yigit wrote :
> 
>>> Is this a common enough feature to include into ethdev abstraction layer? Or a
> 
>>> feature for a single vendor?
> 
>> 
> 
>>I found reference to mbuf’s timestamp field only in MLX5. I think it is the
> only one to support timestamp offloading. This new API is only useful to make
> sense out of the timestamp value. And without this patch, timestamp offloading
> is completely useless…

Why timestamp offloading become useless? When timestamp offloading enabled,
device fills 'mbuf.timestamp' and you can use it.

For your case this timestamp for mlx is device clock and you are adding this API
to be able to convert device clock to real time, this is not something enables
the timestamp offload.

Technically driver can set the 'mbuf.timestamp' with the real clock right, if it
is required? Or this can be defined by a devarg?

Also this relates to how other HW vendors implemented this, if it is common
approach to fill the timestamp with the device clock and there is way to clock
reference from device, this may make sense. If other vendors already providing
the real time on timestamp, this needs to be handled in mlx driver.
That is why it is good to know what other vendors need / use this?

> 
>> 
> 
>>What would be the other way ? Define something in mlx5 header and ask clients
> to check for the driver and call the specific API ?
> 
>> 
> 
>>I see reference to timestamp offloading in Netronome Agilio, CC-ing
> maintainers. Is timestamp offloading a feature you could potentially provide ?
> Would it be host time reference or a value that need conversion with an API like
> this?
> 
>  
> 
> I don’t think that the number of vendors which implement the feature at current
> time is the qualifier for a feature to enter. Rather we should consider how
> generic it is and its need in the world of networking (since it is ethdev).
> 
> IMO, It is perfectly reasonable to expose a generic channel to read the device
> clock, same as reading device register (which exists).
> 

The concern is ethdev bloats with single vendor specific APIs. In the past we
moved some of the ethdev APIs as PMD specific APIs to PMDs. It is not nice to
have "PMD specific APIs" but that was the trade off for more usable ethdev API.

And according techboard discussion [1] for new API():

"
If the API is about HW abstraction, at least one driver
should be implemented. Preferably two.
"

I am questioning if is there possible second one, and how is their
implementation is like.


[1] https://mails.dpdk.org/archives/dev/2018-November/118697.html

  reply	other threads:[~2019-01-02 17:44 UTC|newest]

Thread overview: 15+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-21  8:25 Tom Barbette
2018-12-23  6:06 ` Shahaf Shuler
2019-01-02 17:44   ` Ferruh Yigit [this message]
2019-01-08 11:30     ` Tom Barbette
2019-03-19 13:32       ` Yigit, Ferruh
2019-03-19 13:32         ` Yigit, Ferruh
2019-03-20 14:48         ` Thomas Monjalon
2019-03-20 14:48           ` Thomas Monjalon
2019-03-20 15:57           ` Andrew Rybchenko
2019-03-20 15:57             ` Andrew Rybchenko
2019-03-21 19:37             ` Ferruh Yigit
2019-03-21 19:37               ` Ferruh Yigit
  -- strict thread matches above, loose matches on Subject: below --
2018-12-19 13:49 [dpdk-dev] [PATCH 0/3] Add rte_eth_read_clock API Tom Barbette
2018-12-19 13:49 ` [dpdk-dev] [PATCH 1/3] rte_ethdev: Add API function to read dev clock Tom Barbette
2018-12-20  6:42   ` Shahaf Shuler
2018-12-20 19:55   ` Ferruh Yigit

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=e1828c02-e739-8045-0698-562692d12b4d@intel.com \
    --to=ferruh.yigit@intel.com \
    --cc=alejandro.lucero@netronome.com \
    --cc=arybchenko@solarflare.com \
    --cc=barbette@kth.se \
    --cc=bruce.richardson@intel.com \
    --cc=dev@dpdk.org \
    --cc=john.mcnamara@intel.com \
    --cc=konstantin.ananyev@intel.com \
    --cc=shahafs@mellanox.com \
    --cc=thomas@monjalon.net \
    --cc=yskoh@mellanox.com \
    /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).