2019-05-19 13:08:55 +01:00
|
|
|
|
2017-01-08 13:54:02 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-10-19 21:48:59 +02:00
|
|
|
|
2017-01-08 13:54:02 +01:00
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
|
|
|
|
|
2013-10-05 17:56:59 -03:00
|
|
|
|
2017-01-08 13:54:02 +01:00
|
|
|
|
2016-12-01 11:32:07 +01:00
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
2021-11-15 09:23:03 -08:00
|
|
|
|
|
|
|
|
|
2013-09-24 06:19:57 -07:00
|
|
|
|
2022-05-02 10:46:10 +02:00
|
|
|
|
|
|
|
|
|
2013-10-23 08:44:50 +02:00
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
2017-01-08 13:54:02 +01:00
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
2017-05-05 06:56:54 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2013-10-05 17:56:59 -03:00
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
2011-12-06 08:04:40 +00:00
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2014-08-22 18:32:09 -07:00
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
2011-12-06 08:04:40 +00:00
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
2011-12-10 09:48:31 +00:00
|
|
|
|
2017-06-07 10:34:39 -07:00
|
|
|
|
|
|
|
|
|
2017-03-24 19:42:37 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2022-07-18 10:26:44 -07:00
|
|
|
|
2017-03-24 19:42:37 +01:00
|
|
|
|
|
|
|
|
|
2017-05-05 06:56:54 -07:00
|
|
|
|
2017-03-24 19:42:37 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2025-02-12 13:24:17 +00:00
|
|
|
|
2017-03-24 19:42:37 +01:00
|
|
|
|
2017-05-05 06:56:54 -07:00
|
|
|
|
|
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
2017-01-08 13:54:02 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-05-05 06:56:54 -07:00
|
|
|
|
|
|
|
|
|
2013-09-24 06:19:57 -07:00
|
|
|
|
2017-01-08 13:54:02 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
2017-05-05 06:56:54 -07:00
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
2022-05-02 10:46:08 +02:00
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
|
|
|
|
|
2017-01-08 13:54:02 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2022-05-02 10:46:10 +02:00
|
|
|
|
2017-01-08 13:54:02 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2022-05-02 10:46:10 +02:00
|
|
|
|
|
|
|
|
|
2017-01-08 13:54:02 +01:00
|
|
|
|
2013-09-24 06:19:57 -07:00
|
|
|
|
2017-01-08 13:54:02 +01:00
|
|
|
|
|
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
2012-08-26 19:14:12 +02:00
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-06-07 10:34:39 -07:00
|
|
|
|
2017-03-24 19:42:37 +01:00
|
|
|
|
2022-07-18 10:26:44 -07:00
|
|
|
|
2017-03-24 19:42:37 +01:00
|
|
|
|
|
|
|
|
|
2017-05-05 06:56:54 -07:00
|
|
|
|
2017-03-24 19:42:37 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
2017-03-09 13:53:55 +03:00
|
|
|
|
2017-01-08 13:54:02 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2017-05-05 06:56:54 -07:00
|
|
|
|
|
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
2017-05-05 06:56:54 -07:00
|
|
|
|
|
|
|
|
|
2013-09-24 06:19:57 -07:00
|
|
|
|
2017-01-08 13:54:02 +01:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
infiniband: i40iw, nes: don't use wall time for TCP sequence numbers
The nes infiniband driver uses current_kernel_time() to get a nanosecond
granunarity timestamp to initialize its tcp sequence counters. This is
one of only a few remaining users of that deprecated function, so we
should try to get rid of it.
Aside from using a deprecated API, there are several problems I see here:
- Using a CLOCK_REALTIME based time source makes it predictable in
case the time base is synchronized.
- Using a coarse timestamp means it only gets updated once per jiffie,
making it even more predictable in order to avoid having to access
the hardware clock source
- The upper 2 bits are always zero because the nanoseconds are at most
999999999.
For the Linux TCP implementation, we use secure_tcp_seq(), which appears
to be appropriate here as well, and solves all the above problems.
i40iw uses a variant of the same code, so I do that same thing there
for ipv4. Unlike nes, i40e also supports ipv6, which needs to call
secure_tcpv6_seq instead.
Acked-by: Shiraz Saleem <shiraz.saleem@intel.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
2018-07-09 10:34:43 +02:00
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
2022-05-02 10:46:08 +02:00
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
2013-09-24 06:19:57 -07:00
|
|
|
|
2022-05-02 10:46:10 +02:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
2011-08-03 20:50:44 -07:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|