search for: drm_update_vblank_count

Displaying 16 results from an estimated 16 matches for "drm_update_vblank_count".

2017 Jul 16
3
[drm/nouveau] GeForce 8600 GT boot/suspend grumbling
...->vblank_time_lock, irqflags); /* + * Always update the count and timestamp to maintain the + * appearance that the counter has been ticking all along until + * this time. This makes the count account for the entire time + * between drm_crtc_vblank_on() and drm_crtc_vblank_off(). + */ + drm_update_vblank_count(dev, pipe, false); + + /* * Only disable vblank interrupts if they're enabled. This avoids * calling the ->disable_vblank() operation in atomic context with the * hardware potentially runtime suspended. @@ -332,14 +340,6 @@ void drm_vblank_disable_and_save(struct vblank->enabl...
2017 Jul 19
2
[PATCH] drm: disable vblank only if it got previously enabled
...0 DS: 0000 ES: 0000 CR0: 0000000080050033 > [ 12.768192] CR2: 000000edb16580b8 CR3: 000000020cc09000 CR4: 00000000003406f0 > [ 12.768193] Call Trace: > [ 12.768198] ? enqueue_task_fair+0x64/0x600 > [ 12.768211] ? drm_get_last_vbltimestamp+0x47/0x70 [drm] > [ 12.768223] ? drm_update_vblank_count+0x65/0x240 [drm] > [ 12.768227] ? pci_pm_runtime_resume+0xa0/0xa0 > [ 12.768238] ? drm_vblank_disable_and_save+0x55/0xc0 [drm] > [ 12.768250] ? drm_crtc_vblank_off+0xa9/0x1e0 [drm] > [ 12.768253] ? pci_pm_runtime_resume+0xa0/0xa0 > [ 12.768299] ? nouveau_display_fini+0...
2017 Jul 11
2
[regression drm/noveau] suspend to ram -> BOOM: exception RIP: drm_calc_vbltimestamp_from_scanoutpos+335
...001 R13: ffff8803f8471000 R14: ffffc900039f7b94 R15: ffffc900039f7bd0 ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 #12 [ffffc900039f7b18] gf119_head_vblank_put at ffffffffa04422f9 [nouveau] #13 [ffffc900039f7b88] drm_get_last_vbltimestamp at ffffffffa020ad91 [drm] #14 [ffffc900039f7ba8] drm_update_vblank_count at ffffffffa020b3e1 [drm] #15 [ffffc900039f7c10] drm_vblank_disable_and_save at ffffffffa020bbe9 [drm] #16 [ffffc900039f7c40] drm_crtc_vblank_off at ffffffffa020c3c0 [drm] #17 [ffffc900039f7cb0] nouveau_display_fini at ffffffffa048a4d6 [nouveau] #18 [ffffc900039f7ce0] nouveau_display_suspend at fff...
2017 Jul 20
2
[PATCH] drm: disable vblank only if it got previously enabled
...3 >>> [ 12.768192] CR2: 000000edb16580b8 CR3: 000000020cc09000 CR4: 00000000003406f0 >>> [ 12.768193] Call Trace: >>> [ 12.768198] ? enqueue_task_fair+0x64/0x600 >>> [ 12.768211] ? drm_get_last_vbltimestamp+0x47/0x70 [drm] >>> [ 12.768223] ? drm_update_vblank_count+0x65/0x240 [drm] >>> [ 12.768227] ? pci_pm_runtime_resume+0xa0/0xa0 >>> [ 12.768238] ? drm_vblank_disable_and_save+0x55/0xc0 [drm] >>> [ 12.768250] ? drm_crtc_vblank_off+0xa9/0x1e0 [drm] >>> [ 12.768253] ? pci_pm_runtime_resume+0xa0/0xa0 >>>...
2016 Nov 23
0
[PATCH] drm/nouveau/kms/nv50: Fix atomic pageflip events.
...rvable under DRI2 by the Xorg.log filling with flip handler warning messages. Call drm_accurate_vblank_count() before sending out flip completion events to enforce a vblank count/ts update for the vblank of flip completion and avoid stale counts/timestamps. This fix leads to one redundant call to drm_update_vblank_count for each completed flip, but no other side effects. On a ~6 year old Core i7 M620@ 2.67GHz the redundant call costs about 10 usecs per flip Successfully tested on GeForce 9500/9600/330M so far. Signed-off-by: Mario Kleiner <mario.kleiner.de at gmail.com> Cc: Ben Skeggs <bskeggs at redhat...
2017 Apr 23
0
[PATCH] drm/nouveau/kms: Increase max retries in scanout position queries.
...did not get a reasonable result, as such a failure wasn't considered all too horrible. There are a few NVidia gpu models out there which may need a bit more than 1 retry to get a successful query result under some conditions. Since Linux 4.4 the update code for vblank counter and timestamp in drm_update_vblank_count() changed so that the implementation assumes that high precision vblank timestamping of a kms driver either consistently succeeds or consistently fails for a given video mode and encoder/connector combo. Iow. switching from success to fail or vice versa on a modeset or connector change is ok, but s...
2017 Jul 15
4
[drm/nouveau] GeForce 8600 GT boot/suspend grumbling
....474003] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 321.474004] CR2: 00007fdd82e8f810 CR3: 0000000214683000 CR4: 00000000000006e0 [ 321.474005] Call Trace: [ 321.474068] ? nv50_head_vblank_put+0x22/0x50 [nouveau] [ 321.474085] drm_get_last_vbltimestamp+0x41/0x70 [drm] [ 321.474102] drm_update_vblank_count+0x61/0x230 [drm] [ 321.474118] drm_vblank_disable_and_save+0x59/0xc0 [drm] [ 321.474134] drm_crtc_vblank_off+0x1d5/0x210 [drm] [ 321.474152] ? drm_modeset_drop_locks+0x4e/0x60 [drm] [ 321.474203] nouveau_display_fini+0x56/0xd0 [nouveau] [ 321.474254] nouveau_display_suspend+0x4f/0x110 [no...
2017 Jul 11
0
[regression drm/noveau] suspend to ram -> BOOM: exception RIP: drm_calc_vbltimestamp_from_scanoutpos+335
...3f8471000 R14: ffffc900039f7b94 R15: ffffc900039f7bd0 > ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 > #12 [ffffc900039f7b18] gf119_head_vblank_put at ffffffffa04422f9 [nouveau] > #13 [ffffc900039f7b88] drm_get_last_vbltimestamp at ffffffffa020ad91 [drm] > #14 [ffffc900039f7ba8] drm_update_vblank_count at ffffffffa020b3e1 [drm] > #15 [ffffc900039f7c10] drm_vblank_disable_and_save at ffffffffa020bbe9 [drm] > #16 [ffffc900039f7c40] drm_crtc_vblank_off at ffffffffa020c3c0 [drm] > #17 [ffffc900039f7cb0] nouveau_display_fini at ffffffffa048a4d6 [nouveau] > #18 [ffffc900039f7ce0] nouveau_di...
2017 Jul 19
0
[PATCH] drm: disable vblank only if it got previously enabled
...0 [ 12.768191] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033 [ 12.768192] CR2: 000000edb16580b8 CR3: 000000020cc09000 CR4: 00000000003406f0 [ 12.768193] Call Trace: [ 12.768198] ? enqueue_task_fair+0x64/0x600 [ 12.768211] ? drm_get_last_vbltimestamp+0x47/0x70 [drm] [ 12.768223] ? drm_update_vblank_count+0x65/0x240 [drm] [ 12.768227] ? pci_pm_runtime_resume+0xa0/0xa0 [ 12.768238] ? drm_vblank_disable_and_save+0x55/0xc0 [drm] [ 12.768250] ? drm_crtc_vblank_off+0xa9/0x1e0 [drm] [ 12.768253] ? pci_pm_runtime_resume+0xa0/0xa0 [ 12.768299] ? nouveau_display_fini+0x56/0xd0 [nouveau] [ 12...
2017 Jul 20
0
[PATCH] drm: disable vblank only if it got previously enabled
...0000000080050033 > > [ 12.768192] CR2: 000000edb16580b8 CR3: 000000020cc09000 CR4: 00000000003406f0 > > [ 12.768193] Call Trace: > > [ 12.768198] ? enqueue_task_fair+0x64/0x600 > > [ 12.768211] ? drm_get_last_vbltimestamp+0x47/0x70 [drm] > > [ 12.768223] ? drm_update_vblank_count+0x65/0x240 [drm] > > [ 12.768227] ? pci_pm_runtime_resume+0xa0/0xa0 > > [ 12.768238] ? drm_vblank_disable_and_save+0x55/0xc0 [drm] > > [ 12.768250] ? drm_crtc_vblank_off+0xa9/0x1e0 [drm] > > [ 12.768253] ? pci_pm_runtime_resume+0xa0/0xa0 > > [ 12.768299]...
2017 Jul 20
0
[PATCH] drm: disable vblank only if it got previously enabled
...12.768192] CR2: 000000edb16580b8 CR3: 000000020cc09000 CR4: 00000000003406f0 >>>> [ 12.768193] Call Trace: >>>> [ 12.768198] ? enqueue_task_fair+0x64/0x600 >>>> [ 12.768211] ? drm_get_last_vbltimestamp+0x47/0x70 [drm] >>>> [ 12.768223] ? drm_update_vblank_count+0x65/0x240 [drm] >>>> [ 12.768227] ? pci_pm_runtime_resume+0xa0/0xa0 >>>> [ 12.768238] ? drm_vblank_disable_and_save+0x55/0xc0 [drm] >>>> [ 12.768250] ? drm_crtc_vblank_off+0xa9/0x1e0 [drm] >>>> [ 12.768253] ? pci_pm_runtime_resume+0xa0/0x...
2017 Jul 15
0
[drm/nouveau] GeForce 8600 GT boot/suspend grumbling
...00 ES: 0000 CR0: 0000000080050033 > [ 321.474004] CR2: 00007fdd82e8f810 CR3: 0000000214683000 CR4: 00000000000006e0 > [ 321.474005] Call Trace: > [ 321.474068] ? nv50_head_vblank_put+0x22/0x50 [nouveau] > [ 321.474085] drm_get_last_vbltimestamp+0x41/0x70 [drm] > [ 321.474102] drm_update_vblank_count+0x61/0x230 [drm] > [ 321.474118] drm_vblank_disable_and_save+0x59/0xc0 [drm] > [ 321.474134] drm_crtc_vblank_off+0x1d5/0x210 [drm] > [ 321.474152] ? drm_modeset_drop_locks+0x4e/0x60 [drm] > [ 321.474203] nouveau_display_fini+0x56/0xd0 [nouveau] > [ 321.474254] nouveau_displ...
2017 Apr 15
1
[Bug 100691] New: [4.10] BUG: KASAN: use-after-free in drm_calc_vbltimestamp_from_scanoutpos+0x625/0x740
...et_drm_timestamp+0x40/0x40 (drivers/gpu/drm/drm_irq.c:848) ? trace_hardirqs_off+0xd/0x10 (kernel/locking/lockdep.c:2780) ? _raw_spin_unlock_irqrestore+0x4b/0x50 (kernel/locking/spinlock.c:190) ? nouveau_fence_wait_uevent_handler+0xc9/0x140 [nouveau] (drivers/gpu/drm/nouveau/nouveau_fence.c:148) drm_update_vblank_count+0x16a/0x870 (drivers/gpu/drm/drm_irq.c:150) ? store_vblank+0x2c0/0x2c0 (drivers/gpu/drm/drm_irq.c:79) drm_handle_vblank+0x14a/0x7d0 (drivers/gpu/drm/drm_irq.c:1704) ? trace_hardirqs_off+0xd/0x10 (kernel/locking/lockdep.c:2780) ? drm_crtc_wait_one_vblank+0x90/0x90 (drivers/gpu/drm/drm_irq.c:1252...
2020 Jun 24
0
[RFC v7 03/11] drm/vblank: Add vblank works
...oduleparam.h> #include <drm/drm_crtc.h> @@ -37,6 +38,8 @@ #include "drm_internal.h" #include "drm_trace.h" +#include "drm_vblank_internal.h" +#include "drm_vblank_work_internal.h" /** * DOC: vblank handling @@ -363,7 +366,7 @@ static void drm_update_vblank_count(struct drm_device *dev, unsigned int pipe, store_vblank(dev, pipe, diff, t_vblank, cur_vblank); } -static u64 drm_vblank_count(struct drm_device *dev, unsigned int pipe) +u64 drm_vblank_count(struct drm_device *dev, unsigned int pipe) { struct drm_vblank_crtc *vblank = &dev->vblank[p...
2020 Jun 24
13
[RFC v7 00/11] drm/nouveau: Introduce CRC support for gf119+
Nvidia released some documentation on how CRC support works on their GPUs, hooray! So: this patch series implements said CRC support in nouveau, along with adding some special debugfs interfaces for some relevant igt-gpu-tools tests (already on the ML). First - we add some new functionality to kthread_work in the kernel, and then use this to add a new feature to DRM that Ville Syrj?l? came up
2020 Jun 27
9
[RFC v8 0/9] drm/nouveau: Introduce CRC support for gf119+
Nvidia released some documentation on how CRC support works on their GPUs, hooray! So: this patch series implements said CRC support in nouveau, along with adding some special debugfs interfaces for some relevant igt-gpu-tools tests (already on the ML). First - we add some new functionality to kthread_work in the kernel, and then use this to add a new feature to DRM that Ville Syrj?l? came up