G-Sync not working with LG OLED65E97LA TV

Hello,
I’ve got an LG OLED65E97LA TV. It is G-Sync compatible.
I can see the G-Sync settings in nvidia-settings. G-Sync is enabled and the TV shows as G-Sync compatible, as it should be.
I enabled the Visual Indicator, but whenever I play a game, the indicator always shows “Normal”.
I’m running dual boot on this machine and if I boot into Windows 10 Pro, playing exactly the same game (i.e. Doom 2016), the indicator shows the green G-Sync text.
The TV is at the latest firmware version.

PC information:
Gigabyte Designare TRX40
Ryzen 3960X
32GB Corsair Vengeance RAM
Nvidia RTX 2080 Ti (Gigabyte Aorus Extreme 11G)

Linux Mint 19.3
custom kernel 5.5.11
nvidia beta driver 440.66.04
latest mesa from git

Including nvidia-bug-report and also dxdiag, msinfo32 and Nvidia information output from Windows.

I don’t see an upload button as the pinned topic suggests, so I put it on google drive:
https://drive.google.com/open?id=1wZrtoFPusCGzZIbE1tYPexzcbT4vw2sF

G-Sync seems to be broken in current driver versions:
https://forums.developer.nvidia.com/t/440-64-ubuntu-18-04-no-g-sync/115376

