Jesper Dangaard Brouer
3fd9dcd689
selftests/bpf: xdp_hw_metadata clear metadata when -EOPNOTSUPP
...
The AF_XDP userspace part of xdp_hw_metadata see non-zero as a signal of
the availability of rx_timestamp and rx_hash in data_meta area. The
kernel-side BPF-prog code doesn't initialize these members when kernel
returns an error e.g. -EOPNOTSUPP. This memory area is not guaranteed to
be zeroed, and can contain garbage/previous values, which will be read
and interpreted by AF_XDP userspace side.
Tested this on different drivers. The experiences are that for most
packets they will have zeroed this data_meta area, but occasionally it
will contain garbage data.
Example of failure tested on ixgbe:
poll: 1 (0)
xsk_ring_cons__peek: 1
0x18ec788: rx_desc[0]->addr=100000000008000 addr=8100 comp_addr=8000
rx_hash: 3697961069
rx_timestamp: 9024981991734834796 (sec:9024981991.7348)
0x18ec788: complete idx=8 addr=8000
Converting to date:
date -d @9024981991
2255-12-28T20:26:31 CET
I choose a simple fix in this patch. When kfunc fails or isn't supported
assign zero to the corresponding struct meta value.
It's up to the individual BPF-programmer to do something smarter e.g.
that fits their use-case, like getting a software timestamp and marking
a flag that gives the type of timestamp.
Fixes: 297a3f124155 ("selftests/bpf: Simple program to dump XDP RX metadata")
Signed-off-by: Jesper Dangaard Brouer <brouer@redhat.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Acked-by: Stanislav Fomichev <sdf@google.com>
Link: https://lore.kernel.org/bpf/167527271027.937063.5177725618616476592.stgit@firesoul
2023-02-02 00:48:07 +01:00
..
2021-02-02 18:23:29 -08:00
2022-02-28 16:28:40 +01:00
2022-08-29 17:00:41 +02:00
2022-08-29 17:00:41 +02:00
2021-01-27 18:18:15 -08:00
2022-02-07 08:05:24 -08:00
2022-02-07 08:05:24 -08:00
2021-09-14 15:49:24 -07:00
2021-08-25 17:40:35 -07:00
2022-09-29 09:25:47 -07:00
2022-08-23 22:48:12 +02:00
2022-06-11 14:25:35 -07:00
2022-10-21 19:23:34 -07:00
2022-08-10 10:12:48 -07:00
2022-05-10 11:20:45 -07:00
2021-05-26 10:45:41 -07:00
2020-07-25 20:16:34 -07:00
2020-07-25 20:16:33 -07:00
2020-12-04 22:32:40 +01:00
2022-08-10 10:12:48 -07:00
2021-05-26 10:45:41 -07:00
2022-12-04 19:00:15 -08:00
2021-05-26 10:45:41 -07:00
2022-01-18 15:45:06 -08:00
2021-07-23 16:45:17 -07:00
2020-09-28 16:48:02 -07:00
2021-05-26 10:45:41 -07:00
2022-09-28 16:30:03 -07:00
2021-05-26 10:45:41 -07:00
2022-09-28 16:30:03 -07:00
2022-09-28 16:30:03 -07:00
2021-08-06 17:16:33 +02:00
2021-05-26 10:45:41 -07:00
2020-05-09 17:05:27 -07:00
2020-05-09 17:05:27 -07:00
2020-06-24 18:37:59 -07:00
2021-05-11 15:07:17 -07:00
2020-07-25 20:16:34 -07:00
2020-07-31 00:43:49 +02:00
2020-06-24 18:37:59 -07:00
2021-05-26 10:45:41 -07:00
2021-05-26 10:45:41 -07:00
2022-01-18 15:45:06 -08:00
2022-09-28 16:30:03 -07:00
2022-08-25 11:35:37 -07:00
2022-02-07 08:05:24 -08:00
2022-06-20 17:40:52 -07:00
2023-01-23 20:53:00 +01:00
2022-01-18 14:27:39 -08:00
2023-01-23 20:53:01 +01:00
2021-03-26 17:51:02 +01:00
2022-12-22 00:56:27 +01:00
2020-12-29 15:16:21 +01:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-12-15 16:53:51 -08:00
2019-12-15 16:53:51 -08:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-11-04 16:06:56 +01:00
2019-12-15 16:53:51 -08:00
2019-08-07 14:43:49 -07:00
2019-11-04 16:06:56 +01:00
2019-11-04 16:06:56 +01:00
2019-11-04 16:06:56 +01:00
2019-11-04 16:06:56 +01:00
2019-11-04 16:06:56 +01:00
2022-06-07 10:20:44 -07:00
2022-06-07 10:20:44 -07:00
2022-06-07 10:20:44 -07:00
2022-06-07 10:20:44 -07:00
2020-08-19 14:19:39 -07:00
2020-08-19 14:19:39 -07:00
2020-08-19 14:19:39 -07:00
2020-08-19 14:19:39 -07:00
2019-10-15 16:06:05 -07:00
2021-04-26 18:37:13 -07:00
2019-10-15 16:06:05 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2019-08-07 14:43:49 -07:00
2022-05-09 17:15:32 +02:00
2019-11-04 16:06:56 +01:00
2020-08-18 18:12:46 -07:00
2019-11-04 16:06:56 +01:00
2020-08-19 14:19:39 -07:00
2020-08-19 14:19:39 -07:00
2022-07-05 21:15:19 -07:00
2020-08-19 14:19:39 -07:00
2020-08-19 14:19:39 -07:00
2020-08-19 14:19:39 -07:00
2020-08-19 14:19:39 -07:00
2020-08-19 14:19:39 -07:00
2020-07-13 10:42:03 -07:00
2022-12-15 00:05:13 +01:00
2019-05-24 14:05:58 -07:00
2019-05-24 14:05:58 -07:00
2019-05-24 14:05:58 -07:00
2022-12-15 22:50:17 +01:00
2022-12-15 00:05:13 +01:00
2022-12-15 00:05:12 +01:00
2020-09-29 11:10:48 -07:00
2022-11-30 15:33:48 -08:00
2022-01-27 12:03:46 -08:00
2021-11-11 17:41:11 -08:00
2022-08-24 17:54:40 -07:00
2020-07-25 20:16:35 -07:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2020-07-25 20:16:35 -07:00
2022-01-19 12:51:30 -08:00
2022-08-23 16:08:22 -07:00
2022-01-19 12:51:30 -08:00
2022-09-23 13:59:08 -07:00
2022-08-25 11:35:37 -07:00
2021-10-07 22:01:56 -07:00
2022-11-22 14:45:41 -08:00
2022-11-22 14:45:41 -08:00
2022-11-22 14:45:41 -08:00
2022-10-25 23:19:19 -07:00
2022-10-25 23:19:19 -07:00
2022-10-25 23:19:19 -07:00
2022-12-04 16:51:18 -08:00
2022-10-25 23:19:19 -07:00
2021-10-08 15:10:43 -07:00
2022-08-29 22:19:48 +02:00
2021-10-07 22:01:56 -07:00
2021-10-07 22:01:56 -07:00
2021-10-07 22:01:56 -07:00
2022-09-09 10:40:45 -07:00
2022-02-04 11:29:01 -08:00
2022-02-04 11:29:01 -08:00
2022-07-08 14:27:03 +02:00
2023-01-25 07:57:50 -08:00
2023-01-25 07:57:50 -08:00
2023-01-25 07:57:50 -08:00
2022-12-22 00:56:27 +01:00
2021-10-07 22:01:56 -07:00
2023-01-25 10:25:57 -08:00
2023-01-25 10:25:57 -08:00
2023-01-20 17:55:04 -08:00
2022-12-07 17:01:22 -08:00
2022-11-21 12:47:04 -08:00
2022-05-09 17:15:32 +02:00
2021-03-10 13:37:33 -08:00
2020-03-02 16:25:14 -08:00
2022-09-02 15:55:37 +02:00
2022-02-07 08:05:24 -08:00
2021-03-16 23:52:16 +01:00
2021-11-07 11:54:51 -08:00
2021-11-07 11:54:51 -08:00
2021-11-07 11:54:51 -08:00
2020-09-29 13:09:24 -07:00
2021-11-06 12:54:12 -07:00
2021-09-28 13:51:19 -07:00
2022-04-06 10:32:12 -07:00
2020-08-26 12:47:56 -07:00
2022-01-20 21:19:05 -08:00
2020-04-24 17:34:30 -07:00
2020-08-26 12:47:56 -07:00
2020-09-29 13:09:24 -07:00
2022-06-07 10:41:20 -07:00
2022-12-14 21:30:40 -08:00
2021-09-13 10:53:50 -07:00
2021-10-07 22:01:56 -07:00
2021-12-13 09:25:59 -08:00
2022-09-26 20:30:40 -07:00
2022-08-31 14:10:01 -07:00
2022-03-10 18:57:55 -08:00
2022-12-22 17:19:23 -08:00
2022-12-22 00:53:58 +01:00
2021-10-01 15:31:51 -07:00
2022-08-10 09:22:18 -07:00
2022-09-07 11:05:17 -07:00
2022-01-18 14:27:39 -08:00
2021-09-28 13:51:19 -07:00
2023-02-02 00:25:14 +01:00
2022-05-10 14:42:06 -07:00
2022-10-25 10:14:51 -07:00
2022-01-18 14:27:39 -08:00
2022-04-26 15:41:46 -07:00
2022-04-26 15:41:46 -07:00
2022-11-22 13:33:56 -08:00
2022-12-01 19:38:17 -08:00
2022-11-22 13:34:08 -08:00
2021-05-13 17:23:57 -07:00
2021-04-23 14:05:27 -07:00
2021-04-23 14:05:27 -07:00
2021-04-23 14:05:27 -07:00
2020-06-11 16:05:56 +02:00
2022-06-22 19:14:33 -07:00
2022-07-07 16:35:21 +02:00
2022-03-20 18:55:05 -07:00
2020-01-20 16:37:45 -08:00
2020-01-20 16:37:45 -08:00
2022-01-06 22:25:53 +01:00
2020-01-20 16:37:45 -08:00
2022-05-09 17:15:32 +02:00
2021-03-10 00:11:16 +01:00
2022-08-09 18:46:11 -07:00
2022-07-08 23:01:26 +02:00
2022-11-16 23:00:56 -08:00
2023-01-28 12:30:09 -08:00
2022-12-07 17:01:22 -08:00
2022-05-11 16:57:27 -07:00
2022-03-30 14:17:25 +02:00
2020-09-15 18:28:27 -07:00
2020-09-15 18:28:27 -07:00
2020-03-04 13:41:06 -08:00
2022-05-20 15:36:48 -07:00
2023-01-25 07:57:50 -08:00
2023-01-25 07:57:50 -08:00
2023-01-25 07:57:50 -08:00
2021-10-07 22:01:56 -07:00
2021-03-02 11:30:59 +01:00
2021-08-24 14:17:53 -07:00
2022-04-08 22:38:17 +02:00
2022-02-07 08:05:24 -08:00
2022-05-09 17:15:32 +02:00
2020-10-09 22:03:06 +02:00
2020-10-09 22:03:06 +02:00
2020-10-09 22:03:06 +02:00
2023-01-28 12:45:14 -08:00
2019-05-23 16:20:57 +02:00
2019-05-23 16:20:57 +02:00
2019-05-23 16:20:57 +02:00
2021-11-30 10:56:28 -08:00
2019-06-19 02:22:52 +02:00
2022-04-19 10:18:56 -07:00
2020-01-10 17:20:07 +01:00
2020-09-03 17:14:40 -07:00
2022-05-09 17:15:32 +02:00
2022-12-14 18:35:41 +01:00
2022-09-01 12:16:21 -07:00
2021-10-06 12:34:02 -07:00
2021-01-29 02:09:31 +01:00
2021-01-29 02:09:31 +01:00
2022-02-07 08:05:24 -08:00
2022-01-20 21:19:05 -08:00
2021-10-07 22:01:56 -07:00
2021-10-07 22:01:56 -07:00
2023-01-25 15:10:34 -08:00
2022-04-20 23:48:34 +02:00
2021-09-28 13:51:19 -07:00
2021-02-11 17:44:41 -08:00
2022-01-14 17:26:14 -08:00
2021-10-07 22:01:56 -07:00
2021-10-07 22:01:56 -07:00
2021-10-07 22:01:56 -07:00
2021-09-28 13:51:19 -07:00
2021-08-20 01:10:01 +02:00
2022-01-25 18:25:05 -08:00
2022-03-20 19:16:50 -07:00
2021-12-11 17:40:23 -08:00
2022-04-19 13:48:20 -07:00
2021-11-30 10:56:28 -08:00
2019-06-19 02:22:52 +02:00
2019-06-19 02:22:52 +02:00
2020-09-03 17:14:40 -07:00
2019-06-19 02:22:52 +02:00
2021-11-30 10:56:28 -08:00
2021-05-19 00:33:40 +02:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2022-08-26 22:07:01 -07:00
2022-06-16 21:49:05 +02:00
2022-11-23 17:45:30 -08:00
2023-01-25 07:57:49 -08:00
2022-12-06 16:40:16 -08:00
2022-10-21 13:58:09 -07:00
2021-02-26 11:51:48 -08:00
2022-10-25 23:11:47 -07:00
2022-10-25 23:11:46 -07:00
2022-06-23 09:49:57 -07:00
2022-06-23 09:49:58 -07:00
2022-06-23 09:49:57 -07:00
2021-10-07 22:01:56 -07:00
2022-07-19 09:33:18 -07:00
2022-08-17 09:42:07 -07:00
2020-06-28 10:06:53 -07:00
2022-08-08 15:42:00 +02:00
2022-09-10 17:27:32 -07:00
2023-01-18 13:33:45 -08:00
2022-01-27 12:03:46 -08:00
2021-10-01 15:31:51 -07:00
2022-06-28 13:13:33 -07:00
2022-01-20 21:19:05 -08:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2020-09-03 17:14:40 -07:00
2021-09-28 13:51:19 -07:00
2020-04-26 10:00:36 -07:00
2021-08-13 16:40:40 -07:00
2022-07-19 09:33:18 -07:00
2021-01-08 13:39:24 -08:00
2020-01-20 16:37:45 -08:00
2020-01-20 16:37:45 -08:00
2020-01-20 16:37:45 -08:00
2022-06-07 10:20:44 -07:00
2020-08-19 14:19:39 -07:00
2022-05-09 17:15:32 +02:00
2020-01-20 16:37:45 -08:00
2020-01-20 16:37:45 -08:00
2022-07-05 21:15:19 -07:00
2020-01-20 16:37:45 -08:00
2021-10-25 20:39:42 -07:00
2020-12-10 16:51:28 +01:00
2020-01-20 16:37:45 -08:00
2020-01-20 16:37:45 -08:00
2020-01-20 16:37:45 -08:00
2022-05-09 17:15:32 +02:00
2022-07-08 14:27:03 +02:00
2020-08-20 16:45:09 +02:00
2020-08-01 23:10:42 -07:00
2022-03-05 09:38:15 -08:00
2022-01-06 15:20:49 -08:00
2022-01-19 01:27:03 +01:00
2020-09-21 16:18:00 -07:00
2022-08-16 17:39:59 -04:00
2021-10-08 15:10:43 -07:00
2020-07-01 09:06:12 +02:00
2020-03-30 15:00:30 -07:00
2020-06-24 11:10:59 -07:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2020-01-10 17:20:07 +01:00
2021-09-28 13:51:19 -07:00
2020-01-10 17:20:07 +01:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2020-11-14 08:17:27 -08:00
2021-02-12 17:37:23 -08:00
2021-03-10 13:37:11 -08:00
2021-02-24 16:48:16 +01:00
2021-02-12 17:37:23 -08:00
2021-02-12 17:37:23 -08:00
2021-02-12 17:37:23 -08:00
2021-02-12 17:37:23 -08:00
2021-02-12 17:37:23 -08:00
2022-04-06 10:32:12 -07:00
2021-05-11 15:07:17 -07:00
2020-11-05 20:04:46 -08:00
2022-08-08 15:42:00 +02:00
2019-07-03 15:06:33 +02:00
2022-12-08 18:25:31 -08:00
2020-10-19 15:57:42 -07:00
2022-04-06 10:32:12 -07:00
2020-10-02 15:00:49 -07:00
2021-10-05 17:07:42 -07:00
2021-12-02 11:18:36 -08:00
2020-06-22 17:01:48 -07:00
2022-04-03 16:42:43 -07:00
2021-11-07 08:34:23 -08:00
2021-11-25 23:05:23 +01:00
2022-10-10 16:49:43 -07:00
2020-03-02 22:06:27 -08:00
2020-01-20 16:37:45 -08:00
2021-12-10 15:29:18 -08:00
2022-04-28 20:03:29 -07:00
2021-05-24 13:30:52 -07:00
2022-09-21 17:33:42 -07:00
2020-01-20 16:37:45 -08:00
2020-01-20 16:37:45 -08:00
2021-10-01 15:31:51 -07:00
2021-10-07 22:01:56 -07:00
2020-11-05 19:55:57 -08:00
2021-11-07 08:34:23 -08:00
2022-05-20 15:07:41 -07:00
2021-06-15 18:01:06 +02:00
2022-11-11 13:18:36 -08:00
2021-04-08 23:54:48 -07:00
2022-10-25 10:14:51 -07:00
2021-01-20 14:10:35 -08:00
2020-04-28 17:27:08 -07:00
2020-09-28 17:20:28 -07:00
2021-10-01 15:31:51 -07:00
2020-03-02 16:25:14 -08:00
2021-10-22 14:26:33 -07:00
2021-08-17 00:45:08 +02:00
2021-10-07 22:01:56 -07:00
2021-10-07 22:01:56 -07:00
2022-05-09 17:15:32 +02:00
2021-09-28 13:51:19 -07:00
2020-11-19 11:58:15 -08:00
2022-07-26 16:29:23 +02:00
2021-11-28 22:24:57 -08:00
2021-11-07 08:34:23 -08:00
2020-09-28 21:33:38 -07:00
2021-05-11 15:07:17 -07:00
2022-10-21 19:23:34 -07:00
2022-05-09 17:15:32 +02:00
2022-02-07 08:05:24 -08:00
2020-01-20 16:37:45 -08:00
2021-10-07 22:01:56 -07:00
2022-03-08 17:39:29 -08:00
2023-01-29 19:16:28 -08:00
2023-01-29 19:16:28 -08:00
2022-04-19 13:48:20 -07:00
2022-03-20 18:59:00 -07:00
2020-11-12 18:39:28 -08:00
2021-11-23 20:16:18 -08:00
2022-01-20 21:19:05 -08:00
2021-11-07 08:34:23 -08:00
2021-09-28 13:51:19 -07:00
2021-11-26 18:01:56 -08:00
2022-10-19 16:40:45 -07:00
2020-06-01 14:38:20 -07:00
2021-05-11 15:07:17 -07:00
2021-08-15 00:19:10 -07:00
2022-03-18 15:46:59 +01:00
2020-08-21 15:16:12 -07:00
2022-02-15 10:10:31 -08:00
2021-10-07 22:01:56 -07:00
2022-01-20 21:33:32 -08:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2022-11-17 19:22:15 -08:00
2022-11-17 19:22:14 -08:00
2021-02-10 11:05:34 -08:00
2022-05-27 07:57:25 -07:00
2022-01-20 08:52:53 +02:00
2021-05-13 17:23:57 -07:00
2021-05-13 17:23:57 -07:00
2020-11-12 09:13:49 -08:00
2022-05-13 15:13:48 +02:00
2022-03-17 23:12:48 -07:00
2022-03-17 23:12:48 -07:00
2022-03-17 23:12:48 -07:00
2020-09-09 11:21:34 -07:00
2020-09-09 11:21:34 -07:00
2020-09-10 20:01:53 -07:00
2022-04-03 19:55:57 -07:00
2021-09-28 13:51:19 -07:00
2022-08-26 14:55:38 -07:00
2022-01-20 21:19:05 -08:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2021-09-28 13:51:19 -07:00
2023-01-15 12:56:17 -08:00
2022-01-20 21:19:05 -08:00
2021-11-07 08:34:23 -08:00
2021-09-28 13:51:19 -07:00
2021-10-07 22:01:56 -07:00
2021-10-07 22:01:56 -07:00
2022-08-09 09:47:13 -07:00
2020-09-29 13:09:24 -07:00
2020-09-29 13:09:24 -07:00
2022-01-20 08:52:53 +02:00
2022-05-20 16:12:14 -07:00
2022-12-19 23:53:15 +01:00
2022-05-20 19:54:34 -07:00
2023-01-23 20:53:00 +01:00
2022-04-05 13:16:08 -07:00
2022-04-05 13:16:08 -07:00
2022-04-05 13:16:08 -07:00
2022-09-21 16:25:03 -07:00
2022-11-11 11:44:46 -08:00
2022-09-16 22:39:36 +02:00
2021-12-02 11:18:36 -08:00
2022-09-16 22:39:36 +02:00
2023-01-28 12:30:08 -08:00
2023-01-28 12:30:09 -08:00
2023-01-28 12:30:09 -08:00
2022-01-21 14:14:02 -08:00
2022-01-21 14:14:02 -08:00
2021-07-07 19:51:13 -07:00
2021-09-28 13:51:19 -07:00
2022-03-09 14:19:23 -08:00
2022-01-11 09:44:06 -08:00
2021-10-07 22:01:56 -07:00
2020-01-20 16:37:45 -08:00
2022-07-13 23:09:16 -07:00
2021-10-07 22:01:56 -07:00
2022-01-21 14:14:03 -08:00
2023-01-13 14:23:02 -08:00
2022-02-01 09:51:31 -08:00
2022-02-01 09:51:31 -08:00
2022-02-01 09:51:31 -08:00
2022-02-01 09:51:31 -08:00
2021-10-07 22:01:56 -07:00
2022-02-11 13:13:04 -08:00
2021-07-15 22:31:11 +02:00
2021-07-15 22:31:11 +02:00
2022-09-06 19:51:14 -07:00
2022-03-30 19:31:30 -07:00
2022-02-07 08:05:24 -08:00
2022-02-07 08:05:24 -08:00
2022-09-06 19:51:14 -07:00
2022-04-03 19:55:57 -07:00
2021-11-01 18:05:12 -07:00
2022-11-20 15:45:48 -08:00
2020-07-31 00:43:49 +02:00
2022-12-08 18:39:28 -08:00
2022-10-13 08:27:38 -07:00
2021-09-28 13:51:19 -07:00
2023-02-02 00:48:07 +01:00
2023-01-23 09:58:21 -08:00
2023-01-23 09:58:21 -08:00
2020-01-20 16:37:45 -08:00
2022-02-01 09:51:31 -08:00
2023-01-28 12:45:14 -08:00
2021-08-09 23:25:15 +02:00
2021-09-28 13:51:19 -07:00
2021-09-26 13:07:28 -07:00
2022-12-06 12:42:38 -08:00
2023-01-11 18:16:52 -08:00