search for: nv84_graph_tlb_flush

Displaying 7 results from an estimated 7 matches for "nv84_graph_tlb_flush".

2012 Nov 06
1
[PATCH] drm/nv50: decode PGRAPH status registers on TLB flush fail
...s[], u32 status) +{ + int i; + u32 tmp = status; + for (i = 0; units[i] && tmp; i++) { + if ((tmp & 7) == 1) + pr_cont("%s ", units[i]); + tmp >>= 3; + } + if (tmp) + pr_cont("invalid: %x ", tmp); + pr_cont("(0x%08x) ", status); +} + static int nv84_graph_tlb_flush(struct nouveau_engine *engine) { @@ -219,10 +275,21 @@ nv84_graph_tlb_flush(struct nouveau_engine *engine) !(timeout = ptimer->read(ptimer) - start > 2000000000)); if (timeout) { - nv_error(priv, "PGRAPH TLB flush idle timeout fail: " - "0x%08x 0x%08x 0x%08x 0...
2012 Aug 19
1
[PATCH 01/10] drm/nv50: decode PGRAPH status registers on TLB flush fail
...[], u32 status) +{ + int i; + u32 tmp = status; + for (i = 0; units[i] && tmp; i++) { + if ((tmp & 7) == 1) + pr_cont("%s ", units[i]); + tmp >>= 3; + } + if (tmp) + pr_cont("invalid: %x ", tmp); + pr_cont("(0x%08x)\n", status); +} + static int nv84_graph_tlb_flush(struct nouveau_engine *engine) { @@ -219,10 +275,24 @@ nv84_graph_tlb_flush(struct nouveau_engine *engine) !(timeout = ptimer->read(ptimer) - start > 2000000000)); if (timeout) { - nv_error(priv, "PGRAPH TLB flush idle timeout fail: " - "0x%08x 0x%08x 0x%08x 0...
2012 Apr 22
1
[PATCH 4/5] drm/nv50: let applications hanging on vm flush to be killed
...0_graph.c | 5 +++++ 1 files changed, 5 insertions(+), 0 deletions(-) diff --git a/drivers/gpu/drm/nouveau/nv50_graph.c b/drivers/gpu/drm/nouveau/nv50_graph.c index 6899547..a61853f 100644 --- a/drivers/gpu/drm/nouveau/nv50_graph.c +++ b/drivers/gpu/drm/nouveau/nv50_graph.c @@ -435,6 +435,11 @@ nv84_graph_tlb_flush(struct drm_device *dev, int engine) if ((tmp & 7) == 1) idle = false; } + + if (fatal_signal_pending(current)) { + ret = -ERESTARTSYS; + break; + } } while (!idle && !(timeout = ptimer->read(dev) - start > 2000000000)); if (timeout) { -- 1.7.8.5
2014 Jan 17
0
[PATCH] drm/nv50/graph: update list of mp errors, make it a bitfield
...ions(+), 8 deletions(-) diff --git a/drivers/gpu/drm/nouveau/core/engine/graph/nv50.c b/drivers/gpu/drm/nouveau/core/engine/graph/nv50.c index a489ac2..0f8d18a 100644 --- a/drivers/gpu/drm/nouveau/core/engine/graph/nv50.c +++ b/drivers/gpu/drm/nouveau/core/engine/graph/nv50.c @@ -304,12 +304,14 @@ nv84_graph_tlb_flush(struct nouveau_engine *engine) return timeout ? -EBUSY : 0; } -static const struct nouveau_enum nv50_mp_exec_error_names[] = { - { 3, "STACK_UNDERFLOW", NULL }, - { 4, "QUADON_ACTIVE", NULL }, - { 8, "TIMEOUT", NULL }, - { 0x10, "INVALID_OPCODE", NULL },...
2013 Jun 18
1
kernel bug nouveau, total system hang, X crashed
...04:23:09.916369+02:00 linux-zxd7 kernel: [305129.599208] ffff88061b3419b0 ffff880034815400 ffffffffa01c311a ffff88061b341980 2013-06-14T04:23:09.916370+02:00 linux-zxd7 kernel: [305129.599209] Call Trace: 2013-06-14T04:23:09.916371+02:00 linux-zxd7 kernel: [305129.599248] [<ffffffffa01b4c6d>] nv84_graph_tlb_flush+0x28d/0x2c0 [nouveau] 2013-06-14T04:23:09.916372+02:00 linux-zxd7 kernel: [305129.599370] [<ffffffffa016cec8>] nv50_vm_flush+0x78/0x90 [nouveau] 2013-06-14T04:23:09.916373+02:00 linux-zxd7 kernel: [305129.599457] [<ffffffffa01c311a>] nouveau_bo_vma_del+0x9a/0xa0 [nouveau] 2013-06-14T04:...
2012 Apr 25
5
[PATCH v2 4/4] drm/nouveau: gpu lockup recovery
...v_priv->gpureset_in_progress, 0); pci_set_master(dev->pdev); diff --git a/drivers/gpu/drm/nouveau/nv50_graph.c b/drivers/gpu/drm/nouveau/nv50_graph.c index a61853f..d0a2e50 100644 --- a/drivers/gpu/drm/nouveau/nv50_graph.c +++ b/drivers/gpu/drm/nouveau/nv50_graph.c @@ -440,13 +440,14 @@ nv84_graph_tlb_flush(struct drm_device *dev, int engine) ret = -ERESTARTSYS; break; } - } while (!idle && !(timeout = ptimer->read(dev) - start > 2000000000)); + } while (!idle && !(timeout = ptimer->read(dev) - start > nv_timeout(dev))); if (timeout) { - NV_ERROR(dev, "...
2012 Apr 22
2
[RFC PATCH 5/5] drm/nouveau: gpu lockup recovery
...v_priv->gpureset_in_progress, 0); pci_set_master(dev->pdev); diff --git a/drivers/gpu/drm/nouveau/nv50_graph.c b/drivers/gpu/drm/nouveau/nv50_graph.c index a61853f..d0a2e50 100644 --- a/drivers/gpu/drm/nouveau/nv50_graph.c +++ b/drivers/gpu/drm/nouveau/nv50_graph.c @@ -440,13 +440,14 @@ nv84_graph_tlb_flush(struct drm_device *dev, int engine) ret = -ERESTARTSYS; break; } - } while (!idle && !(timeout = ptimer->read(dev) - start > 2000000000)); + } while (!idle && !(timeout = ptimer->read(dev) - start > nv_timeout(dev))); if (timeout) { - NV_ERROR(dev, "...