Skip to content

Commit

Permalink
Merge branch 'drm-coverity-fixes' of git://people.freedesktop.org/~da…
Browse files Browse the repository at this point in the history
…nvet/drm into drm-next

bunch of coverity fixes all minor.

* 'drm-coverity-fixes' of git://people.freedesktop.org/~danvet/drm:
  drm: Fix error handling in drm_master_create
  drm/i2c/tda998x: Fix signed overflow issue
  drm/bochs: Remove unecessary NULL check in gem_free
  drm/bochs: Remove unnecessary NULL check in bo_unref
  drm/udl: Initialize ret in udl_driver_load
  drm/via: Remove unecessary NULL check
  drm/ast: Remove unecessary NULL check in gem_free
  drm/ast: Remove unnecessary NULL check in bo_unref
  drm/cirrus: Remove unecessary NULL check in gem_free
  drm/cirrus: Remove unnecessary NULL check in bo_unref
  drm/mgag200: Remove unecessary NULL check in gem_free
  drm/mgag200: Remove unecessary NULL check in bo_unref
  • Loading branch information
Dave Airlie committed Apr 30, 2014
2 parents 2c9b25c + 10e6856 commit 7e9ab40
Show file tree
Hide file tree
Showing 8 changed files with 14 additions and 25 deletions.
7 changes: 2 additions & 5 deletions drivers/gpu/drm/ast/ast_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -411,16 +411,13 @@ static void ast_bo_unref(struct ast_bo **bo)

tbo = &((*bo)->bo);
ttm_bo_unref(&tbo);
if (tbo == NULL)
*bo = NULL;

*bo = NULL;
}

void ast_gem_free_object(struct drm_gem_object *obj)
{
struct ast_bo *ast_bo = gem_to_ast_bo(obj);

if (!ast_bo)
return;
ast_bo_unref(&ast_bo);
}

Expand Down
6 changes: 1 addition & 5 deletions drivers/gpu/drm/bochs/bochs_mm.c
Original file line number Diff line number Diff line change
Expand Up @@ -434,17 +434,13 @@ static void bochs_bo_unref(struct bochs_bo **bo)

tbo = &((*bo)->bo);
ttm_bo_unref(&tbo);
if (tbo == NULL)
*bo = NULL;

*bo = NULL;
}

void bochs_gem_free_object(struct drm_gem_object *obj)
{
struct bochs_bo *bochs_bo = gem_to_bochs_bo(obj);

if (!bochs_bo)
return;
bochs_bo_unref(&bochs_bo);
}

Expand Down
6 changes: 1 addition & 5 deletions drivers/gpu/drm/cirrus/cirrus_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -264,17 +264,13 @@ static void cirrus_bo_unref(struct cirrus_bo **bo)

tbo = &((*bo)->bo);
ttm_bo_unref(&tbo);
if (tbo == NULL)
*bo = NULL;

*bo = NULL;
}

void cirrus_gem_free_object(struct drm_gem_object *obj)
{
struct cirrus_bo *cirrus_bo = gem_to_cirrus_bo(obj);

if (!cirrus_bo)
return;
cirrus_bo_unref(&cirrus_bo);
}

Expand Down
5 changes: 4 additions & 1 deletion drivers/gpu/drm/drm_stub.c
Original file line number Diff line number Diff line change
Expand Up @@ -128,7 +128,10 @@ struct drm_master *drm_master_create(struct drm_minor *minor)
kref_init(&master->refcount);
spin_lock_init(&master->lock.spinlock);
init_waitqueue_head(&master->lock.lock_queue);
drm_ht_create(&master->magiclist, DRM_MAGIC_HASH_ORDER);
if (drm_ht_create(&master->magiclist, DRM_MAGIC_HASH_ORDER)) {
kfree(master);
return NULL;
}
INIT_LIST_HEAD(&master->magicfree);
master->minor = minor;

Expand Down
6 changes: 3 additions & 3 deletions drivers/gpu/drm/i2c/tda998x_drv.c
Original file line number Diff line number Diff line change
Expand Up @@ -568,11 +568,11 @@ static irqreturn_t tda998x_irq_thread(int irq, void *data)

static uint8_t tda998x_cksum(uint8_t *buf, size_t bytes)
{
uint8_t sum = 0;
int sum = 0;

while (bytes--)
sum += *buf++;
return (255 - sum) + 1;
sum -= *buf++;
return sum;
}

#define HB(x) (x)
Expand Down
6 changes: 1 addition & 5 deletions drivers/gpu/drm/mgag200/mgag200_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -322,17 +322,13 @@ static void mgag200_bo_unref(struct mgag200_bo **bo)

tbo = &((*bo)->bo);
ttm_bo_unref(&tbo);
if (tbo == NULL)
*bo = NULL;

*bo = NULL;
}

void mgag200_gem_free_object(struct drm_gem_object *obj)
{
struct mgag200_bo *mgag200_bo = gem_to_mga_bo(obj);

if (!mgag200_bo)
return;
mgag200_bo_unref(&mgag200_bo);
}

Expand Down
1 change: 1 addition & 0 deletions drivers/gpu/drm/udl/udl_main.c
Original file line number Diff line number Diff line change
Expand Up @@ -294,6 +294,7 @@ int udl_driver_load(struct drm_device *dev, unsigned long flags)
dev->dev_private = udl;

if (!udl_parse_vendor_descriptor(dev, dev->usbdev)) {
ret = -ENODEV;
DRM_ERROR("firmware not recognized. Assume incompatible device\n");
goto err;
}
Expand Down
2 changes: 1 addition & 1 deletion drivers/gpu/drm/via/via_mm.c
Original file line number Diff line number Diff line change
Expand Up @@ -79,7 +79,7 @@ int via_final_context(struct drm_device *dev, int context)

/* Linux specific until context tracking code gets ported to BSD */
/* Last context, perform cleanup */
if (list_is_singular(&dev->ctxlist) && dev->dev_private) {
if (list_is_singular(&dev->ctxlist)) {
DRM_DEBUG("Last Context\n");
drm_irq_uninstall(dev);
via_cleanup_futex(dev_priv);
Expand Down

0 comments on commit 7e9ab40

Please sign in to comment.