mirror of
https://github.com/torvalds/linux.git
synced 2024-12-14 15:13:52 +00:00
drm/nouveau/core: fail creation of zero-argument objects, when arguments are passed
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
This commit is contained in:
parent
3ee6f5b503
commit
f5ee92f085
@ -67,15 +67,9 @@ _nouveau_object_ctor(struct nouveau_object *parent,
|
||||
struct nouveau_oclass *oclass, void *data, u32 size,
|
||||
struct nouveau_object **pobject)
|
||||
{
|
||||
struct nouveau_object *object;
|
||||
int ret;
|
||||
|
||||
ret = nouveau_object_create(parent, engine, oclass, 0, &object);
|
||||
*pobject = nv_object(object);
|
||||
if (ret)
|
||||
return ret;
|
||||
|
||||
return 0;
|
||||
if (size != 0)
|
||||
return -ENOSYS;
|
||||
return nouveau_object_create(parent, engine, oclass, 0, pobject);
|
||||
}
|
||||
|
||||
void
|
||||
@ -91,42 +85,24 @@ nouveau_object_destroy(struct nouveau_object *object)
|
||||
kfree(object);
|
||||
}
|
||||
|
||||
static void
|
||||
_nouveau_object_dtor(struct nouveau_object *object)
|
||||
{
|
||||
nouveau_object_destroy(object);
|
||||
}
|
||||
|
||||
int
|
||||
nouveau_object_init(struct nouveau_object *object)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int
|
||||
_nouveau_object_init(struct nouveau_object *object)
|
||||
{
|
||||
return nouveau_object_init(object);
|
||||
}
|
||||
|
||||
int
|
||||
nouveau_object_fini(struct nouveau_object *object, bool suspend)
|
||||
{
|
||||
return 0;
|
||||
}
|
||||
|
||||
static int
|
||||
_nouveau_object_fini(struct nouveau_object *object, bool suspend)
|
||||
{
|
||||
return nouveau_object_fini(object, suspend);
|
||||
}
|
||||
|
||||
struct nouveau_ofuncs
|
||||
nouveau_object_ofuncs = {
|
||||
.ctor = _nouveau_object_ctor,
|
||||
.dtor = _nouveau_object_dtor,
|
||||
.init = _nouveau_object_init,
|
||||
.fini = _nouveau_object_fini,
|
||||
.dtor = nouveau_object_destroy,
|
||||
.init = nouveau_object_init,
|
||||
.fini = nouveau_object_fini,
|
||||
};
|
||||
|
||||
int
|
||||
|
Loading…
Reference in New Issue
Block a user