summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Lamparter <equinox@opensourcerouting.org>2023-01-23 17:23:44 +0100
committerDavid Lamparter <equinox@opensourcerouting.org>2023-01-23 17:25:51 +0100
commitd5f5fce6bef39ccd77c463634c75d01b36f155e6 (patch)
tree9a6ae9468a51ae5e57c0fa7ad0c70f2295b5b99b
parente2eb2a445cf05c8bd79afcaa8630c41a3edf9c5d (diff)
debian: drop patches merged upstream
All patches tracked here got picked up for 8.4.2. Signed-off-by: David Lamparter <equinox@opensourcerouting.org>
-rw-r--r--debian/changelog1
-rw-r--r--debian/patches/series3
-rw-r--r--debian/patches/xref_mips64el_pcrel.patch11
-rw-r--r--debian/patches/xref_symvalid.patch13
-rw-r--r--debian/patches/zserv_time_atomics.patch177
5 files changed, 1 insertions, 204 deletions
diff --git a/debian/changelog b/debian/changelog
index 4fbae60c84..ebb3f9b8d2 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,6 +1,7 @@
frr (8.4.2-1) UNRELEASED; urgency=medium
* new upstream release FRR 8.4.2
+ * drop all patches in debian/patches/, they got merged upstream
-- David Lamparter <equinox-debian@diac24.net> Mon, 23 Jan 2023 17:24:35 +0100
diff --git a/debian/patches/series b/debian/patches/series
deleted file mode 100644
index e2ff5a8656..0000000000
--- a/debian/patches/series
+++ /dev/null
@@ -1,3 +0,0 @@
-xref_mips64el_pcrel.patch
-xref_symvalid.patch
-zserv_time_atomics.patch
diff --git a/debian/patches/xref_mips64el_pcrel.patch b/debian/patches/xref_mips64el_pcrel.patch
deleted file mode 100644
index 50c8683c4f..0000000000
--- a/debian/patches/xref_mips64el_pcrel.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- frr-8.4.1/lib/xref.h 2021-11-08 04:44:24.000000000 +0100
-+++ frr-8.4.1/lib/xref.h 2022-11-29 19:40:16.614404443 +0100
-@@ -195,7 +195,7 @@
- * some build issue with it just add -DFRR_XREF_NO_NOTE to your build flags
- * to disable it.
- */
--#ifdef FRR_XREF_NO_NOTE
-+#if defined(FRR_XREF_NO_NOTE) || defined(__mips64)
- #define XREF_NOTE ""
- #else
-
diff --git a/debian/patches/xref_symvalid.patch b/debian/patches/xref_symvalid.patch
deleted file mode 100644
index d80d216403..0000000000
--- a/debian/patches/xref_symvalid.patch
+++ /dev/null
@@ -1,13 +0,0 @@
-diff --git a/lib/elf_py.c b/lib/elf_py.c
-index 75d2d6007f83..7c503cfb9db3 100644
---- a/lib/elf_py.c
-+++ b/lib/elf_py.c
-@@ -293,7 +293,7 @@ static PyObject *elfreloc_getsection(PyObject *self, PyObject *args)
- if (!w->es)
- Py_RETURN_NONE;
-
-- if (w->symidx == 0) {
-+ if (!w->symvalid || w->symidx == 0) {
- size_t idx = 0;
- Elf_Scn *scn;
-
diff --git a/debian/patches/zserv_time_atomics.patch b/debian/patches/zserv_time_atomics.patch
deleted file mode 100644
index 258439c8cd..0000000000
--- a/debian/patches/zserv_time_atomics.patch
+++ /dev/null
@@ -1,177 +0,0 @@
-diff --git a/zebra/zserv.c b/zebra/zserv.c
-index ebe246ffbcc1..a99dce03c082 100644
---- a/zebra/zserv.c
-+++ b/zebra/zserv.c
-@@ -222,14 +222,16 @@ static void zserv_write(struct thread *thread)
- struct stream *msg;
- uint32_t wcmd = 0;
- struct stream_fifo *cache;
-+ uint64_t time_now = monotime(NULL);
-
- /* If we have any data pending, try to flush it first */
- switch (buffer_flush_all(client->wb, client->sock)) {
- case BUFFER_ERROR:
- goto zwrite_fail;
- case BUFFER_PENDING:
-- atomic_store_explicit(&client->last_write_time, monotime(NULL),
-- memory_order_relaxed);
-+ frr_with_mutex (&client->stats_mtx) {
-+ client->last_write_time = time_now;
-+ }
- zserv_client_event(client, ZSERV_CLIENT_WRITE);
- return;
- case BUFFER_EMPTY:
-@@ -263,20 +265,19 @@ static void zserv_write(struct thread *thread)
- case BUFFER_ERROR:
- goto zwrite_fail;
- case BUFFER_PENDING:
-- atomic_store_explicit(&client->last_write_time, monotime(NULL),
-- memory_order_relaxed);
-+ frr_with_mutex (&client->stats_mtx) {
-+ client->last_write_time = time_now;
-+ }
- zserv_client_event(client, ZSERV_CLIENT_WRITE);
- return;
- case BUFFER_EMPTY:
- break;
- }
-
-- atomic_store_explicit(&client->last_write_cmd, wcmd,
-- memory_order_relaxed);
--
-- atomic_store_explicit(&client->last_write_time, monotime(NULL),
-- memory_order_relaxed);
--
-+ frr_with_mutex (&client->stats_mtx) {
-+ client->last_write_cmd = wcmd;
-+ client->last_write_time = time_now;
-+ }
- return;
-
- zwrite_fail:
-@@ -423,11 +424,13 @@ static void zserv_read(struct thread *thread)
- }
-
- if (p2p < p2p_orig) {
-+ uint64_t time_now = monotime(NULL);
-+
- /* update session statistics */
-- atomic_store_explicit(&client->last_read_time, monotime(NULL),
-- memory_order_relaxed);
-- atomic_store_explicit(&client->last_read_cmd, hdr.command,
-- memory_order_relaxed);
-+ frr_with_mutex (&client->stats_mtx) {
-+ client->last_read_time = time_now;
-+ client->last_read_cmd = hdr.command;
-+ }
-
- /* publish read packets on client's input queue */
- frr_with_mutex (&client->ibuf_mtx) {
-@@ -621,6 +624,7 @@ static void zserv_client_free(struct zserv *client)
- buffer_free(client->wb);
-
- /* Free buffer mutexes */
-+ pthread_mutex_destroy(&client->stats_mtx);
- pthread_mutex_destroy(&client->obuf_mtx);
- pthread_mutex_destroy(&client->ibuf_mtx);
-
-@@ -741,14 +745,13 @@ static struct zserv *zserv_client_create(int sock)
- client->obuf_fifo = stream_fifo_new();
- client->ibuf_work = stream_new(stream_size);
- client->obuf_work = stream_new(stream_size);
-+ client->connect_time = monotime(NULL);
- pthread_mutex_init(&client->ibuf_mtx, NULL);
- pthread_mutex_init(&client->obuf_mtx, NULL);
-+ pthread_mutex_init(&client->stats_mtx, NULL);
- client->wb = buffer_new(0);
- TAILQ_INIT(&(client->gr_info_queue));
-
-- atomic_store_explicit(&client->connect_time, monotime(NULL),
-- memory_order_relaxed);
--
- /* Initialize flags */
- for (afi = AFI_IP; afi < AFI_MAX; afi++) {
- for (i = 0; i < ZEBRA_ROUTE_MAX; i++)
-@@ -1009,8 +1012,14 @@ static void zebra_show_client_detail(struct vty *vty, struct zserv *client)
- vty_out(vty, "------------------------ \n");
- vty_out(vty, "FD: %d \n", client->sock);
-
-- connect_time = (time_t) atomic_load_explicit(&client->connect_time,
-- memory_order_relaxed);
-+ frr_with_mutex (&client->stats_mtx) {
-+ connect_time = client->connect_time;
-+ last_read_time = client->last_read_time;
-+ last_write_time = client->last_write_time;
-+
-+ last_read_cmd = client->last_read_cmd;
-+ last_write_cmd = client->last_write_cmd;
-+ }
-
- vty_out(vty, "Connect Time: %s \n",
- zserv_time_buf(&connect_time, cbuf, ZEBRA_TIME_BUF));
-@@ -1030,16 +1039,6 @@ static void zebra_show_client_detail(struct vty *vty, struct zserv *client)
- vty_out(vty, "Client will %sbe notified about it's routes status\n",
- client->notify_owner ? "" : "Not ");
-
-- last_read_time = (time_t)atomic_load_explicit(&client->last_read_time,
-- memory_order_relaxed);
-- last_write_time = (time_t)atomic_load_explicit(&client->last_write_time,
-- memory_order_relaxed);
--
-- last_read_cmd = atomic_load_explicit(&client->last_read_cmd,
-- memory_order_relaxed);
-- last_write_cmd = atomic_load_explicit(&client->last_write_cmd,
-- memory_order_relaxed);
--
- vty_out(vty, "Last Msg Rx Time: %s \n",
- zserv_time_buf(&last_read_time, rbuf, ZEBRA_TIME_BUF));
- vty_out(vty, "Last Msg Tx Time: %s \n",
-@@ -1173,12 +1172,11 @@ static void zebra_show_client_brief(struct vty *vty, struct zserv *client)
- char wbuf[ZEBRA_TIME_BUF];
- time_t connect_time, last_read_time, last_write_time;
-
-- connect_time = (time_t)atomic_load_explicit(&client->connect_time,
-- memory_order_relaxed);
-- last_read_time = (time_t)atomic_load_explicit(&client->last_read_time,
-- memory_order_relaxed);
-- last_write_time = (time_t)atomic_load_explicit(&client->last_write_time,
-- memory_order_relaxed);
-+ frr_with_mutex (&client->stats_mtx) {
-+ connect_time = client->connect_time;
-+ last_read_time = client->last_read_time;
-+ last_write_time = client->last_write_time;
-+ }
-
- if (client->instance || client->session_id)
- snprintfrr(client_string, sizeof(client_string), "%s[%u:%u]",
-diff --git a/zebra/zserv.h b/zebra/zserv.h
-index db7b70d7c45f..36030d9a9a7f 100644
---- a/zebra/zserv.h
-+++ b/zebra/zserv.h
-@@ -215,16 +215,21 @@ struct zserv {
- * relative to last_read_time.
- */
-
-+ pthread_mutex_t stats_mtx;
-+ /* BEGIN covered by stats_mtx */
-+
- /* monotime of client creation */
-- _Atomic uint64_t connect_time;
-+ uint64_t connect_time;
- /* monotime of last message received */
-- _Atomic uint64_t last_read_time;
-+ uint64_t last_read_time;
- /* monotime of last message sent */
-- _Atomic uint64_t last_write_time;
-+ uint64_t last_write_time;
- /* command code of last message read */
-- _Atomic uint64_t last_read_cmd;
-+ uint64_t last_read_cmd;
- /* command code of last message written */
-- _Atomic uint64_t last_write_cmd;
-+ uint64_t last_write_cmd;
-+
-+ /* END covered by stats_mtx */
-
- /*
- * Number of instances configured with