mirror of
https://gitlab.freedesktop.org/NetworkManager/NetworkManager.git
synced 2026-02-10 18:20:37 +01:00
core/ovs: for now drop cancellable from ovsdbmethod call again
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.
This commit is contained in:
parent
7055539c9f
commit
3a0347e821
1 changed files with 5 additions and 74 deletions
|
|
@ -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));
|
||||
|
|
@ -2505,7 +2437,6 @@ nm_ovsdb_set_external_ids(NMOvsdb * self,
|
|||
: NULL;
|
||||
|
||||
ovsdb_call_method(self,
|
||||
NULL,
|
||||
NULL,
|
||||
NULL,
|
||||
FALSE,
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue