diff --git a/SOURCES/openvswitch-2.16.0.patch b/SOURCES/openvswitch-2.16.0.patch index 356509d..f74d3a6 100644 --- a/SOURCES/openvswitch-2.16.0.patch +++ b/SOURCES/openvswitch-2.16.0.patch @@ -2550,7 +2550,7 @@ index c5a80ee39f..f66ed3472c 100644 void ovsdb_datum_remove_unsafe(struct ovsdb_datum *, size_t idx, const struct ovsdb_type *); diff --git a/lib/ovsdb-idl.c b/lib/ovsdb-idl.c -index 2198c69c60..c591c76353 100644 +index 2198c69c60..496ec490d3 100644 --- a/lib/ovsdb-idl.c +++ b/lib/ovsdb-idl.c @@ -1898,8 +1898,7 @@ ovsdb_idl_index_destroy_row(const struct ovsdb_idl_row *row_) @@ -2627,18 +2627,17 @@ index 2198c69c60..c591c76353 100644 ovsdb_idl_txn_add_map_op(row, column, datum, op_type); } -@@ -4112,6 +4108,10 @@ void +@@ -4112,6 +4108,9 @@ void ovsdb_idl_loop_destroy(struct ovsdb_idl_loop *loop) { if (loop) { + if (loop->committing_txn) { -+ ovsdb_idl_txn_abort(loop->committing_txn); + ovsdb_idl_txn_destroy(loop->committing_txn); + } ovsdb_idl_destroy(loop->idl); } } -@@ -4121,8 +4121,8 @@ ovsdb_idl_loop_run(struct ovsdb_idl_loop *loop) +@@ -4121,8 +4120,8 @@ ovsdb_idl_loop_run(struct ovsdb_idl_loop *loop) { ovsdb_idl_run(loop->idl); diff --git a/SPECS/openvswitch2.16.spec b/SPECS/openvswitch2.16.spec index 816847f..9fc5258 100644 --- a/SPECS/openvswitch2.16.spec +++ b/SPECS/openvswitch2.16.spec @@ -57,7 +57,7 @@ Summary: Open vSwitch Group: System Environment/Daemons daemon/database/utilities URL: http://www.openvswitch.org/ Version: 2.16.0 -Release: 52%{?dist} +Release: 53%{?dist} # Nearly all of openvswitch is ASL 2.0. The bugtool is LGPLv2+, and the # lib/sflow*.[ch] files are SISSL @@ -699,6 +699,12 @@ exit 0 %endif %changelog +* Wed Feb 16 2022 Open vSwitch CI - 2.16.0-53 +- Merging upstream branch-2.16 [RH git: b2df459e49] + Commit list: + dcde9771c5 ovsdb-idl: Fix use-after-free when destroying an IDL loop. + + * Wed Feb 16 2022 Open vSwitch CI - 2.16.0-52 - Merging upstream branch-2.16 [RH git: bba08b5363] Commit list: