Displaying 20 results from an estimated 28 matches for "nv50_mstm_destroy_connector".
2017 Nov 10
2
[PATCH] Accept 3d controllers and not only VGA controllers.
...= kzalloc(sizeof(struct nouveau_fbdev), GFP_KERNEL);
diff --git a/drivers/gpu/drm/nouveau/nv50_display.c
b/drivers/gpu/drm/nouveau/nv50_display.c
index fb47d46050ec..061daf036407 100644
--- a/drivers/gpu/drm/nouveau/nv50_display.c
+++ b/drivers/gpu/drm/nouveau/nv50_display.c
@@ -3214,6 +3214,13 @@ nv50_mstm_destroy_connector(struct
drm_dp_mst_topology_mgr *mgr,
struct nouveau_drm *drm = nouveau_drm(connector->dev);
struct nv50_mstc *mstc = nv50_mstc(connector);
+ if (!drm->fbcon)
+ {
+ NV_WARN(drm, "drm->fbcon of %s point to NULL. Will not destroy
connector\n",
+ c...
2017 Dec 18
2
[PATCH] Accept 3d controllers and not only VGA controllers.
...;> b/drivers/gpu/drm/nouveau/nv50_display.c
>>>>>> index fb47d46050ec..061daf036407 100644
>>>>>> --- a/drivers/gpu/drm/nouveau/nv50_display.c
>>>>>> +++ b/drivers/gpu/drm/nouveau/nv50_display.c
>>>>>> @@ -3214,6 +3214,13 @@ nv50_mstm_destroy_connector(struct
>>>>>> drm_dp_mst_topology_mgr *mgr,
>>>>>> struct nouveau_drm *drm = nouveau_drm(connector->dev);
>>>>>> struct nv50_mstc *mstc = nv50_mstc(connector);
>>>>>> + if (!drm->fbcon)
>>>>...
2017 Dec 03
2
[PATCH] Accept 3d controllers and not only VGA controllers.
...>> diff --git a/drivers/gpu/drm/nouveau/nv50_display.c
>> b/drivers/gpu/drm/nouveau/nv50_display.c
>> index fb47d46050ec..061daf036407 100644
>> --- a/drivers/gpu/drm/nouveau/nv50_display.c
>> +++ b/drivers/gpu/drm/nouveau/nv50_display.c
>> @@ -3214,6 +3214,13 @@ nv50_mstm_destroy_connector(struct
>> drm_dp_mst_topology_mgr *mgr,
>> struct nouveau_drm *drm = nouveau_drm(connector->dev);
>> struct nv50_mstc *mstc = nv50_mstc(connector);
>> + if (!drm->fbcon)
>> + {
>> + NV_WARN(drm, "drm->fbcon of %s point to...
2017 Dec 18
0
[PATCH] Accept 3d controllers and not only VGA controllers.
I've discussed it with Ben and we actually found a better solution.
There are just some calls inside those functions which should get NULL
checks, nv50_mstm_register_connector and nv50_mstm_destroy_connector.
Or at least something similiar so that the code doesn't depent on the
fbcon object being there.
On Mon, Dec 18, 2017 at 6:30 PM, Josef Larsson <josef.lar at gmail.com> wrote:
> Without a NULL pointer safe-guard patch, I get a kernel oops when I plug
> in external displays in my do...
2017 Dec 14
2
[PATCH] Accept 3d controllers and not only VGA controllers.
...uveau/nv50_display.c
>>>> b/drivers/gpu/drm/nouveau/nv50_display.c
>>>> index fb47d46050ec..061daf036407 100644
>>>> --- a/drivers/gpu/drm/nouveau/nv50_display.c
>>>> +++ b/drivers/gpu/drm/nouveau/nv50_display.c
>>>> @@ -3214,6 +3214,13 @@ nv50_mstm_destroy_connector(struct
>>>> drm_dp_mst_topology_mgr *mgr,
>>>> struct nouveau_drm *drm = nouveau_drm(connector->dev);
>>>> struct nv50_mstc *mstc = nv50_mstc(connector);
>>>> + if (!drm->fbcon)
>>>> + {
>>>> +...
2017 Nov 11
0
[PATCH] Accept 3d controllers and not only VGA controllers.
...au_fbdev), GFP_KERNEL);
> diff --git a/drivers/gpu/drm/nouveau/nv50_display.c
> b/drivers/gpu/drm/nouveau/nv50_display.c
> index fb47d46050ec..061daf036407 100644
> --- a/drivers/gpu/drm/nouveau/nv50_display.c
> +++ b/drivers/gpu/drm/nouveau/nv50_display.c
> @@ -3214,6 +3214,13 @@ nv50_mstm_destroy_connector(struct
> drm_dp_mst_topology_mgr *mgr,
> struct nouveau_drm *drm = nouveau_drm(connector->dev);
> struct nv50_mstc *mstc = nv50_mstc(connector);
>
> + if (!drm->fbcon)
> + {
> + NV_WARN(drm, "drm->fbcon of %s point to NULL. Will not des...
2018 May 18
0
[PATCH] drm/nouveau/kms/nv50-: fix drm-get-put.cocci warnings
...40ebe
commit: 30ed49b55b6e44e004c3095671e74fea93ee84cb [105/165]
drm/nouveau/kms/nv50-: move code underneath dispnv50/
disp.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
--- a/drivers/gpu/drm/nouveau/dispnv50/disp.c
+++ b/drivers/gpu/drm/nouveau/dispnv50/disp.c
@@ -3254,7 +3254,7 @@ nv50_mstm_destroy_connector(struct drm_d
mstc->port = NULL;
drm_modeset_unlock(&drm->dev->mode_config.connection_mutex);
- drm_connector_unreference(&mstc->connector);
+ drm_connector_put(&mstc->connector);
}
static void
2018 Dec 14
0
[WIP PATCH 09/15] drm/nouveau: Fix potential use-after-frees for MSTCs
...c->connector.base, dev->mode_config.path_property, 0);
drm_object_attach_property(&mstc->connector.base, dev->mode_config.tile_property, 0);
drm_connector_set_path_property(&mstc->connector, path);
+ drm_dp_mst_get_port_malloc(port);
return 0;
}
@@ -1077,6 +1082,7 @@ nv50_mstm_destroy_connector(struct drm_dp_mst_topology_mgr *mgr,
drm_fb_helper_remove_one_connector(&drm->fbcon->helper, &mstc->connector);
drm_modeset_lock(&drm->dev->mode_config.connection_mutex, NULL);
+ drm_dp_mst_put_port_malloc(mstc->port);
mstc->port = NULL;
drm_modeset_unlock...
2018 Dec 14
0
[WIP PATCH 10/15] drm/nouveau: Stop unsetting mstc->port, use malloc refs
...tc_destroy(struct drm_connector *connector)
struct nv50_mstc *mstc = nv50_mstc(connector);
drm_connector_cleanup(&mstc->connector);
- if (mstc->port)
- drm_dp_mst_put_port_malloc(mstc->port);
+ drm_dp_mst_put_port_malloc(mstc->port);
kfree(mstc);
}
@@ -1081,11 +1078,6 @@ nv50_mstm_destroy_connector(struct drm_dp_mst_topology_mgr *mgr,
drm_fb_helper_remove_one_connector(&drm->fbcon->helper, &mstc->connector);
- drm_modeset_lock(&drm->dev->mode_config.connection_mutex, NULL);
- drm_dp_mst_put_port_malloc(mstc->port);
- mstc->port = NULL;
- drm_modeset_unlo...
2017 Dec 14
0
[PATCH] Accept 3d controllers and not only VGA controllers.
...a/drivers/gpu/drm/nouveau/nv50_display.c
>>> b/drivers/gpu/drm/nouveau/nv50_display.c
>>> index fb47d46050ec..061daf036407 100644
>>> --- a/drivers/gpu/drm/nouveau/nv50_display.c
>>> +++ b/drivers/gpu/drm/nouveau/nv50_display.c
>>> @@ -3214,6 +3214,13 @@ nv50_mstm_destroy_connector(struct
>>> drm_dp_mst_topology_mgr *mgr,
>>> struct nouveau_drm *drm = nouveau_drm(connector->dev);
>>> struct nv50_mstc *mstc = nv50_mstc(connector);
>>> + if (!drm->fbcon)
>>> + {
>>> + NV_WARN(drm, "dr...
2017 Dec 14
0
[PATCH] Accept 3d controllers and not only VGA controllers.
...>>>>> b/drivers/gpu/drm/nouveau/nv50_display.c
>>>>> index fb47d46050ec..061daf036407 100644
>>>>> --- a/drivers/gpu/drm/nouveau/nv50_display.c
>>>>> +++ b/drivers/gpu/drm/nouveau/nv50_display.c
>>>>> @@ -3214,6 +3214,13 @@ nv50_mstm_destroy_connector(struct
>>>>> drm_dp_mst_topology_mgr *mgr,
>>>>> struct nouveau_drm *drm = nouveau_drm(connector->dev);
>>>>> struct nv50_mstc *mstc = nv50_mstc(connector);
>>>>> + if (!drm->fbcon)
>>>>> + {
>...
2018 May 02
0
[PATCH] drm/nouveau: Fix deadlock in nv50_mstm_register_connector()
...--
1 file changed, 3 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/nouveau/nv50_display.c b/drivers/gpu/drm/nouveau/nv50_display.c
index 8bd739cfd00d..2b3ccd850750 100644
--- a/drivers/gpu/drm/nouveau/nv50_display.c
+++ b/drivers/gpu/drm/nouveau/nv50_display.c
@@ -3264,10 +3264,11 @@ nv50_mstm_destroy_connector(struct drm_dp_mst_topology_mgr *mgr,
drm_connector_unregister(&mstc->connector);
- drm_modeset_lock_all(drm->dev);
drm_fb_helper_remove_one_connector(&drm->fbcon->helper, &mstc->connector);
+
+ drm_modeset_lock(&drm->dev->mode_config.connection_mutex, NU...
2017 Aug 03
0
[PATCH 17/29] drm/nouveau: switch to drm_*{get, put} helpers
...ked(gem);
+ drm_gem_object_put_unlocked(gem);
return ret;
}
diff --git a/drivers/gpu/drm/nouveau/nv50_display.c b/drivers/gpu/drm/nouveau/nv50_display.c
index e3132a2..e57b2e8 100644
--- a/drivers/gpu/drm/nouveau/nv50_display.c
+++ b/drivers/gpu/drm/nouveau/nv50_display.c
@@ -3237,7 +3237,7 @@ nv50_mstm_destroy_connector(struct drm_dp_mst_topology_mgr *mgr,
mstc->port = NULL;
drm_modeset_unlock_all(drm->dev);
- drm_connector_unreference(&mstc->connector);
+ drm_connector_put(&mstc->connector);
}
static void
--
2.7.4
2017 Aug 03
0
[PATCH 17/29] drm/nouveau: switch to drm_*{get, put} helpers
...gem);
> return ret;
> }
>
> diff --git a/drivers/gpu/drm/nouveau/nv50_display.c b/drivers/gpu/drm/nouveau/nv50_display.c
> index e3132a2..e57b2e8 100644
> --- a/drivers/gpu/drm/nouveau/nv50_display.c
> +++ b/drivers/gpu/drm/nouveau/nv50_display.c
> @@ -3237,7 +3237,7 @@ nv50_mstm_destroy_connector(struct drm_dp_mst_topology_mgr *mgr,
> mstc->port = NULL;
> drm_modeset_unlock_all(drm->dev);
>
> - drm_connector_unreference(&mstc->connector);
> + drm_connector_put(&mstc->connector);
> }
>
> static void
2017 Aug 03
2
[PATCH 00/29] DRM API conversions
This patch set replaces the occurrences of drm_*_reference() and
drm_*_unreference() with the new drm_*_get() and drm_*_put() functions.
All patches in the series do the same thing, converting to the new APIs.
I created patches per DRM driver as suggested by Daniel Vetter.
Background:
In the kernel, reference counting APIs use *_get(), *_put() style naming
to reference-count the objects. But DRM
2018 Jun 18
4
[PATCH 0/4] drm/nouveau: Replace {un/reference} with {put, get} functions
This patch set replaces functions named {un,reference} by their
{put,get} counterparts. Affected data types are struct drm_connector,
struct drm_framebuffer, struct drm_gem_object, and struct drm_device.
With the reference-counting functions being named {put,get}, the DRM
interface is more aligned to Linux kernel nameing standard. The patch
set does not change driver-internal interfaces.
Thomas
2018 Nov 07
5
[PATCH RESEND v3 0/5] drm/dp_mst: Improve VCPI helpers, use in nouveau
[sorry about the resend-copy pasted the wrong header and I want to make
sure this doesn't get missed!]
This patchset does some cleaning up of the atomic VCPI helpers for MST,
and converts nouveau over to using them. I would have included amdgpu in
this patch as well, but at the moment moving them over to the atomic
helpers is nontrivial.
Cc: Daniel Vetter <daniel at ffwll.ch>
Lyude
2018 Nov 08
5
[PATCH v4 0/5] drm/dp_mst: Improve VCPI helpers, use in nouveau
This patchset does some cleaning up of the atomic VCPI helpers for MST,
and converts nouveau over to using them. I would have included amdgpu in
this patch as well, but at the moment moving them over to the atomic
helpers is nontrivial.
Cc: Daniel Vetter <daniel at ffwll.ch>
Lyude Paul (5):
drm/dp_mst: Add some atomic state iterator macros
drm/dp_mst: Start tracking per-port VCPI
2018 Nov 08
5
[PATCH v5 0/5] drm/dp_mst: Improve VCPI helpers, use in nouveau
This patchset does some cleaning up of the atomic VCPI helpers for MST,
and converts nouveau over to using them. I would have included amdgpu in
this patch as well, but at the moment moving them over to the atomic
helpers is nontrivial.
Cc: Daniel Vetter <daniel at ffwll.ch>
Lyude Paul (5):
drm/dp_mst: Add some atomic state iterator macros
drm/dp_mst: Start tracking per-port VCPI
2018 Nov 07
6
[PATCH v3 0/5] drm/dp_mst: Add some atomic state iterator macros
This patchset does some cleaning up of the atomic VCPI helpers for MST,
and converts nouveau over to using them. I would have included amdgpu in
this patch as well, but at the moment moving them over to the atomic
helpers is nontrivial.
Cc: Daniel Vetter <daniel at ffwll.ch>
Lyude Paul (5):
drm/dp_mst: Add some atomic state iterator macros
drm/dp_mst: Start tracking per-port VCPI