diff mbox

nouveau: add asserts to make sure krefs are there

Message ID 1434929266-29255-1-git-send-email-imirkin@alum.mit.edu (mailing list archive)
State New, archived
Headers show

Commit Message

Ilia Mirkin June 21, 2015, 11:27 p.m. UTC
This should help catch odd bugs at the callsites rather than much later
on with completely bogus bo indices.

Signed-off-by: Ilia Mirkin <imirkin@alum.mit.edu>
---
 nouveau/pushbuf.c | 4 ++++
 1 file changed, 4 insertions(+)
diff mbox

Patch

diff --git a/nouveau/pushbuf.c b/nouveau/pushbuf.c
index 4f77881..8e7dcdf 100644
--- a/nouveau/pushbuf.c
+++ b/nouveau/pushbuf.c
@@ -234,6 +234,8 @@  pushbuf_krel(struct nouveau_pushbuf *push, struct nouveau_bo *bo,
 	bkref = cli_kref_get(push->client, bo);
 	krel  = &krec->reloc[krec->nr_reloc++];
 
+	assert(pkref);
+	assert(bkref);
 	krel->reloc_bo_index = pkref - krec->buffer;
 	krel->reloc_bo_offset = (push->cur - nvpb->ptr) * 4;
 	krel->bo_index = bkref - krec->buffer;
@@ -721,6 +723,7 @@  nouveau_pushbuf_data(struct nouveau_pushbuf *push, struct nouveau_bo *bo,
 
 	if (bo) {
 		kref = cli_kref_get(push->client, bo);
+		assert(kref);
 		kpsh = &krec->push[krec->nr_push++];
 		kpsh->bo_index = kref - krec->buffer;
 		kpsh->offset   = offset;
@@ -757,6 +760,7 @@  nouveau_pushbuf_refd(struct nouveau_pushbuf *push, struct nouveau_bo *bo)
 
 	if (cli_push_get(push->client, bo) == push) {
 		kref = cli_kref_get(push->client, bo);
+		assert(kref);
 		if (kref->read_domains)
 			flags |= NOUVEAU_BO_RD;
 		if (kref->write_domains)