Displaying 20 results from an estimated 46 matches for "drm_put_dev".
2019 Nov 09
2
[PATCH] drm/virtgpu: fix double unregistration
drm_put_dev also calls drm_dev_unregister, so dev will be unregistered
twice.
Replace it with drm_dev_put to fix it.
Signed-off-by: Chuhong Yuan <hslester96 at gmail.com>
---
drivers/gpu/drm/virtio/virtgpu_drv.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/virtio/...
2019 Nov 09
2
[PATCH] drm/virtgpu: fix double unregistration
drm_put_dev also calls drm_dev_unregister, so dev will be unregistered
twice.
Replace it with drm_dev_put to fix it.
Signed-off-by: Chuhong Yuan <hslester96 at gmail.com>
---
drivers/gpu/drm/virtio/virtgpu_drv.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/virtio/...
2019 Nov 12
0
[PATCH] drm/virtgpu: fix double unregistration
On Sat, Nov 09, 2019 at 03:54:17PM +0800, Chuhong Yuan wrote:
> drm_put_dev also calls drm_dev_unregister, so dev will be unregistered
> twice.
> Replace it with drm_dev_put to fix it.
>
> Signed-off-by: Chuhong Yuan <hslester96 at gmail.com>
Nice catch, I'll apply.
Since this is so confusing, we actually have a todo to remove drm_put_dev
completel...
2018 Jul 05
4
[PATCH 0/2] drm/nouveau: Fix panic on nouveau unload.
...IP: 0010:sysfs_remove_group+0x76/0x80
Call Trace:
device_del+0x56/0x350
? down_write+0xe/0x40
device_unregister+0x16/0x60
nouveau_backlight_exit+0x4a/0x60 [nouveau]
nouveau_display_destroy+0x29/0x80 [nouveau]
nouveau_drm_unload+0x61/0xd0 [nouveau]
drm_dev_unregister+0x3f/0xe0 [drm]
drm_put_dev+0x27/0x50 [drm]
nouveau_drm_device_remove+0x47/0x70 [nouveau]
pci_device_remove+0x3b/0xb0
device_release_driver_internal+0x180/0x250
driver_detach+0x32/0x5f
bus_remove_driver+0x74/0xc6
pci_unregister_driver+0x22/0xa0
nouveau_drm_exit+0x15/0x16b [nouveau]
I don't beleive them to b...
2018 Jul 17
2
[PATCH 0/2] drm/nouveau: Fix panic on nouveau unload.
...+0x56/0x350
>> ? down_write+0xe/0x40
>> device_unregister+0x16/0x60
>> nouveau_backlight_exit+0x4a/0x60 [nouveau]
>> nouveau_display_destroy+0x29/0x80 [nouveau]
>> nouveau_drm_unload+0x61/0xd0 [nouveau]
>> drm_dev_unregister+0x3f/0xe0 [drm]
>> drm_put_dev+0x27/0x50 [drm]
>> nouveau_drm_device_remove+0x47/0x70 [nouveau]
>> pci_device_remove+0x3b/0xb0
>> device_release_driver_internal+0x180/0x250
>> driver_detach+0x32/0x5f
>> bus_remove_driver+0x74/0xc6
>> pci_unregister_driver+0x22/0xa0
>> nouve...
2018 Feb 17
3
[PATCH] drm/nouveau/bl: Fix oops on driver unbind
..._init(). Stacktrace for posterity:
BUG: unable to handle kernel NULL pointer dereference at 0000000000000010
IP: nouveau_backlight_exit+0x2b/0x70 [nouveau]
nouveau_display_destroy+0x29/0x80 [nouveau]
nouveau_drm_unload+0x65/0xe0 [nouveau]
drm_dev_unregister+0x3c/0xe0 [drm]
drm_put_dev+0x2e/0x60 [drm]
nouveau_drm_device_remove+0x47/0x70 [nouveau]
pci_device_remove+0x36/0xb0
device_release_driver_internal+0x157/0x220
driver_detach+0x39/0x70
bus_remove_driver+0x51/0xd0
pci_unregister_driver+0x2a/0xa0
nouveau_drm_exit+0x15/0xfb0 [nouveau]
SyS_delete_m...
2014 Jan 30
3
[PATCH] drm/nouveau: set irq_enabled manually
...ly won't cause issues until a
* better fix is found - assuming there is one...
@@ -475,6 +477,7 @@ nouveau_drm_remove(struct pci_dev *pdev)
struct nouveau_drm *drm = nouveau_drm(dev);
struct nouveau_object *device;
+ dev->irq_enabled = false;
device = drm->client.base.device;
drm_put_dev(dev);
--
1.8.3.2
2018 Feb 19
0
[PATCH] drm/nouveau/bl: Fix oops on driver unbind
...>
> BUG: unable to handle kernel NULL pointer dereference at 0000000000000010
> IP: nouveau_backlight_exit+0x2b/0x70 [nouveau]
> nouveau_display_destroy+0x29/0x80 [nouveau]
> nouveau_drm_unload+0x65/0xe0 [nouveau]
> drm_dev_unregister+0x3c/0xe0 [drm]
> drm_put_dev+0x2e/0x60 [drm]
> nouveau_drm_device_remove+0x47/0x70 [nouveau]
> pci_device_remove+0x36/0xb0
> device_release_driver_internal+0x157/0x220
> driver_detach+0x39/0x70
> bus_remove_driver+0x51/0xd0
> pci_unregister_driver+0x2a/0xa0
> nouveau_drm_exit+0x...
2018 Jul 17
0
[PATCH 0/2] drm/nouveau: Fix panic on nouveau unload.
...all Trace:
> device_del+0x56/0x350
> ? down_write+0xe/0x40
> device_unregister+0x16/0x60
> nouveau_backlight_exit+0x4a/0x60 [nouveau]
> nouveau_display_destroy+0x29/0x80 [nouveau]
> nouveau_drm_unload+0x61/0xd0 [nouveau]
> drm_dev_unregister+0x3f/0xe0 [drm]
> drm_put_dev+0x27/0x50 [drm]
> nouveau_drm_device_remove+0x47/0x70 [nouveau]
> pci_device_remove+0x3b/0xb0
> device_release_driver_internal+0x180/0x250
> driver_detach+0x32/0x5f
> bus_remove_driver+0x74/0xc6
> pci_unregister_driver+0x22/0xa0
> nouveau_drm_exit+0x15/0x16b [nouv...
2019 Sep 13
2
[PATCH 8/8] drm/vram: drop DRM_VRAM_MM_FILE_OPERATIONS
...d *arg)
{
diff --git a/drivers/gpu/drm/mgag200/mgag200_drv.c b/drivers/gpu/drm/mgag200/mgag200_drv.c
index 4f9df3b93598..397f8b0a9af8 100644
--- a/drivers/gpu/drm/mgag200/mgag200_drv.c
+++ b/drivers/gpu/drm/mgag200/mgag200_drv.c
@@ -58,10 +58,7 @@ static void mga_pci_remove(struct pci_dev *pdev)
drm_put_dev(dev);
}
-static const struct file_operations mgag200_driver_fops = {
- .owner = THIS_MODULE,
- DRM_VRAM_MM_FILE_OPERATIONS
-};
+DEFINE_DRM_GEM_FOPS(mgag200_driver_fops);
static struct drm_driver driver = {
.driver_features = DRIVER_GEM | DRIVER_MODESET,
diff --git a/drivers/gpu/drm/vboxvide...
2019 Sep 13
2
[PATCH 8/8] drm/vram: drop DRM_VRAM_MM_FILE_OPERATIONS
...d *arg)
{
diff --git a/drivers/gpu/drm/mgag200/mgag200_drv.c b/drivers/gpu/drm/mgag200/mgag200_drv.c
index 4f9df3b93598..397f8b0a9af8 100644
--- a/drivers/gpu/drm/mgag200/mgag200_drv.c
+++ b/drivers/gpu/drm/mgag200/mgag200_drv.c
@@ -58,10 +58,7 @@ static void mga_pci_remove(struct pci_dev *pdev)
drm_put_dev(dev);
}
-static const struct file_operations mgag200_driver_fops = {
- .owner = THIS_MODULE,
- DRM_VRAM_MM_FILE_OPERATIONS
-};
+DEFINE_DRM_GEM_FOPS(mgag200_driver_fops);
static struct drm_driver driver = {
.driver_features = DRIVER_GEM | DRIVER_MODESET,
diff --git a/drivers/gpu/drm/vboxvide...
2018 Jul 17
1
[PATCH 0/2] drm/nouveau: Fix panic on nouveau unload.
...device_del+0x51/0x350
[ 202.510755] device_unregister+0x9/0x20
[ 202.510766] nouveau_backlight_exit+0x45/0x60 [nouveau]
[ 202.510775] nouveau_display_destroy+0x24/0x70 [nouveau]
[ 202.510784] nouveau_drm_unload+0x66/0xd0 [nouveau]
[ 202.510786] drm_dev_unregister+0x3a/0xe0
[ 202.510787] drm_put_dev+0x22/0x40
[ 202.510796] nouveau_drm_device_remove+0x42/0x70 [nouveau]
[ 202.510798] pci_device_remove+0x36/0xb0
[ 202.510800] device_release_driver_internal+0x155/0x220
[ 202.510802] driver_detach+0x32/0x70
[ 202.510803] bus_remove_driver+0x47/0xa0
[ 202.510804] pci_unregister_driver+0x...
2019 Aug 08
0
[PATCH v4 12/17] drm: drop DRM_VRAM_MM_FILE_OPERATIONS
...d *arg)
{
diff --git a/drivers/gpu/drm/mgag200/mgag200_drv.c b/drivers/gpu/drm/mgag200/mgag200_drv.c
index afd9119b6cf1..684a324990d9 100644
--- a/drivers/gpu/drm/mgag200/mgag200_drv.c
+++ b/drivers/gpu/drm/mgag200/mgag200_drv.c
@@ -58,10 +58,7 @@ static void mga_pci_remove(struct pci_dev *pdev)
drm_put_dev(dev);
}
-static const struct file_operations mgag200_driver_fops = {
- .owner = THIS_MODULE,
- DRM_VRAM_MM_FILE_OPERATIONS
-};
+DEFINE_DRM_GEM_FOPS(mgag200_driver_fops);
static struct drm_driver driver = {
.driver_features = DRIVER_GEM | DRIVER_MODESET,
diff --git a/drivers/gpu/drm/vboxvide...
2019 Oct 16
0
[PATCH v4 11/11] drm/vram: drop DRM_VRAM_MM_FILE_OPERATIONS
...d *arg)
{
diff --git a/drivers/gpu/drm/mgag200/mgag200_drv.c b/drivers/gpu/drm/mgag200/mgag200_drv.c
index 4f9df3b93598..397f8b0a9af8 100644
--- a/drivers/gpu/drm/mgag200/mgag200_drv.c
+++ b/drivers/gpu/drm/mgag200/mgag200_drv.c
@@ -58,10 +58,7 @@ static void mga_pci_remove(struct pci_dev *pdev)
drm_put_dev(dev);
}
-static const struct file_operations mgag200_driver_fops = {
- .owner = THIS_MODULE,
- DRM_VRAM_MM_FILE_OPERATIONS
-};
+DEFINE_DRM_GEM_FOPS(mgag200_driver_fops);
static struct drm_driver driver = {
.driver_features = DRIVER_GEM | DRIVER_MODESET,
diff --git a/drivers/gpu/drm/vboxvide...
2019 Sep 17
0
[PATCH v2 11/11] drm/vram: drop DRM_VRAM_MM_FILE_OPERATIONS
...d *arg)
{
diff --git a/drivers/gpu/drm/mgag200/mgag200_drv.c b/drivers/gpu/drm/mgag200/mgag200_drv.c
index 4f9df3b93598..397f8b0a9af8 100644
--- a/drivers/gpu/drm/mgag200/mgag200_drv.c
+++ b/drivers/gpu/drm/mgag200/mgag200_drv.c
@@ -58,10 +58,7 @@ static void mga_pci_remove(struct pci_dev *pdev)
drm_put_dev(dev);
}
-static const struct file_operations mgag200_driver_fops = {
- .owner = THIS_MODULE,
- DRM_VRAM_MM_FILE_OPERATIONS
-};
+DEFINE_DRM_GEM_FOPS(mgag200_driver_fops);
static struct drm_driver driver = {
.driver_features = DRIVER_GEM | DRIVER_MODESET,
diff --git a/drivers/gpu/drm/vboxvide...
2019 Sep 19
0
[PATCH v3 11/11] drm/vram: drop DRM_VRAM_MM_FILE_OPERATIONS
...d *arg)
{
diff --git a/drivers/gpu/drm/mgag200/mgag200_drv.c b/drivers/gpu/drm/mgag200/mgag200_drv.c
index 4f9df3b93598..397f8b0a9af8 100644
--- a/drivers/gpu/drm/mgag200/mgag200_drv.c
+++ b/drivers/gpu/drm/mgag200/mgag200_drv.c
@@ -58,10 +58,7 @@ static void mga_pci_remove(struct pci_dev *pdev)
drm_put_dev(dev);
}
-static const struct file_operations mgag200_driver_fops = {
- .owner = THIS_MODULE,
- DRM_VRAM_MM_FILE_OPERATIONS
-};
+DEFINE_DRM_GEM_FOPS(mgag200_driver_fops);
static struct drm_driver driver = {
.driver_features = DRIVER_GEM | DRIVER_MODESET,
diff --git a/drivers/gpu/drm/vboxvide...
2018 Oct 07
0
Device release NULL pointer dereference
...a0 [ttm]
ttm_bo_evict+0x171/0x350 [ttm]
? drm_mm_remove_node+0xbe/0x360 [drm]
ttm_mem_evict_first+0x18d/0x210 [ttm]
ttm_bo_force_list_clean+0xa1/0x170 [ttm]
ttm_bo_clean_mm+0x89/0xf0 [ttm]
nouveau_ttm_fini+0x2b/0xc0 [nouveau]
nouveau_drm_unload+0x7b/0xd0 [nouveau]
drm_dev_unregister+0x3f/0xd0 [drm]
drm_put_dev+0x27/0x40 [drm]
nouveau_drm_device_remove+0x47/0x70 [nouveau]
pci_device_remove+0x3b/0xb0
device_release_driver_internal+0x182/0x250
pci_stop_bus_device+0x7f/0xa0
pci_stop_and_remove_bus_device_locked+0x16/0x30
remove_store+0x75/0x90
kernfs_fop_write+0x10f/0x190
vfs_write+0xad/0x1a0
ksys_write+0x52...
2018 Dec 07
2
next/master boot bisection: Oops in nouveau driver on jetson-tk1
...t pci_dev *pdev = dev->pdev;
struct nouveau_drm *drm = nouveau_drm(dev);
struct nvkm_client *client;
struct nvkm_device *device;
+ drm_dev_unregister(dev);
+
dev->irq_enabled = false;
client = nvxx_client(&drm->client.base);
device = nvkm_device_find(client->device);
- drm_put_dev(dev);
+ nouveau_drm_device_fini(dev);
+ pci_disable_device(pdev);
+ drm_dev_put(dev);
nvkm_device_del(&device);
}
@@ -1020,8 +1051,6 @@ driver_stub = {
DRIVER_GEM | DRIVER_MODESET | DRIVER_PRIME | DRIVER_RENDER |
DRIVER_KMS_LEGACY_CONTEXT,
- .load = nouveau_drm_load,
- .unload =...
2019 Sep 13
0
[PATCH 8/8] drm/vram: drop DRM_VRAM_MM_FILE_OPERATIONS
...rivers/gpu/drm/mgag200/mgag200_drv.c b/drivers/gpu/drm/mgag200/mgag200_drv.c
> index 4f9df3b93598..397f8b0a9af8 100644
> --- a/drivers/gpu/drm/mgag200/mgag200_drv.c
> +++ b/drivers/gpu/drm/mgag200/mgag200_drv.c
> @@ -58,10 +58,7 @@ static void mga_pci_remove(struct pci_dev *pdev)
> drm_put_dev(dev);
> }
>
> -static const struct file_operations mgag200_driver_fops = {
> - .owner = THIS_MODULE,
> - DRM_VRAM_MM_FILE_OPERATIONS
> -};
> +DEFINE_DRM_GEM_FOPS(mgag200_driver_fops);
>
> static struct drm_driver driver = {
> .driver_features = DRIVER_GEM | DRI...
2018 Jan 12
3
[Bug 104609] New: [G96, 9500 GT] Removing nouveau module results in BUG: unable to handle kernel NULL pointer dereference at 00000000000000b8
...466017.592089] CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
[466017.592089] CR2: 00000000000000b8 CR3: 0000000029b5e000 CR4:
00000000000006e0
[466017.592089] Call Trace:
[466017.592089] nouveau_drm_unload+0x37/0xd0 [nouveau]
[466017.592089] drm_dev_unregister+0x3c/0xe0 [drm]
[466017.592089] drm_put_dev+0x2e/0x60 [drm]
[466017.592089] nouveau_drm_device_remove+0x44/0x70 [nouveau]
[466017.592089] pci_device_remove+0x36/0xb0
[466017.592089] device_release_driver_internal+0x157/0x210
[466017.592089] driver_detach+0x39/0x70
[466017.592089] bus_remove_driver+0x51/0xd0
[466017.592089] pci_unregist...