Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
|
|
Issue:
When redirecting nvidia-settings output to a file or a pipe (for simple
recording, or scripting purposes), we don't want the output to change
depending on the current terminal width (TIOCGWINSZ).
Fix/Feature:
This change disables word-wrapping of `nv_msg`/`nv_*_msg` functions when
the output stream is not a terminal (not `isatty`).
PRE-Merge Build Fix from Liam Middlebrook <lmiddlebrook@nvidia.com>:
Add _GNU_SOURCE define for fileno
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
fail.
If there is an issue querying graphics information for EGL on a system, we detect the error and hide all graphics information including OpenGL, Client/Server GLX info that may not be affected by the EGL issue. This leaves a blank page when only a portion of the code may have failed.
This change only omits the EGL info if EGL is the only problem.
|
|
When AllowExternalGpus is not set to TRUE, the X server will ignore
surprise-removable GPUs.
Despite these GPUs being invisible to X and thus invisible to NV-CONTROL, they
are visible via NVML. nvidia-settings can use NVML to query for available GPUs,
and then query additional information from NV-CONTROL. Today, it assumes that a
GPU that is visible via NVML will also be visible via NV-CONTROL, but thanks to
Option "AllowExternalGpus", that is no longer true, resulting in breakage.
The same bug also occurs when using Option "ProbeAllGpus" "False". The effect is
the same as Option "AllowExternalGpus" "False", resulting in only a subset of
GPUs being visible via NV-CONTROL, compared to NVML.
As a short term solution, this change makes nvidia-settings do a mundane
NV-CONTROL query (NV_CTRL_DEPTH_30_ALLOWED) on any GPU target that it allocates,
silently ignoring GPUs that fail. This has the effect of making blacklisted
eGPUs (or other GPUs ignored due to Option "ProbeAllGpus" "False") invisible to
nvidia-settings, preventing further breakages.
NV_CTRL_DEPTH_30_ALLOWED was chosen because it has existed since 2007,
preventing breakage with currently supported drivers, and is unlikely to be
implemented in NVML. If it were to be implemented in NVML, the query could
succeed where we would expect it to fail, preventing the GPU from being properly
ignored.
|
|
This change adds EGL information in a similar form to the already shown OpenGL and GLX information listed per display in nvidia-settings. This also adds a button to show available EGL Frame Buffer configurations in a popup window.
To properly format these additions, some changes are required on the existing OpenGL/GLX information page. First, the page has been renamed to "Graphics Information" but the "ctkglx" and name on top level functions and files has been left as is. Second, the layout of the page has been changed from a simple full list of GLX, Server GLX, Client GLX, and OpenGL information to an expanding view with each of the previously listed items as collapsible headers and adding an entry for EGL Information.
This change also adds the command line "--eglinfo" (and "-E") option to print the added EGL information and related Frame Buffer Configurations.
Includes PNG files for both the GLX -> Graphics page rename and for VDPAU to keep a consistent look. The following are the steps used to create the text images in GIMP.
==Instructions==
Create a Gradient
Split it into 3 parts, referred as 1, 2 and 3. Left to Right.
Segment 1, Left color #AAAAAA, Right color #EEEEEE, endpoints around 0.0 and 0.45
Segment 2, Left and right #EEEEEE, endpoints 0.45 to 0.55.
Segment 3, Reverse of 1, Left color #EEEEEE, Right color #AAAAAA, endpoints 0.55 to 1.0
Make the Text
Using DIN Pro font, the font NVIDIA uses for promo material, type in the text with text tool.
Right click on it, click "Path from Text"
Select it with Select -> From Path
Choose Gradient tool, using custom gradient made above, drag from above right of center to below left of center.
Then Filters -> Light and Shadow -> Drop Shadow. I used Offsets of 5, Blur radius 4, and Opacity 60.
Then select the text along with a bit of space around the text and then Image -> Crop to Selection
Then Image -> Scale Image so that image is now similar size to other text graphics.
From command line run> optipng -o7 -zm1-9 new_graphic.png
==End Instructions==
|
|
Currently, nvidia-settings will ask the X driver about the relationships between
every type of target it knows about unconditionally. When support for Canoas
targets in the X driver was removed (including the
NV_CTRL_BINARY_DATA_VCSCS_USED_BY_GPU attribute), this caused nvidia-settings to
trigger a BadMatch error and abort (on GTK2) or print an error about failing to
query relationships between targets (on GTK3).
This change updates nvidia-settings to not bother to query for relationships for
a target when no such targets exist in the system. In addition to fixing the
BadMatch described above, it should reduce the startup latency due to fewer
server round-trips in the common case.
|
|
This a generalized method of creating possible layouts for any number of displays used in a grid configuration in nvidia-settings. This removes the hardcoded list that had to be validated for allowable configurations. The new method will simply generate a new ordered list of configs for all display detected.
A checkbox is also added that will allow the user to either show only the grid configs that would utilize all displays available or would show all possible display configurations using a number of displays between 2 and the total displays available.
|
|
|
|
Closes #22
|
|
|
|
QDWS is selected and license features are enabled.
Details:
*On licensed setup, if license server details are modified through
UI/gridd.conf and service is restarted, set default license status
message to request license server details.
*On failed attempt, handled the termination of license acquisition
loop when vAPP is selected and license features are enabled
on that system.
Testing done:
Verified on NMOS, correct license status message is displayed.
Also, on failed attempt license acquisition loop stops when
vAPP is selected.
|
|
notify user about the same.
Details:
On licensed NMOS setup, if user restarts nvidia-gridd service and
selected 'GRID Virtual Apps' license edition. There is mismatch in
licensed feature type enabled in the driver and feature type read from
gridd.conf/UI control. In this change, notify user that license features
are still enabled in the driver even if license is released and hence restart is
required. Set appropriate license status message to indicate the same.
Fix:
Added NV_CTRL_ATTR_NVML_GPU_GRID_LICENSABLE_FEATURES attribute to get feature code
of the currently licensed feature.
Used the existing NVML api nvmlDeviceGetGridLicensableFeatures to fetch this feature code.
And then query this licensed feature code in nvidia-settings.
Setting the restart required status message when there is mismatch in
the queried licensed feature type and the feature type read from gridd.conf/UI.
Testing done:
Verified on NMOS, correct license status message is displayed.
|
|
restarted/stopped.
Issue and root cause:
When 'Manage License' page is created , a timer callback is registered to
query license state from nvidia-gridd with 1 sec time interval to
update the 'Manage License' page. When nvidia-gridd service is stopped,
there is no response against the Dbus request so the callback function exits with error
which destroys the timer. Hence 'Manage License' page is never updated.
Fix:
Do not destroy the timer which updates the 'Manage license' page even if 'nvidia-gridd' service
is stopped.
Upon failure to communicate with nvidia-gridd to fetch licensing state info
we are disabling all UI controls and notifying user about the issue via a message on the UI.
Testing Done:
Verified that if nvidia-gridd service is restarted then 'Manage License' page gets
refreshed automatically.
|
|
|
|
|
|
|
|
correctly once the user clicks apply.
Issue : By default, EnableUI config parameter is true for 5.0 drivers.
nvidia-settings writes "EnableUI=TRUE" to gridd.conf file if the user
has applied license via UI. Since the user config options in gridd.conf
persist on driver upgrade we see the UI is enabled with 5.1 drivers.
The same issue is also encountered on driver upgrade from 5.0 to 6.0
Fix : User has to manually delete the gridd.conf file and create a new one with
the gridd.conf.template file provided.
Made the following changes:
1. On launching nvidia-settings, if there is no gridd.conf file available,
no new gridd.conf file will be created. A new gridd.conf file will be
created only when user clicks apply button via UI.
2. While updating the griddConfig structure with the user provided values
from UI, the corresponding config parameter will be updated only if it
differs from the currently provided value by the user.
|
|
"Tesla(unlicensed)" string to "GRID Virtual Apps"
Details:
- From nvidia-gridd, fetching license state from the state machine. Sending this
license state instead of license status to nvidia-settings.
- According to license state and featureType fetched from nvidia-gridd, setting
license status on nvidia-settings side.
- Updated all license status messages to latest reviewed strings.
- Renamed "Tesla(unlicensed)" string to "GRID Virtual Apps".
|
|
page of nvidia-settings:
Issue:
Apply/Cancel button is disabled post moving from "Quadro Virtual" "Datacenter
Workstation" license edition to "Unlicensed Tesla" license edition.
Fix:
Apply/Cancel buttons are enabled only under following cases:
* If the License Edition has changed, that is the corresponding feature type
selection has changed.
* If any of the textbox entry has changed.
Also updating the license Acquiring, unlicensed and failed message strings on UI
according to the feature type selection.
|
|
Simple change to add a couple combinations of 32 display options to the SLI
Mosaic Grid Config dropdown
|
|
Issue:
When nvidia-settings is launched on a Quadro vDWS Edition licensed VM, the
message shown on 'Manage GRID License' page as well as the one logged in
/var/log/messages incorrectly states that the system has switched to Tesla
(unlicensed) and user needs to reboot the system.
Root cause and fix:
Issue was observed because the feature type was not set correctly on page
creation. Fixed it with this change.
Testing done:
Verified on NMOS and vGPU setup,correct feature type is displayed in the message
over UI and in /var/log/messages as well.
|
|
|
|
It had been requested to provide end users with a way to test if stereo mode has
been configured and is working properly.
To address such, it was decided to create a simple demo/test and to get such app
embedded in nvidia settings by creating a custom gtk widget on which to render
opengl. (Such widget seems to exist, but only in versions of gtk3 that are newer
to what nvidia-settings use, hence the need to create our own).
This implementation will work with gtk3 and ignored on gtk2.
|
|
|
|
This change adds a new stereo mode (14) to represent the current combination of
stereo mode 3 with InbandStereoSignaling.
|
|
|
|
|
|
|
|
* Added a new cancel button, which clears all changes made in the fields.
* If Primary server address is empty:
* Apply/Cancel buttons and Secondary server address/port disabled.
* Enable Apply/Cancel buttons and Secondary server address/port only
when there is text entered in Primary server address textbox to nofity
user that Primary server address is mandatory.
* If Primary server address is non-empty:
* User can edit Secondary server address/port.
* Apply/Cancel buttons Grayed out after applying click.
* Enable Apply/Cancel buttons when text entered in any of the textboxes is
different than the earlier entered text.
* On launch of 'Manage License' page, Apply/Cancel buttons are disabled.
Testing done:
Verified the above modified functionality of 'Manage License' page on NMOS and vGPU.
|
|
|
|
|