diff options
author | Thomas Haller <thaller@redhat.com> | 2020-11-13 22:42:32 +0100 |
---|---|---|
committer | Thomas Haller <thaller@redhat.com> | 2020-11-17 13:44:39 +0100 |
commit | 6ad447355016903cc03c0bfb4b7d0a80201df3d2 (patch) | |
tree | f9a4f5bb9d89096b42d8a23856b6ebd2f88f6e83 | |
parent | 08257e5a871e8d4a8bd81612a4290f5d10e20b61 (diff) | |
download | NetworkManager-th/ovs-external-ids-2.tar.gz |
core/ovs: for now drop cancellable from ovsdbmethod call againth/ovs-external-ids-2
Currently the cancellable is not yet used. Drop it again.
However, I think the code might be useful, so I hope to revert
this commit afterwards to use it.
-rw-r--r-- | src/devices/ovs/nm-ovsdb.c | 79 |
1 files changed, 5 insertions, 74 deletions
diff --git a/src/devices/ovs/nm-ovsdb.c b/src/devices/ovs/nm-ovsdb.c index 5d8bf97d69..61875bdcd0 100644 --- a/src/devices/ovs/nm-ovsdb.c +++ b/src/devices/ovs/nm-ovsdb.c @@ -100,11 +100,8 @@ typedef struct { guint64 call_id; OvsdbCommand command; OvsdbMethodCallback callback; - GCancellable * cancellable; gpointer user_data; OvsdbMethodPayload payload; - gulong cancellable_id; - guint timeout_id; } OvsdbMethodCall; /*****************************************************************************/ @@ -254,9 +251,6 @@ _call_complete(OvsdbMethodCall *call, json_t *response, GError *error) c_list_unlink_stale(&call->calls_lst); - nm_clear_g_signal_handler(call->cancellable, &call->cancellable_id); - g_clear_object(&call->cancellable); - if (call->callback) call->callback(call->self, response, error, call->user_data); @@ -355,49 +349,6 @@ _signal_emit_interface_failed(NMOvsdb * self, /*****************************************************************************/ -static gboolean -_method_call_cancelled_on_idle_cb(gpointer user_data) -{ - OvsdbMethodCall *call = user_data; - gs_unref_object NMOvsdb *self = call->self; - gs_free_error GError *error = NULL; - - call->timeout_id = 0; - _LOGT_call(call, "cancelled (run on idle)"); - nm_utils_error_set_cancelled(&error, FALSE, "NMOvsdb"); - _call_complete(call, NULL, error); - return G_SOURCE_REMOVE; -} - -static void -_method_call_cancelled_cb(gpointer user_data) -{ - OvsdbMethodCall *call = user_data; - NMOvsdb * self = call->self; - gs_free_error GError *error = NULL; - - nm_assert(NM_IS_OVSDB(self)); - - if (call->cancellable_id == 0) { - /* We are invoked synchronously by g_cancellable_connection(). - * Let's consistently emit the completion callback asynchronously, - * hence schedule it on an idle handler. */ - c_list_unlink(&call->calls_lst); - g_object_ref(self); - nm_clear_g_source(&call->timeout_id); - _LOGT_call(call, "cancelled (schedule on idle)"); - call->timeout_id = g_idle_add(_method_call_cancelled_on_idle_cb, call); - return; - } - - _LOGT_call(call, "cancelled"); - - nm_utils_error_set_cancelled(&error, FALSE, "NMOvsdb"); - _call_complete(call, NULL, error); - - ovsdb_next_command(self); -} - /** * ovsdb_call_method: * @@ -408,7 +359,6 @@ static void ovsdb_call_method(NMOvsdb * self, OvsdbMethodCallback callback, gpointer user_data, - GCancellable * cancellable, gboolean add_first, OvsdbCommand command, const OvsdbMethodPayload *payload) @@ -421,12 +371,11 @@ ovsdb_call_method(NMOvsdb * self, call = g_slice_new(OvsdbMethodCall); *call = (OvsdbMethodCall){ - .self = self, - .call_id = CALL_ID_UNSPEC, - .command = command, - .callback = callback, - .user_data = user_data, - .cancellable = nm_g_object_ref(cancellable), + .self = self, + .call_id = CALL_ID_UNSPEC, + .command = command, + .callback = callback, + .user_data = user_data, }; if (add_first) @@ -490,19 +439,6 @@ ovsdb_call_method(NMOvsdb * self, break; } - if (call->cancellable) { - gulong id; - - id = g_cancellable_connect(call->cancellable, - G_CALLBACK(_method_call_cancelled_cb), - call, - NULL); - if (id == 0) - return; - - call->cancellable_id = id; - } - ovsdb_next_command(self); } @@ -2374,7 +2310,6 @@ ovsdb_try_connect(NMOvsdb *self) ovsdb_call_method(self, _monitor_bridges_cb, NULL, - NULL, TRUE, OVSDB_MONITOR, OVSDB_METHOD_PAYLOAD_MONITOR()); @@ -2445,7 +2380,6 @@ nm_ovsdb_add_interface(NMOvsdb * self, ovsdb_call_method(self, _transact_cb, ovsdb_call_new(callback, user_data), - NULL, FALSE, OVSDB_ADD_INTERFACE, OVSDB_METHOD_PAYLOAD_ADD_INTERFACE(bridge, @@ -2464,7 +2398,6 @@ nm_ovsdb_del_interface(NMOvsdb * self, ovsdb_call_method(self, _transact_cb, ovsdb_call_new(callback, user_data), - NULL, FALSE, OVSDB_DEL_INTERFACE, OVSDB_METHOD_PAYLOAD_DEL_INTERFACE(ifname)); @@ -2480,7 +2413,6 @@ nm_ovsdb_set_interface_mtu(NMOvsdb * self, ovsdb_call_method(self, _transact_cb, ovsdb_call_new(callback, user_data), - NULL, FALSE, OVSDB_SET_INTERFACE_MTU, OVSDB_METHOD_PAYLOAD_SET_INTERFACE_MTU(ifname, mtu)); @@ -2507,7 +2439,6 @@ nm_ovsdb_set_external_ids(NMOvsdb * self, ovsdb_call_method(self, NULL, NULL, - NULL, FALSE, OVSDB_SET_EXTERNAL_IDS, OVSDB_METHOD_PAYLOAD_SET_EXTERNAL_IDS(device_type, |