Driver bug? nvidia-auto-select still uses Predefined mode even with NoPredefinedModes

This is very frustraiting…

Trying to force a display to only have one 1680x1050 @120 Hz mode as the display does not have a scaler. I am running into an issue where when the login manager (lightdm/gdm/etc) keep reverting to a 800x600 mode which is a nvidia predefined mode instead of using the correct mode causing a corrupted display until the machine can be logged into and fixed.

Here is the problem. All auto-generated modes should be disabled:

[  6025.380] (**) NVIDIA(0): Using HorizSync/VertRefresh ranges from the EDID for display
[  6025.380] (**) NVIDIA(0):     device ViewSonic VX2265wm (DFP-3) (Using EDID frequencies
[  6025.380] (**) NVIDIA(0):     has been enabled on all display devices.)
[  6025.380] (II) NVIDIA(0): Mode Validation Overrides for ViewSonic VX2265wm (DFP-3):
[  6025.380] (II) NVIDIA(0):     NoMaxPClkCheck
[  6025.381] (II) NVIDIA(0):     NoEdidMaxPClkCheck
[  6025.381] (II) NVIDIA(0):     NoMaxSizeCheck
[  6025.381] (II) NVIDIA(0):     NoHorizSyncCheck
[  6025.381] (II) NVIDIA(0):     NoVertRefreshCheck
[  6025.381] (II) NVIDIA(0):     NoVesaModes
[  6025.381] (II) NVIDIA(0):     NoEdidModes
[  6025.381] (II) NVIDIA(0):     NoXServerModes
[  6025.381] (II) NVIDIA(0):     NoPredefinedModes
[  6025.381] (II) NVIDIA(0):     NoDFPNativeResolutionCheck
[  6025.381] (II) NVIDIA(0):     AllowNonEdidModes
[  6025.381] (II) NVIDIA(0): Frequency information for ViewSonic VX2265wm (DFP-3):

Yet when the mode pool is generated I see an 800x600 mode that is still making its way in:

[  6025.395] (II) NVIDIA(GPU-0): --- Modes in ModePool for ViewSonic VX2265wm (DFP-3) ---
[  6025.395] (II) NVIDIA(GPU-0): "nvidia-auto-select" :  800 x  600 @  60.3 Hz  (from: NVIDIA Predefined)
[  6025.395] (II) NVIDIA(GPU-0): "1680x1050"          : 1680 x 1050 @ 120.0 Hz  (from: X Configuration file ModeLine)
[  6025.395] (II) NVIDIA(GPU-0): "1680x1050_120"      : 1680 x 1050 @ 120.0 Hz  (from: X Configuration file ModeLine)
[  6025.395] (II) NVIDIA(GPU-0): --- End of ModePool for ViewSonic VX2265wm (DFP-3): ---

Looks like nvidia-auto-select simply refuses to use a custom mode and there is no way to disable this nvidia-auto-select so this 800x600 mode which things are defaulting to keeps making its way back in…

This seems like a bug to me is how is an nvidia predefined mode making its way back even with modevalidation NoPreDefinedmodes being set?

Seems like a lot of this is also due to xrandr aware login managers that are trying to figure out what to use instead of using what X is set to but there should be a way to force the driver to only allow a custom mode and not generates any pre-defined modes that the hardware can’t do (which is happening here).

Bleh… of course after updating the drivers I see that this has been fixed and nvidia-auto-select is correctly using an existing mode (from custom modeline) instead of using a nvidia predefined mode:

[   632.447] (II) NVIDIA(GPU-0): --- Modes in ModePool for ViewSonic VX2265wm (DFP-3) ---
[   632.447] (II) NVIDIA(GPU-0): "nvidia-auto-select" : 1680 x 1050 @ 120.0 Hz  (from: X Configuration file ModeLine)
[   632.447] (II) NVIDIA(GPU-0): "1680x1050"          : 1680 x 1050 @ 120.0 Hz  (from: X Configuration file ModeLine)
[   632.447] (II) NVIDIA(GPU-0): "1680x1050_120"      : 1680 x 1050 @ 120.0 Hz  (from: X Configuration file ModeLine)
[   632.447] (II) NVIDIA(GPU-0): --- End of ModePool for ViewSonic VX2265wm (DFP-3): ---

I honestly was not expecting this to be fixed with newer drivers…