summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--doc/version.mk2
-rw-r--r--samples/version.mk2
-rw-r--r--src/gtk+-2.x/ctkgridlicense.c51
-rw-r--r--src/libXNVCtrl/version.mk2
-rw-r--r--src/nvml.h29
-rw-r--r--src/version.h2
-rw-r--r--src/version.mk2
-rw-r--r--version.mk2
8 files changed, 69 insertions, 23 deletions
diff --git a/doc/version.mk b/doc/version.mk
index 3431911..e35bf9f 100644
--- a/doc/version.mk
+++ b/doc/version.mk
@@ -1 +1 @@
-NVIDIA_VERSION = 430.40
+NVIDIA_VERSION = 430.50
diff --git a/samples/version.mk b/samples/version.mk
index 3431911..e35bf9f 100644
--- a/samples/version.mk
+++ b/samples/version.mk
@@ -1 +1 @@
-NVIDIA_VERSION = 430.40
+NVIDIA_VERSION = 430.50
diff --git a/src/gtk+-2.x/ctkgridlicense.c b/src/gtk+-2.x/ctkgridlicense.c
index 8e6a189..540767f 100644
--- a/src/gtk+-2.x/ctkgridlicense.c
+++ b/src/gtk+-2.x/ctkgridlicense.c
@@ -188,6 +188,34 @@ typedef struct ConfigFileLinesRec
int nLines;
} ConfigFileLines;
+/*
+ * updateFeatureTypeFromGriddConfig() - Update feature type from gridd.conf or virtualization mode
+ *
+ */
+static void updateFeatureTypeFromGriddConfig(gpointer user_data, NvGriddConfigParams *griddConfig)
+{
+ CtkManageGridLicense *ctk_manage_grid_license = CTK_MANAGE_GRID_LICENSE(user_data);
+
+ if (strcmp(griddConfig->str[NV_GRIDD_FEATURE_TYPE], "4") == 0)
+ {
+ ctk_manage_grid_license->feature_type = NV_GRID_LICENSE_FEATURE_TYPE_VCOMPUTE;
+ }
+ else if (strcmp(griddConfig->str[NV_GRIDD_FEATURE_TYPE], "2") == 0)
+ {
+ ctk_manage_grid_license->feature_type = NV_GRID_LICENSE_FEATURE_TYPE_QDWS;
+ }
+ else
+ {
+ ctk_manage_grid_license->feature_type = NV_GRID_LICENSE_FEATURE_TYPE_VAPP;
+ }
+
+ // Override feature type when on vGPU
+ if (ctk_manage_grid_license->license_edition_state == NV_CTRL_ATTR_NVML_GPU_VIRTUALIZATION_MODE_VGPU)
+ {
+ ctk_manage_grid_license->feature_type = NV_GRID_LICENSE_FEATURE_TYPE_VGPU;
+ }
+}
+
static void FreeConfigFileLines(ConfigFileLines *pLines)
{
int i;
@@ -1225,22 +1253,7 @@ static void update_gui_from_griddconfig(gpointer user_data)
gtk_entry_set_text(GTK_ENTRY(ctk_manage_grid_license->txt_secondary_server_port),
griddConfig->str[NV_GRIDD_BACKUP_SERVER_PORT]);
/* set default value for feature type based on the user configured parameter or virtualization mode */
- /* Check Feature type "2" for Quadro Virtual Data Center Workstation. */
- if (strcmp(griddConfig->str[NV_GRIDD_FEATURE_TYPE], "4") == 0) {
- ctk_manage_grid_license->feature_type = NV_GRID_LICENSE_FEATURE_TYPE_VCOMPUTE;
- }
- else if (strcmp(griddConfig->str[NV_GRIDD_FEATURE_TYPE], "2") == 0) {
- ctk_manage_grid_license->feature_type = NV_GRID_LICENSE_FEATURE_TYPE_QDWS;
- }
- else {
- ctk_manage_grid_license->feature_type = NV_GRID_LICENSE_FEATURE_TYPE_VAPP;
- }
-
- /* Override feature type when on vGPU */
- if (ctk_manage_grid_license->license_edition_state == NV_CTRL_ATTR_NVML_GPU_VIRTUALIZATION_MODE_VGPU)
- {
- ctk_manage_grid_license->feature_type = NV_GRID_LICENSE_FEATURE_TYPE_VGPU;
- }
+ updateFeatureTypeFromGriddConfig(ctk_manage_grid_license, griddConfig);
/* Set license edition toggle button active */
if (ctk_manage_grid_license->radio_btn_vcompute && ctk_manage_grid_license->feature_type == NV_GRID_LICENSE_FEATURE_TYPE_VCOMPUTE) {
@@ -1617,6 +1630,12 @@ GtkWidget* ctk_manage_grid_license_new(CtrlTarget *target,
gtk_box_set_spacing(GTK_BOX(ctk_manage_grid_license), 5);
+ // Set feature type based on user configured parameter or virtualization mode
+ if (griddConfig != NULL)
+ {
+ updateFeatureTypeFromGriddConfig(ctk_manage_grid_license, griddConfig);
+ }
+
get_licensable_feature_information(ctk_manage_grid_license);
/* banner */
diff --git a/src/libXNVCtrl/version.mk b/src/libXNVCtrl/version.mk
index 3431911..e35bf9f 100644
--- a/src/libXNVCtrl/version.mk
+++ b/src/libXNVCtrl/version.mk
@@ -1 +1 @@
-NVIDIA_VERSION = 430.40
+NVIDIA_VERSION = 430.50
diff --git a/src/nvml.h b/src/nvml.h
index 946c44e..20cc608 100644
--- a/src/nvml.h
+++ b/src/nvml.h
@@ -1,5 +1,5 @@
/*
- * Copyright 1993-2018 NVIDIA Corporation. All rights reserved.
+ * Copyright 1993-2019 NVIDIA Corporation. All rights reserved.
*
* NOTICE TO USER:
*
@@ -804,6 +804,15 @@ typedef enum nvmlGpuVirtualizationMode {
NVML_GPU_VIRTUALIZATION_MODE_HOST_VSGA = 4, //!< Device is associated with VGX hypervisor in vSGA mode
} nvmlGpuVirtualizationMode_t;
+/**
+ * Host vGPU modes
+ */
+typedef enum nvmlHostVgpuMode_enum
+{
+ NVML_HOST_VGPU_MODE_NON_SRIOV = 0, //!< Non SR-IOV mode
+ NVML_HOST_VGPU_MODE_SRIOV = 1 //!< SR-IOV mode
+} nvmlHostVgpuMode_t;
+
/** @} */
/***************************************************************************************************/
@@ -5311,6 +5320,24 @@ nvmlReturn_t DECLDIR nvmlDeviceGetFieldValues(nvmlDevice_t device, int valuesCou
*/
nvmlReturn_t DECLDIR nvmlDeviceGetVirtualizationMode(nvmlDevice_t device, nvmlGpuVirtualizationMode_t *pVirtualMode);
+/**
+ * Queries if SR-IOV host operation is supported on a vGPU supported device.
+ *
+ * Checks whether SR-IOV host capability is supported by the device and the
+ * driver, and indicates device is in SR-IOV mode if both of these conditions
+ * are true.
+ *
+ * @param device The identifier of the target device
+ * @param pHostVgpuMode Reference in which to return the current vGPU mode
+ *
+ * @return
+ * - \ref NVML_SUCCESS if device's vGPU mode has been successfully retrieved
+ * - \ref NVML_ERROR_INVALID_ARGUMENT if \a device handle is 0 or \a pVgpuMode is NULL
+ * - \ref NVML_ERROR_NOT_SUPPORTED if \a device doesn't support this feature.
+ * - \ref NVML_ERROR_UNKNOWN if any unexpected error occurred
+ */
+nvmlReturn_t DECLDIR nvmlDeviceGetHostVgpuMode(nvmlDevice_t device, nvmlHostVgpuMode_t *pHostVgpuMode);
+
/** @} */
/***************************************************************************************************/
diff --git a/src/version.h b/src/version.h
index ec1154f..03af555 100644
--- a/src/version.h
+++ b/src/version.h
@@ -1 +1 @@
-#define NVIDIA_VERSION "430.40"
+#define NVIDIA_VERSION "430.50"
diff --git a/src/version.mk b/src/version.mk
index 3431911..e35bf9f 100644
--- a/src/version.mk
+++ b/src/version.mk
@@ -1 +1 @@
-NVIDIA_VERSION = 430.40
+NVIDIA_VERSION = 430.50
diff --git a/version.mk b/version.mk
index 3431911..e35bf9f 100644
--- a/version.mk
+++ b/version.mk
@@ -1 +1 @@
-NVIDIA_VERSION = 430.40
+NVIDIA_VERSION = 430.50