search for: nv50_mstm_destroy_connector

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) >>>&gt...
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) >>>>> + { &gt...
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