diff options
| author | Michael Biebl <biebl@debian.org> | 2025-08-01 19:15:13 +0200 |
|---|---|---|
| committer | Michael Biebl <biebl@debian.org> | 2025-08-01 19:15:13 +0200 |
| commit | 7e9091a5960f67a84787c03153324915220e4816 (patch) | |
| tree | dc743de962532932ebc3b4ed3a36ddd093d97d68 /src/libnm-core-impl/nm-setting-ovs-dpdk.c | |
| parent | 582eb4472a0f3375042afb9026cbeb50e058a27d (diff) | |
New upstream version 1.54.0 upstream/1.54.0
Diffstat (limited to 'src/libnm-core-impl/nm-setting-ovs-dpdk.c')
| -rw-r--r-- | src/libnm-core-impl/nm-setting-ovs-dpdk.c | 46 |
1 files changed, 45 insertions, 1 deletions
diff --git a/src/libnm-core-impl/nm-setting-ovs-dpdk.c b/src/libnm-core-impl/nm-setting-ovs-dpdk.c index 53931f46..3f5cbe11 100644 --- a/src/libnm-core-impl/nm-setting-ovs-dpdk.c +++ b/src/libnm-core-impl/nm-setting-ovs-dpdk.c @@ -22,7 +22,11 @@ /*****************************************************************************/ -NM_GOBJECT_PROPERTIES_DEFINE_BASE(PROP_DEVARGS, PROP_N_RXQ, PROP_N_RXQ_DESC, PROP_N_TXQ_DESC, ); +NM_GOBJECT_PROPERTIES_DEFINE_BASE(PROP_DEVARGS, + PROP_N_RXQ, + PROP_N_RXQ_DESC, + PROP_N_TXQ_DESC, + PROP_LSC_INTERRUPT, ); /** * NMSettingOvsDpdk: @@ -36,6 +40,7 @@ struct _NMSettingOvsDpdk { guint32 n_rxq; guint32 n_rxq_desc; guint32 n_txq_desc; + int lsc_interrupt; }; struct _NMSettingOvsDpdkClass { @@ -110,6 +115,22 @@ nm_setting_ovs_dpdk_get_n_txq_desc(NMSettingOvsDpdk *self) return self->n_txq_desc; } +/** + * nm_setting_ovs_dpdk_get_lsc_interrupt: + * @self: the #NMSettingOvsDpdk + * + * Returns: the #NMSettingOvsDpdk:lsc-interrupt property of the setting + * + * Since: 1.54 + **/ +NMSettingOvsDpdkLscInterrupt +nm_setting_ovs_dpdk_get_lsc_interrupt(NMSettingOvsDpdk *self) +{ + g_return_val_if_fail(NM_IS_SETTING_OVS_DPDK(self), NM_SETTING_OVS_DPDK_LSC_INTERRUPT_IGNORE); + + return self->lsc_interrupt; +} + /*****************************************************************************/ static gboolean @@ -257,6 +278,29 @@ nm_setting_ovs_dpdk_class_init(NMSettingOvsDpdkClass *klass) NMSettingOvsDpdk, n_txq_desc); + /** + * NMSettingOvsDpdk:lsc-interrupt: + * + * Configures the Link State Change (LSC) detection mode for the OVS DPDK interface. + * When set to %NM_SETTING_OVS_DPDK_LSC_INTERRUPT_IGNORE, NetworkManager doesn't + * change the default value configured by Open vSwitch. + * %NM_SETTING_OVS_DPDK_LSC_INTERRUPT_ENABLED enables interrupts. + * %NM_SETTING_OVS_DPDK_LSC_INTERRUPT_DISABLED disables interrupts, thus setting the + * interface in poll mode. + * + * Since: 1.54 + **/ + _nm_setting_property_define_direct_enum(properties_override, + obj_properties, + NM_SETTING_OVS_DPDK_LSC_INTERRUPT, + PROP_LSC_INTERRUPT, + NM_TYPE_SETTING_OVS_DPDK_LSC_INTERRUPT, + NM_SETTING_OVS_DPDK_LSC_INTERRUPT_IGNORE, + NM_SETTING_PARAM_NONE, + NULL, + NMSettingOvsDpdk, + lsc_interrupt); + g_object_class_install_properties(object_class, _PROPERTY_ENUMS_LAST, obj_properties); _nm_setting_class_commit(setting_class, |