Hi generix,
thank you for the answer.
And gosh, I feel like I’m in bug hell. Not one piece of soft or hardware, that’s not giving me trouble in any way :(
I can just kindly ask the developers to fix this.

Best regards,
Mart

I’m on 440.66.04 and G-Sync Compatible on Samsung C27HG7x is working in games (Plasma, kwin-lowlatency).
Would be funny if native G-Sync is broken but G-Sync Compatible on FreeSync monitors still works.

The OP also has a g-sync compatible. Thanks for stepping in, so this doesn’t seem to be a general bug, still working for some people. So far, I only heard of people complaining it stopped working with newer drivers.

I just tried with the latest beta driver 450.51 and kernel 5.7.5.
Linux Mint 19.3 cinnamon DE (set to compositor off in fullscreen mode).
Problem persists (tried with Doom 2016 OpenGL and Vulkan).
Would be nice to have Nvidia look into it. I mean it is advertised and certified by Nvidia…
nvidia-bug-report.log.gz.log (1.1 MB)

Now many months later with kernel 5.9.16 and nvidia driver 460.39 the issue still persists. :-(
The TVs software is also up to date.

nvidia-bug-report.log.gz (1.0 MB)

Would be nice if nvidia could look into this.

Also I noticed a backtrace that seems to be caused by running sudo nvidia-bug-report.sh --extra-system-data:

[ 1110.198454] sysrq: Show backtrace of all active CPUs
[ 1110.198458] NMI backtrace for cpu 28
[ 1110.198461] CPU: 28 PID: 18171 Comm: nvidia-bug-repo Tainted: P OE 5.9.16-mint-local-5.9.16 #5.9.16
[ 1110.198461] Hardware name: Gigabyte Technology Co., Ltd. TRX40 DESIGNARE/TRX40 DESIGNARE, BIOS F4k 09/07/2020
[ 1110.198462] Call Trace:
[ 1110.198470] dump_stack+0x74/0x92
[ 1110.198473] nmi_cpu_backtrace+0x94/0xa0
[ 1110.198476] ? lapic_can_unplug_cpu+0xb0/0xb0
[ 1110.198478] nmi_trigger_cpumask_backtrace+0xe7/0x130
[ 1110.198480] arch_trigger_cpumask_backtrace+0x19/0x20
[ 1110.198482] sysrq_handle_showallcpus+0x17/0x20
[ 1110.198484] __handle_sysrq+0x93/0x150
[ 1110.198486] write_sysrq_trigger+0x2f/0x40
[ 1110.198489] proc_reg_write+0x62/0x90
[ 1110.198493] ? __sb_start_write+0x3b/0x70
[ 1110.198494] vfs_write+0xc6/0x1f0
[ 1110.198496] ksys_write+0xa7/0xe0
[ 1110.198498] ? exit_to_user_mode_prepare+0x36/0x1b0
[ 1110.198500] __x64_sys_write+0x1a/0x20
[ 1110.198501] do_syscall_64+0x37/0x80
[ 1110.198503] entry_SYSCALL_64_after_hwframe+0x44/0xa9
[ 1110.198505] RIP: 0033:0x7f05c8fae224
[ 1110.198507] Code: 89 02 48 c7 c0 ff ff ff ff c3 66 2e 0f 1f 84 00 00 00 00 00 66 90 48 8d 05 c1 07 2e 00 8b 00 85 c0 75 13 b8 01 00 00 00 0f 05 <48> 3d 00 f0 ff ff 77 54 f3 c3 66 90 41 54 55 49 89 d4 53 48 89 f5
[ 1110.198508] RSP: 002b:00007ffe23d814f8 EFLAGS: 00000246 ORIG_RAX: 0000000000000001
[ 1110.198509] RAX: ffffffffffffffda RBX: 000055f8109e26c0 RCX: 00007f05c8fae224
[ 1110.198510] RDX: 0000000000000002 RSI: 000055f8109e26c0 RDI: 0000000000000001
[ 1110.198511] RBP: 0000000000000002 R08: 0000000000000000 R09: 00007f05c900c2e0
[ 1110.198511] R10: 00007f05c9008910 R11: 0000000000000246 R12: 0000000000000001
[ 1110.198512] R13: 0000000000000002 R14: 7fffffffffffffff R15: 000055f8109d8825

Thank you!

Please try deleting your xorg.conf, you’re using forcecompositionpipeline, I don’t think that works together with g-sync.

Dear generix,

no I’m not. I removed that option long time ago:

# Removed Option "metamodes" "3840x2160_60 +0+0 {ForceCompositionPipeline=On, ForceFullCompositionPipeline=On}"

Also it’s not set in nvidia-settings.

Nonetheless I tried deleting the xorg.conf, but to no avail.
I also tried disabling that default No/VRR application profile rule matching cinnamon and adding a profile/rule matching the games .exe in which I explicitly allowed G-Sync. But again, didn’t help.

I have absolutely no idea what’s going on with g-sync, for some people it’s working fine with g-sync compatibles while other’s original g-sync monitors ceased to work. Also, ModeDebug doesn’t give any info about g-sync capabilities anymore.

Does it work if you use a different desktop environment that is known to work, such as GNOME? VRR relies on the compositor unredirecting full-screen windows. I know you said Cinnamon was set to disable the compositor on fullscreen apps but it would be good to try something else in case that option isn’t working for some reason.

If you really want to eliminate the desktop environment as a source of problems, you could try starting a bare X server with xinit -- -retro, starting nvidia-settings to enable the G-SYNC visual indicator, and then running glxgears -fullscreen.

Thank you Mr. Plattner,

I don’t know if it works in Gnome and I’d like to avoid messing with my system too much, as I’m currently happy not having serious problems.
I tried the xinit -- -retro approach (didn’t know that existed) and I can confirm the visual indicator shows G-Sync as active.
So it looks like the issue is with cinnamon DE.
Guess I have to go bug reporting there… Any document I can pass on, that would tell about, what is needed for G-Sync to work?

Thank you very much for your help!

I think the phrase to look for is “unredirect full-screen windows”. The compositor needs to call XCompositeUnredirectWindow on the application window when it is unoccluded and completely covers the root window (i.e. x=y=0, width and height match the root window, and border width is zero).

Now that I know better what to look for, I found this article:

https://jeff.vtkellers.com/posts/gaming/enabling-nvidia-gsync-on-linux-mint-cinnamon/

and he already opened an issue ticket about it just a few weeks ago:

trying that workaround now.

1 Like

Confirming that the workaround works!

Thanks for your help guys!
I guess some debugging information about G-Sync would be helpful (ModeDebug or however) in general.

Good find! I subscribed to that issue to keep an eye on it.