Displaying 20 results from an estimated 74 matches for "drm_open".
2018 Jul 03
0
[PATCH 1/2] drm/nouveau: Fix runtime PM leak in drm_open()
...-
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
index 0452b18d36b9..0f668e275ee1 100644
--- a/drivers/gpu/drm/nouveau/nouveau_drm.c
+++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
@@ -919,8 +919,10 @@ nouveau_drm_open(struct drm_device *dev, struct drm_file *fpriv)
get_task_comm(tmpname, current);
snprintf(name, sizeof(name), "%s[%d]", tmpname, pid_nr(fpriv->pid));
- if (!(cli = kzalloc(sizeof(*cli), GFP_KERNEL)))
- return ret;
+ if (!(cli = kzalloc(sizeof(*cli), GFP_KERNEL))) {
+ ret = -ENO...
2018 Jul 12
0
[PATCH v2 1/3] drm/nouveau: Fix runtime PM leak in drm_open()
...-
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/drivers/gpu/drm/nouveau/nouveau_drm.c b/drivers/gpu/drm/nouveau/nouveau_drm.c
index 0452b18d36b9..0f668e275ee1 100644
--- a/drivers/gpu/drm/nouveau/nouveau_drm.c
+++ b/drivers/gpu/drm/nouveau/nouveau_drm.c
@@ -919,8 +919,10 @@ nouveau_drm_open(struct drm_device *dev, struct drm_file *fpriv)
get_task_comm(tmpname, current);
snprintf(name, sizeof(name), "%s[%d]", tmpname, pid_nr(fpriv->pid));
- if (!(cli = kzalloc(sizeof(*cli), GFP_KERNEL)))
- return ret;
+ if (!(cli = kzalloc(sizeof(*cli), GFP_KERNEL))) {
+ ret = -ENO...
2019 May 06
1
[PATCH v4 12/19] drm/bochs: Convert bochs driver to VRAM MM
Hi,
> static const struct file_operations bochs_fops = {
> .owner = THIS_MODULE,
> - .open = drm_open,
> - .release = drm_release,
> - .unlocked_ioctl = drm_ioctl,
> - .compat_ioctl = drm_compat_ioctl,
> - .poll = drm_poll,
> - .read = drm_read,
> .llseek = no_llseek,
> - .mmap = bochs_mmap,
> + DRM_VRAM_MM_FILE_OPERATIONS
> };
What about llseek? I think...
2017 Mar 02
2
[Bug 100035] New: nouveau runtime pm causes soft lockups and hangs during boot
...pci_restore_standard_config+0x40/0x40
[ 56.593384] rpm_callback+0x24/0x80
[ 56.593385] ? pci_restore_standard_config+0x40/0x40
[ 56.593385] rpm_resume+0x47d/0x680
[ 56.593400] ? i915_gem_timeline_init+0xe/0x10 [i915]
[ 56.593401] __pm_runtime_resume+0x4f/0x80
[ 56.593415] nouveau_drm_open+0x3b/0x1b0 [nouveau]
[ 56.593417] ? security_capable+0x48/0x60
[ 56.593423] drm_open+0x205/0x3f0 [drm]
[ 56.593428] drm_stub_open+0xb6/0x110 [drm]
[ 56.593429] chrdev_open+0xbf/0x1b0
[ 56.593431] do_dentry_open+0x1e4/0x310
[ 56.593432] ? cdev_put+0x30/0x30
[ 56.593433] vfs_open...
2020 Sep 23
1
[PATCH v3 03/22] drm/etnaviv: Introduce GEM object functions
...ERY_SIG, pm_query_sig, DRM_RENDER_ALLOW),
};
-static const struct vm_operations_struct vm_ops = {
- .fault = etnaviv_gem_fault,
- .open = drm_gem_vm_open,
- .close = drm_gem_vm_close,
-};
-
static const struct file_operations fops = {
.owner = THIS_MODULE,
.open = drm_open,
@@ -490,16 +484,9 @@ static struct drm_driver etnaviv_drm_driver = {
.driver_features = DRIVER_GEM | DRIVER_RENDER,
.open = etnaviv_open,
.postclose = etnaviv_postclose,
- .gem_free_object_unlocked = etnaviv_gem_free_object,
- .gem_vm_ops = &vm_ops,
....
2024 Aug 07
8
[PATCH 0/8] drm/{amdgpu,nouveau}: Remove old fbdev hooks
After switching all drivers' fbdev emulation to DRM client, the
old fbdev hooks are now obsolete. Only amgdpu and nouveau still use
them in a several places. Remove the hooks from the drivers and the
DRM core.
The series would ideally be merged at once via drm-misc-next.
Thomas Zimmermann (8):
drm/fbdev-helper: Do delayed switcheroo in lastclose helper
drm/amdgpu: Do not set struct
2019 Aug 08
0
[PATCH v4 17/17] drm/qxl: use DEFINE_DRM_GEM_FOPS()
...pu/drm/qxl/qxl_drv.c
index 2fb1641c817e..4853082ba924 100644
--- a/drivers/gpu/drm/qxl/qxl_drv.c
+++ b/drivers/gpu/drm/qxl/qxl_drv.c
@@ -132,15 +132,7 @@ qxl_pci_remove(struct pci_dev *pdev)
drm_dev_put(dev);
}
-static const struct file_operations qxl_fops = {
- .owner = THIS_MODULE,
- .open = drm_open,
- .release = drm_release,
- .unlocked_ioctl = drm_ioctl,
- .poll = drm_poll,
- .read = drm_read,
- .mmap = drm_gem_mmap,
-};
+DEFINE_DRM_GEM_FOPS(qxl_fops);
static int qxl_drm_freeze(struct drm_device *dev)
{
--
2.18.1
2019 Oct 17
0
[PATCH 4/5] drm/qxl: use DEFINE_DRM_GEM_FOPS()
...pu/drm/qxl/qxl_drv.c
index 65464630ac98..1d601f57a6ba 100644
--- a/drivers/gpu/drm/qxl/qxl_drv.c
+++ b/drivers/gpu/drm/qxl/qxl_drv.c
@@ -150,15 +150,7 @@ qxl_pci_remove(struct pci_dev *pdev)
drm_dev_put(dev);
}
-static const struct file_operations qxl_fops = {
- .owner = THIS_MODULE,
- .open = drm_open,
- .release = drm_release,
- .unlocked_ioctl = drm_ioctl,
- .poll = drm_poll,
- .read = drm_read,
- .mmap = drm_gem_mmap,
-};
+DEFINE_DRM_GEM_FOPS(qxl_fops);
static int qxl_drm_freeze(struct drm_device *dev)
{
--
2.18.1
2019 Jun 20
0
[PATCH 3/3] drm: drop DEFINE_DRM_GEM_SHMEM_FOPS
...already marked as static - if you need a
- * non-static version of this you're probably doing it wrong and will break the
- * THIS_MODULE reference by accident.
- */
-#define DEFINE_DRM_GEM_SHMEM_FOPS(name) \
- static const struct file_operations name = {\
- .owner = THIS_MODULE,\
- .open = drm_open,\
- .release = drm_release,\
- .unlocked_ioctl = drm_ioctl,\
- .compat_ioctl = drm_compat_ioctl,\
- .poll = drm_poll,\
- .read = drm_read,\
- .llseek = noop_llseek,\
- .mmap = drm_gem_mmap, \
- }
-
struct drm_gem_shmem_object *drm_gem_shmem_create(struct drm_device *dev, size_t size);...
2018 Jul 03
3
[PATCH 0/2] drm/nouveau: Fix runtime PM leaks
One very easy to trigger runtime PM leak, along with a rare never before
seen runtime PM leak!
Lyude Paul (2):
drm/nouveau: Fix runtime PM leak in drm_open()
drm/nouveau: Fix runtime PM leak in nv50_disp_atomic_commit()
drivers/gpu/drm/nouveau/dispnv50/disp.c | 2 +-
drivers/gpu/drm/nouveau/nouveau_drm.c | 6 ++++--
2 files changed, 5 insertions(+), 3 deletions(-)
--
2.17.1
2020 Aug 13
0
[PATCH 10/20] drm/omapdrm: Introduce GEM object functions
...drm_device *dev, struct drm_file *file)
return 0;
}
-static const struct vm_operations_struct omap_gem_vm_ops = {
- .fault = omap_gem_fault,
- .open = drm_gem_vm_open,
- .close = drm_gem_vm_close,
-};
-
static const struct file_operations omapdriver_fops = {
.owner = THIS_MODULE,
.open = drm_open,
@@ -549,10 +543,7 @@ static struct drm_driver omap_drm_driver = {
#endif
.prime_handle_to_fd = drm_gem_prime_handle_to_fd,
.prime_fd_to_handle = drm_gem_prime_fd_to_handle,
- .gem_prime_export = omap_gem_prime_export,
.gem_prime_import = omap_gem_prime_import,
- .gem_free_object_unlocked =...
2020 Sep 15
0
[PATCH v2 08/21] drm/msm: Introduce GEM object funcs
...m_ioctl_submitqueue_query, DRM_RENDER_ALLOW),
};
-static const struct vm_operations_struct vm_ops = {
- .fault = msm_gem_fault,
- .open = drm_gem_vm_open,
- .close = drm_gem_vm_close,
-};
-
static const struct file_operations fops = {
.owner = THIS_MODULE,
.open = drm_open,
@@ -1009,18 +1003,11 @@ static struct drm_driver msm_driver = {
.irq_preinstall = msm_irq_preinstall,
.irq_postinstall = msm_irq_postinstall,
.irq_uninstall = msm_irq_uninstall,
- .gem_free_object_unlocked = msm_gem_free_object,
- .gem_vm_ops = &vm_ops,
.dumb_create...
2015 Mar 30
0
[Bug 82714] [G84] nouveau fails to properly initialize GPU
...y just modprobing nouveau.
Starting Xorg on top of it (though while having other Xorg running on radeon,
but from local linux console) gets my a stuck Xorg:
[<ffffffff815704ac>] rpm_resume+0x18c/0x5c0
[<ffffffff81570928>] __pm_runtime_resume+0x48/0x70
[<ffffffffa00914af>] nouveau_drm_open+0x3f/0x230 [nouveau]
[<ffffffff8144123d>] drm_open+0x1ad/0x4b0
[<ffffffff81447711>] drm_stub_open+0xb1/0x130
[<ffffffff811c6371>] chrdev_open+0xb1/0x190
[<ffffffff811bf702>] do_dentry_open.isra.18+0x1f2/0x320
[<ffffffff811bf8a1>] vfs_open+0x41/0x50
[<ffffffff811cd05...
2019 Sep 13
2
[PATCH 8/8] drm/vram: drop DRM_VRAM_MM_FILE_OPERATIONS
...acro to initialize
- * &struct file_operations with default functions.
- */
-#define DRM_VRAM_MM_FILE_OPERATIONS \
- .llseek = no_llseek, \
- .read = drm_read, \
- .poll = drm_poll, \
- .unlocked_ioctl = drm_ioctl, \
- .compat_ioctl = drm_compat_ioctl, \
- .mmap = drm_gem_mmap, \
- .open = drm_open, \
- .release = drm_release \
-
-
#endif
diff --git a/include/drm/drm_vram_mm_helper.h b/include/drm/drm_vram_mm_helper.h
new file mode 100644
index 000000000000..a47b49adba62
--- /dev/null
+++ b/include/drm/drm_vram_mm_helper.h
@@ -0,0 +1,82 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+...
2019 Sep 13
2
[PATCH 8/8] drm/vram: drop DRM_VRAM_MM_FILE_OPERATIONS
...acro to initialize
- * &struct file_operations with default functions.
- */
-#define DRM_VRAM_MM_FILE_OPERATIONS \
- .llseek = no_llseek, \
- .read = drm_read, \
- .poll = drm_poll, \
- .unlocked_ioctl = drm_ioctl, \
- .compat_ioctl = drm_compat_ioctl, \
- .mmap = drm_gem_mmap, \
- .open = drm_open, \
- .release = drm_release \
-
-
#endif
diff --git a/include/drm/drm_vram_mm_helper.h b/include/drm/drm_vram_mm_helper.h
new file mode 100644
index 000000000000..a47b49adba62
--- /dev/null
+++ b/include/drm/drm_vram_mm_helper.h
@@ -0,0 +1,82 @@
+/* SPDX-License-Identifier: GPL-2.0-or-later */
+
+...
2020 Sep 15
0
[PATCH v2 03/21] drm/etnaviv: Introduce GEM object functions
...ERY_SIG, pm_query_sig, DRM_RENDER_ALLOW),
};
-static const struct vm_operations_struct vm_ops = {
- .fault = etnaviv_gem_fault,
- .open = drm_gem_vm_open,
- .close = drm_gem_vm_close,
-};
-
static const struct file_operations fops = {
.owner = THIS_MODULE,
.open = drm_open,
@@ -490,16 +484,9 @@ static struct drm_driver etnaviv_drm_driver = {
.driver_features = DRIVER_GEM | DRIVER_RENDER,
.open = etnaviv_open,
.postclose = etnaviv_postclose,
- .gem_free_object_unlocked = etnaviv_gem_free_object,
- .gem_vm_ops = &vm_ops,
....
2013 Sep 08
0
3.12rc1-pre Nouveau? oops
...m_callback+0x36/0x80
> [<ffffffff8137b768>] ? rpm_callback+0x28/0x90
> [<ffffffff8137c48d>] ? rpm_resume+0x39d/0x570
> [<ffffffff81071483>] ? __wake_up+0x43/0x70
> [<ffffffff8137c8f8>] ? __pm_runtime_resume+0x48/0x70
> [<ffffffffa020e5a2>] ? nouveau_drm_open+0x42/0x1d0 [nouveau]
> [<ffffffff811bb858>] ? ext4_da_write_end+0xa8/0x2b0
> [<ffffffff811ef559>] ? jbd2_journal_stop+0x1d9/0x2c0
> [<ffffffff8124a56f>] ? apparmor_capable+0x1f/0x90
> [<ffffffffa00c5cab>] ? drm_open+0x28b/0x6e0 [drm]
> [<ffffffffa00c62...
2019 Aug 08
1
[PATCH v4 07/17] drm/shmem: drop DEFINE_DRM_GEM_SHMEM_FOPS
...already marked as static - if you need a
- * non-static version of this you're probably doing it wrong and will break the
- * THIS_MODULE reference by accident.
- */
-#define DEFINE_DRM_GEM_SHMEM_FOPS(name) \
- static const struct file_operations name = {\
- .owner = THIS_MODULE,\
- .open = drm_open,\
- .release = drm_release,\
- .unlocked_ioctl = drm_ioctl,\
- .compat_ioctl = drm_compat_ioctl,\
- .poll = drm_poll,\
- .read = drm_read,\
- .llseek = noop_llseek,\
- .mmap = drm_gem_mmap, \
- }
-
struct drm_gem_shmem_object *drm_gem_shmem_create(struct drm_device *dev, size_t size);...
2019 Aug 08
0
[PATCH v4 12/17] drm: drop DRM_VRAM_MM_FILE_OPERATIONS
...acro to initialize
- * &struct file_operations with default functions.
- */
-#define DRM_VRAM_MM_FILE_OPERATIONS \
- .llseek = no_llseek, \
- .read = drm_read, \
- .poll = drm_poll, \
- .unlocked_ioctl = drm_ioctl, \
- .compat_ioctl = drm_compat_ioctl, \
- .mmap = drm_gem_mmap, \
- .open = drm_open, \
- .release = drm_release \
-
#endif
diff --git a/drivers/gpu/drm/ast/ast_drv.c b/drivers/gpu/drm/ast/ast_drv.c
index 6ed6ff49efc0..358d2a34b4e6 100644
--- a/drivers/gpu/drm/ast/ast_drv.c
+++ b/drivers/gpu/drm/ast/ast_drv.c
@@ -201,10 +201,7 @@ static struct pci_driver ast_pci_driver = {
.driv...
2020 Sep 23
0
[PATCH v3 03/22] drm/etnaviv: Introduce GEM object functions
...> -static const struct vm_operations_struct vm_ops = {
> - .fault = etnaviv_gem_fault,
> - .open = drm_gem_vm_open,
> - .close = drm_gem_vm_close,
> -};
> -
> static const struct file_operations fops = {
> .owner = THIS_MODULE,
> .open = drm_open,
> @@ -490,16 +484,9 @@ static struct drm_driver etnaviv_drm_driver = {
> .driver_features = DRIVER_GEM | DRIVER_RENDER,
> .open = etnaviv_open,
> .postclose = etnaviv_postclose,
> - .gem_free_object_unlocked = etnaviv_gem_free_object,
> - .gem_vm_...