On Tue, Sep 17, 2019 at 01:47:25PM +1000, Ben Skeggs wrote: > On Tue, 17 Sep 2019 at 01:18, Thierry Reding <thierry.reding@xxxxxxxxx> wrote: > > > > From: Thierry Reding <treding@xxxxxxxxxx> > > > > The fault information register contains data about the aperture that > > caused the failure. This can be useful in debugging aperture related > > programming bugs. > Should this be parsed for fault buffer entries too? Yes, it probably should. Will fix that in v2. Thanks, Thierry > > > > > Signed-off-by: Thierry Reding <treding@xxxxxxxxxx> > > --- > > drivers/gpu/drm/nouveau/include/nvkm/subdev/fault.h | 1 + > > drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c | 3 ++- > > drivers/gpu/drm/nouveau/nvkm/subdev/fault/gv100.c | 1 + > > 3 files changed, 4 insertions(+), 1 deletion(-) > > > > diff --git a/drivers/gpu/drm/nouveau/include/nvkm/subdev/fault.h b/drivers/gpu/drm/nouveau/include/nvkm/subdev/fault.h > > index 97322f95b3ee..1cc862bc1122 100644 > > --- a/drivers/gpu/drm/nouveau/include/nvkm/subdev/fault.h > > +++ b/drivers/gpu/drm/nouveau/include/nvkm/subdev/fault.h > > @@ -21,6 +21,7 @@ struct nvkm_fault_data { > > u64 addr; > > u64 inst; > > u64 time; > > + u8 aperture; > > u8 engine; > > u8 valid; > > u8 gpc; > > diff --git a/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c b/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c > > index 5d4b695cab8e..81cbe1cc4804 100644 > > --- a/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c > > +++ b/drivers/gpu/drm/nouveau/nvkm/engine/fifo/gk104.c > > @@ -519,9 +519,10 @@ gk104_fifo_fault(struct nvkm_fifo *base, struct nvkm_fault_data *info) > > chan = nvkm_fifo_chan_inst_locked(&fifo->base, info->inst); > > > > nvkm_error(subdev, > > - "fault %02x [%s] at %016llx engine %02x [%s] client %02x " > > + "fault %02x [%s] at %016llx aperture %02x engine %02x [%s] client %02x " > > "[%s%s] reason %02x [%s] on channel %d [%010llx %s]\n", > > info->access, ea ? ea->name : "", info->addr, > > + info->aperture, > > info->engine, ee ? ee->name : en, > > info->client, ct, ec ? ec->name : "", > > info->reason, er ? er->name : "", chan ? chan->chid : -1, > > diff --git a/drivers/gpu/drm/nouveau/nvkm/subdev/fault/gv100.c b/drivers/gpu/drm/nouveau/nvkm/subdev/fault/gv100.c > > index 6747f09c2dc3..b5e32295237b 100644 > > --- a/drivers/gpu/drm/nouveau/nvkm/subdev/fault/gv100.c > > +++ b/drivers/gpu/drm/nouveau/nvkm/subdev/fault/gv100.c > > @@ -138,6 +138,7 @@ gv100_fault_intr_fault(struct nvkm_fault *fault) > > info.inst = ((u64)insthi << 32) | (info0 & 0xfffff000); > > info.time = 0; > > info.engine = (info0 & 0x000000ff); > > + info.aperture = (info0 & 0x00000c00) >> 10; > > info.valid = (info1 & 0x80000000) >> 31; > > info.gpc = (info1 & 0x1f000000) >> 24; > > info.hub = (info1 & 0x00100000) >> 20; > > -- > > 2.23.0 > > > > _______________________________________________ > > Nouveau mailing list > > Nouveau@xxxxxxxxxxxxxxxxxxxxx > > https://lists.freedesktop.org/mailman/listinfo/nouveau
Attachment:
signature.asc
Description: PGP signature
_______________________________________________ dri-devel mailing list dri-devel@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/dri-devel