2022-12-20 20:40:19

by Siddh Raman Pant

[permalink] [raw]
Subject: [PATCH 00/10] drm: Remove usage of deprecated DRM_* macros

This patchset aims to remove usages of deprecated DRM_* macros from the
files residing in drivers/gpu/drm root.

In process, I found out that NULL as first argument of drm_dbg_* wasn't
working, but it was listed as the alternative in deprecation comment,
so I fixed that before removing usages of DRM_DEBUG_* macros.

This patchset should be applied in order as changes might be dependent.

Please review and let me know if any errors are there, and hopefully
this gets accepted.

Siddh Raman Pant (10):
drm: Remove usage of deprecated DRM_INFO
drm: Remove usage of deprecated DRM_NOTE
drm: Remove usage of deprecated DRM_ERROR
drm/print: Fix support for NULL as first argument of drm_dbg_*
drm: Remove usage of deprecated DRM_DEBUG
drm: Remove usage of deprecated DRM_DEBUG_DRIVER
drm: Remove usage of deprecated DRM_DEBUG_KMS
drm: Remove usage of deprecated DRM_DEBUG_PRIME
drm/drm_blend: Remove usage of deprecated DRM_DEBUG_ATOMIC
drm/drm_lease: Remove usage of deprecated DRM_DEBUG_LEASE

drivers/gpu/drm/drm_agpsupport.c | 4 +-
drivers/gpu/drm/drm_blend.c | 13 ++-
drivers/gpu/drm/drm_bridge.c | 8 +-
drivers/gpu/drm/drm_bufs.c | 122 ++++++++++++------------
drivers/gpu/drm/drm_client_modeset.c | 118 +++++++++++++----------
drivers/gpu/drm/drm_color_mgmt.c | 4 +-
drivers/gpu/drm/drm_connector.c | 28 +++---
drivers/gpu/drm/drm_context.c | 18 ++--
drivers/gpu/drm/drm_crtc.c | 36 ++++---
drivers/gpu/drm/drm_crtc_helper.c | 62 ++++++------
drivers/gpu/drm/drm_debugfs_crc.c | 8 +-
drivers/gpu/drm/drm_displayid.c | 6 +-
drivers/gpu/drm/drm_dma.c | 10 +-
drivers/gpu/drm/drm_drv.c | 28 +++---
drivers/gpu/drm/drm_edid.c | 17 ++--
drivers/gpu/drm/drm_file.c | 18 ++--
drivers/gpu/drm/drm_flip_work.c | 2 +-
drivers/gpu/drm/drm_framebuffer.c | 3 +-
drivers/gpu/drm/drm_gem.c | 7 +-
drivers/gpu/drm/drm_gem_dma_helper.c | 6 +-
drivers/gpu/drm/drm_gem_shmem_helper.c | 6 +-
drivers/gpu/drm/drm_hashtab.c | 10 +-
drivers/gpu/drm/drm_ioc32.c | 13 +--
drivers/gpu/drm/drm_ioctl.c | 24 ++---
drivers/gpu/drm/drm_irq.c | 4 +-
drivers/gpu/drm/drm_kms_helper_common.c | 2 +-
drivers/gpu/drm/drm_lease.c | 68 ++++++-------
drivers/gpu/drm/drm_legacy_misc.c | 4 +-
drivers/gpu/drm/drm_lock.c | 36 +++----
drivers/gpu/drm/drm_mipi_dbi.c | 19 ++--
drivers/gpu/drm/drm_mm.c | 8 +-
drivers/gpu/drm/drm_mode_config.c | 2 +-
drivers/gpu/drm/drm_mode_object.c | 6 +-
drivers/gpu/drm/drm_modes.c | 10 +-
drivers/gpu/drm/drm_modeset_helper.c | 2 +-
drivers/gpu/drm/drm_pci.c | 14 +--
drivers/gpu/drm/drm_plane.c | 46 ++++-----
drivers/gpu/drm/drm_probe_helper.c | 39 ++++----
drivers/gpu/drm/drm_rect.c | 4 +-
drivers/gpu/drm/drm_scatter.c | 19 ++--
drivers/gpu/drm/drm_syncobj.c | 2 +-
drivers/gpu/drm/drm_sysfs.c | 22 ++---
drivers/gpu/drm/drm_vm.c | 45 +++++----
include/drm/drm_print.h | 91 ++++++++++++++----
44 files changed, 549 insertions(+), 465 deletions(-)

--
2.35.1



2022-12-20 20:40:25

by Siddh Raman Pant

[permalink] [raw]
Subject: [PATCH 03/10] drm: Remove usage of deprecated DRM_ERROR

drm_print.h says DRM_ERROR is deprecated.
Thus, use newer printing macros drm_err() and pr_err().

Signed-off-by: Siddh Raman Pant <[email protected]>
---
drivers/gpu/drm/drm_bridge.c | 8 ++++----
drivers/gpu/drm/drm_bufs.c | 8 ++++----
drivers/gpu/drm/drm_client_modeset.c | 4 ++--
drivers/gpu/drm/drm_context.c | 4 ++--
drivers/gpu/drm/drm_crtc_helper.c | 8 ++++----
drivers/gpu/drm/drm_debugfs_crc.c | 3 ++-
drivers/gpu/drm/drm_drv.c | 16 ++++++++--------
drivers/gpu/drm/drm_flip_work.c | 2 +-
drivers/gpu/drm/drm_framebuffer.c | 3 ++-
drivers/gpu/drm/drm_gem.c | 2 +-
drivers/gpu/drm/drm_gem_dma_helper.c | 2 +-
drivers/gpu/drm/drm_hashtab.c | 4 ++--
drivers/gpu/drm/drm_lock.c | 16 ++++++++--------
drivers/gpu/drm/drm_mipi_dbi.c | 2 +-
drivers/gpu/drm/drm_mm.c | 8 ++++----
drivers/gpu/drm/drm_mode_config.c | 2 +-
drivers/gpu/drm/drm_modeset_helper.c | 2 +-
drivers/gpu/drm/drm_plane.c | 2 +-
drivers/gpu/drm/drm_scatter.c | 9 +++++----
drivers/gpu/drm/drm_vm.c | 2 +-
20 files changed, 55 insertions(+), 52 deletions(-)

diff --git a/drivers/gpu/drm/drm_bridge.c b/drivers/gpu/drm/drm_bridge.c
index 1545c50fd1c8..20a8cde70640 100644
--- a/drivers/gpu/drm/drm_bridge.c
+++ b/drivers/gpu/drm/drm_bridge.c
@@ -312,11 +312,11 @@ int drm_bridge_attach(struct drm_encoder *encoder, struct drm_bridge *bridge,
list_del(&bridge->chain_node);

#ifdef CONFIG_OF
- DRM_ERROR("failed to attach bridge %pOF to encoder %s: %d\n",
- bridge->of_node, encoder->name, ret);
+ drm_err(encoder->dev, "failed to attach bridge %pOF to encoder %s: %d\n",
+ bridge->of_node, encoder->name, ret);
#else
- DRM_ERROR("failed to attach bridge to encoder %s: %d\n",
- encoder->name, ret);
+ drm_err(encoder->dev, "failed to attach bridge to encoder %s: %d\n",
+ encoder->name, ret);
#endif

return ret;
diff --git a/drivers/gpu/drm/drm_bufs.c b/drivers/gpu/drm/drm_bufs.c
index fcca21e8efac..98aaf3379a3b 100644
--- a/drivers/gpu/drm/drm_bufs.c
+++ b/drivers/gpu/drm/drm_bufs.c
@@ -1474,15 +1474,15 @@ int drm_legacy_freebufs(struct drm_device *dev, void *data,
if (copy_from_user(&idx, &request->list[i], sizeof(idx)))
return -EFAULT;
if (idx < 0 || idx >= dma->buf_count) {
- DRM_ERROR("Index %d (of %d max)\n",
- idx, dma->buf_count - 1);
+ drm_err(dev, "Index %d (of %d max)\n",
+ idx, dma->buf_count - 1);
return -EINVAL;
}
idx = array_index_nospec(idx, dma->buf_count);
buf = dma->buflist[idx];
if (buf->file_priv != file_priv) {
- DRM_ERROR("Process %d freeing buffer not owned\n",
- task_pid_nr(current));
+ drm_err(dev, "Process %d freeing buffer not owned\n",
+ task_pid_nr(current));
return -EINVAL;
}
drm_legacy_free_buffer(dev, buf);
diff --git a/drivers/gpu/drm/drm_client_modeset.c b/drivers/gpu/drm/drm_client_modeset.c
index 2b76d4828c5f..c4517dea924e 100644
--- a/drivers/gpu/drm/drm_client_modeset.c
+++ b/drivers/gpu/drm/drm_client_modeset.c
@@ -812,7 +812,7 @@ int drm_client_modeset_probe(struct drm_client_dev *client, unsigned int width,
offsets = kcalloc(connector_count, sizeof(*offsets), GFP_KERNEL);
enabled = kcalloc(connector_count, sizeof(bool), GFP_KERNEL);
if (!crtcs || !modes || !enabled || !offsets) {
- DRM_ERROR("Memory allocation failed\n");
+ drm_err(client->dev, "Memory allocation failed\n");
ret = -ENOMEM;
goto out;
}
@@ -836,7 +836,7 @@ int drm_client_modeset_probe(struct drm_client_dev *client, unsigned int width,
offsets, enabled, width, height) &&
!drm_client_target_preferred(connectors, connector_count, modes,
offsets, enabled, width, height))
- DRM_ERROR("Unable to find initial modes\n");
+ drm_err(client->dev, "Unable to find initial modes\n");

DRM_DEBUG_KMS("picking CRTCs for %dx%d config\n",
width, height);
diff --git a/drivers/gpu/drm/drm_context.c b/drivers/gpu/drm/drm_context.c
index c6e6a3e7219a..f6d68fad8311 100644
--- a/drivers/gpu/drm/drm_context.c
+++ b/drivers/gpu/drm/drm_context.c
@@ -276,7 +276,7 @@ int drm_legacy_setsareactx(struct drm_device *dev, void *data,
static int drm_context_switch(struct drm_device * dev, int old, int new)
{
if (test_and_set_bit(0, &dev->context_flag)) {
- DRM_ERROR("Reentering -- FIXME\n");
+ drm_err(dev, "Reentering -- FIXME\n");
return -EBUSY;
}

@@ -307,7 +307,7 @@ static int drm_context_switch_complete(struct drm_device *dev,
dev->last_context = new; /* PRE/POST: This is the _only_ writer. */

if (!_DRM_LOCK_IS_HELD(file_priv->master->lock.hw_lock->lock)) {
- DRM_ERROR("Lock isn't held after context switch\n");
+ drm_err(dev, "Lock isn't held after context switch\n");
}

/* If a context switch is ever initiated
diff --git a/drivers/gpu/drm/drm_crtc_helper.c b/drivers/gpu/drm/drm_crtc_helper.c
index a209659a996c..d9599ea7058a 100644
--- a/drivers/gpu/drm/drm_crtc_helper.c
+++ b/drivers/gpu/drm/drm_crtc_helper.c
@@ -768,8 +768,8 @@ int drm_crtc_helper_set_config(struct drm_mode_set *set,
if (!drm_crtc_helper_set_mode(set->crtc, set->mode,
set->x, set->y,
save_set.fb)) {
- DRM_ERROR("failed to set mode on [CRTC:%d:%s]\n",
- set->crtc->base.id, set->crtc->name);
+ drm_err(dev, "failed to set mode on [CRTC:%d:%s]\n",
+ set->crtc->base.id, set->crtc->name);
set->crtc->primary->fb = save_set.fb;
ret = -EINVAL;
goto fail;
@@ -826,7 +826,7 @@ int drm_crtc_helper_set_config(struct drm_mode_set *set,
if (mode_changed &&
!drm_crtc_helper_set_mode(save_set.crtc, save_set.mode, save_set.x,
save_set.y, save_set.fb))
- DRM_ERROR("failed to restore config after modeset failure\n");
+ pr_err("failed to restore config after modeset failure\n");

kfree(save_connector_encoders);
kfree(save_encoder_crtcs);
@@ -996,7 +996,7 @@ void drm_helper_resume_force_mode(struct drm_device *dev)

/* Restoring the old config should never fail! */
if (ret == false)
- DRM_ERROR("failed to set mode on crtc %p\n", crtc);
+ drm_err(dev, "failed to set mode on crtc %p\n", crtc);

/* Turn off outputs that were already powered off */
if (drm_helper_choose_crtc_dpms(crtc)) {
diff --git a/drivers/gpu/drm/drm_debugfs_crc.c b/drivers/gpu/drm/drm_debugfs_crc.c
index bbc3bc4ba844..a59ef3f0e4a1 100644
--- a/drivers/gpu/drm/drm_debugfs_crc.c
+++ b/drivers/gpu/drm/drm_debugfs_crc.c
@@ -416,7 +416,8 @@ int drm_crtc_add_crc_entry(struct drm_crtc *crtc, bool has_frame,
spin_unlock_irqrestore(&crc->lock, flags);

if (!was_overflow)
- DRM_ERROR("Overflow of CRC buffer, userspace reads too slow.\n");
+ drm_err(crtc->dev,
+ "Overflow of CRC buffer, userspace reads too slow.\n");

return -ENOBUFS;
}
diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c
index bc98e4bcf2c1..d66c98243623 100644
--- a/drivers/gpu/drm/drm_drv.c
+++ b/drivers/gpu/drm/drm_drv.c
@@ -177,7 +177,7 @@ static int drm_minor_register(struct drm_device *dev, unsigned int type)
} else {
ret = drm_debugfs_init(minor, minor->index, drm_debugfs_root);
if (ret) {
- DRM_ERROR("DRM: Failed to initialize /sys/kernel/debug/dri.\n");
+ drm_err(dev, "DRM: Failed to initialize /sys/kernel/debug/dri.\n");
goto err_debugfs;
}
}
@@ -425,7 +425,7 @@ void drm_put_dev(struct drm_device *dev)
DRM_DEBUG("\n");

if (!dev) {
- DRM_ERROR("cleanup called no dev\n");
+ pr_err("cleanup called no dev\n");
return;
}

@@ -540,7 +540,7 @@ static struct inode *drm_fs_inode_new(void)

r = simple_pin_fs(&drm_fs_type, &drm_fs_mnt, &drm_fs_cnt);
if (r < 0) {
- DRM_ERROR("Cannot mount pseudo fs: %d\n", r);
+ pr_err("Cannot mount pseudo fs: %d\n", r);
return ERR_PTR(r);
}

@@ -609,7 +609,7 @@ static int drm_dev_init(struct drm_device *dev,
int ret;

if (!drm_core_init_complete) {
- DRM_ERROR("DRM core is not initialized\n");
+ pr_err("DRM core is not initialized\n");
return -ENODEV;
}

@@ -629,7 +629,7 @@ static int drm_dev_init(struct drm_device *dev,
if (drm_core_check_feature(dev, DRIVER_COMPUTE_ACCEL) &&
(drm_core_check_feature(dev, DRIVER_RENDER) ||
drm_core_check_feature(dev, DRIVER_MODESET))) {
- DRM_ERROR("DRM driver can't be both a compute acceleration and graphics driver\n");
+ drm_err(dev, "DRM driver can't be both a compute acceleration and graphics driver\n");
return -EINVAL;
}

@@ -652,7 +652,7 @@ static int drm_dev_init(struct drm_device *dev,
inode = drm_fs_inode_new();
if (IS_ERR(inode)) {
ret = PTR_ERR(inode);
- DRM_ERROR("Cannot allocate anonymous inode: %d\n", ret);
+ drm_err(dev, "Cannot allocate anonymous inode: %d\n", ret);
goto err;
}

@@ -683,7 +683,7 @@ static int drm_dev_init(struct drm_device *dev,
if (drm_core_check_feature(dev, DRIVER_GEM)) {
ret = drm_gem_init(dev);
if (ret) {
- DRM_ERROR("Cannot initialize graphics execution manager (GEM)\n");
+ drm_err(dev, "Cannot initialize graphics execution manager (GEM)\n");
goto err;
}
}
@@ -1094,7 +1094,7 @@ static int __init drm_core_init(void)

ret = drm_sysfs_init();
if (ret < 0) {
- DRM_ERROR("Cannot create DRM class: %d\n", ret);
+ pr_err("Cannot create DRM class: %d\n", ret);
goto error;
}

diff --git a/drivers/gpu/drm/drm_flip_work.c b/drivers/gpu/drm/drm_flip_work.c
index 060b753881a2..37976b8a5e2f 100644
--- a/drivers/gpu/drm/drm_flip_work.c
+++ b/drivers/gpu/drm/drm_flip_work.c
@@ -82,7 +82,7 @@ void drm_flip_work_queue(struct drm_flip_work *work, void *val)
if (task) {
drm_flip_work_queue_task(work, task);
} else {
- DRM_ERROR("%s could not allocate task!\n", work->name);
+ pr_err("%s could not allocate task!\n", work->name);
work->func(work, val);
}
}
diff --git a/drivers/gpu/drm/drm_framebuffer.c b/drivers/gpu/drm/drm_framebuffer.c
index 2dd97473ca10..5aea791f4341 100644
--- a/drivers/gpu/drm/drm_framebuffer.c
+++ b/drivers/gpu/drm/drm_framebuffer.c
@@ -1070,7 +1070,8 @@ static void legacy_remove_fb(struct drm_framebuffer *fb)

/* should turn off the crtc */
if (drm_crtc_force_disable(crtc))
- DRM_ERROR("failed to reset crtc %p when fb was deleted\n", crtc);
+ drm_err(dev, "failed to reset crtc %p when fb was deleted\n",
+ crtc);
}
}

diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c
index b8db675e7fb5..3c99610afc0a 100644
--- a/drivers/gpu/drm/drm_gem.c
+++ b/drivers/gpu/drm/drm_gem.c
@@ -101,7 +101,7 @@ drm_gem_init(struct drm_device *dev)
vma_offset_manager = drmm_kzalloc(dev, sizeof(*vma_offset_manager),
GFP_KERNEL);
if (!vma_offset_manager) {
- DRM_ERROR("out of memory\n");
+ drm_err(dev, "out of memory\n");
return -ENOMEM;
}

diff --git a/drivers/gpu/drm/drm_gem_dma_helper.c b/drivers/gpu/drm/drm_gem_dma_helper.c
index 1e658c448366..1ba551b0ab97 100644
--- a/drivers/gpu/drm/drm_gem_dma_helper.c
+++ b/drivers/gpu/drm/drm_gem_dma_helper.c
@@ -583,7 +583,7 @@ drm_gem_dma_prime_import_sg_table_vmap(struct drm_device *dev,

ret = dma_buf_vmap_unlocked(attach->dmabuf, &map);
if (ret) {
- DRM_ERROR("Failed to vmap PRIME buffer\n");
+ drm_err(dev, "Failed to vmap PRIME buffer\n");
return ERR_PTR(ret);
}

diff --git a/drivers/gpu/drm/drm_hashtab.c b/drivers/gpu/drm/drm_hashtab.c
index 60afa1865559..924bf36b18db 100644
--- a/drivers/gpu/drm/drm_hashtab.c
+++ b/drivers/gpu/drm/drm_hashtab.c
@@ -53,7 +53,7 @@ int drm_ht_create(struct drm_open_hash *ht, unsigned int order)
else
ht->table = vzalloc(array_size(size, sizeof(*ht->table)));
if (!ht->table) {
- DRM_ERROR("Out of memory for hash table\n");
+ pr_err("Out of memory for hash table\n");
return -ENOMEM;
}
return 0;
@@ -157,7 +157,7 @@ int drm_ht_just_insert_please(struct drm_open_hash *ht, struct drm_hash_item *it
} while(ret && (unshifted_key != first));

if (ret) {
- DRM_ERROR("Available key bit space exhausted\n");
+ pr_err("Available key bit space exhausted\n");
return -EINVAL;
}
return 0;
diff --git a/drivers/gpu/drm/drm_lock.c b/drivers/gpu/drm/drm_lock.c
index 1efbd5389d89..0bca8b175616 100644
--- a/drivers/gpu/drm/drm_lock.c
+++ b/drivers/gpu/drm/drm_lock.c
@@ -79,8 +79,8 @@ int drm_lock_take(struct drm_lock_data *lock_data,
if (_DRM_LOCKING_CONTEXT(old) == context) {
if (old & _DRM_LOCK_HELD) {
if (context != DRM_KERNEL_CONTEXT) {
- DRM_ERROR("%d holds heavyweight lock\n",
- context);
+ pr_err("%d holds heavyweight lock\n",
+ context);
}
return 0;
}
@@ -142,8 +142,8 @@ static int drm_legacy_lock_free(struct drm_lock_data *lock_data,
} while (prev != old);

if (_DRM_LOCK_IS_HELD(old) && _DRM_LOCKING_CONTEXT(old) != context) {
- DRM_ERROR("%d freed heavyweight lock held by %d\n",
- context, _DRM_LOCKING_CONTEXT(old));
+ pr_err("%d freed heavyweight lock held by %d\n",
+ context, _DRM_LOCKING_CONTEXT(old));
return 1;
}
wake_up_interruptible(&lock_data->lock_queue);
@@ -175,8 +175,8 @@ int drm_legacy_lock(struct drm_device *dev, void *data,
++file_priv->lock_count;

if (lock->context == DRM_KERNEL_CONTEXT) {
- DRM_ERROR("Process %d using kernel context %d\n",
- task_pid_nr(current), lock->context);
+ pr_err("Process %d using kernel context %d\n",
+ task_pid_nr(current), lock->context);
return -EINVAL;
}

@@ -263,8 +263,8 @@ int drm_legacy_unlock(struct drm_device *dev, void *data, struct drm_file *file_
return -EOPNOTSUPP;

if (lock->context == DRM_KERNEL_CONTEXT) {
- DRM_ERROR("Process %d using kernel context %d\n",
- task_pid_nr(current), lock->context);
+ pr_err("Process %d using kernel context %d\n",
+ task_pid_nr(current), lock->context);
return -EINVAL;
}

diff --git a/drivers/gpu/drm/drm_mipi_dbi.c b/drivers/gpu/drm/drm_mipi_dbi.c
index a6ac56580876..24af507bb687 100644
--- a/drivers/gpu/drm/drm_mipi_dbi.c
+++ b/drivers/gpu/drm/drm_mipi_dbi.c
@@ -527,7 +527,7 @@ int mipi_dbi_dev_init_with_formats(struct mipi_dbi_dev *dbidev,
drm_mode_copy(&dbidev->mode, mode);
ret = mipi_dbi_rotate_mode(&dbidev->mode, rotation);
if (ret) {
- DRM_ERROR("Illegal rotation value %u\n", rotation);
+ drm_err(drm, "Illegal rotation value %u\n", rotation);
return -EINVAL;
}

diff --git a/drivers/gpu/drm/drm_mm.c b/drivers/gpu/drm/drm_mm.c
index 8257f9d4f619..753ce00f4ee7 100644
--- a/drivers/gpu/drm/drm_mm.c
+++ b/drivers/gpu/drm/drm_mm.c
@@ -126,14 +126,14 @@ static void show_leaks(struct drm_mm *mm)

list_for_each_entry(node, drm_mm_nodes(mm), node_list) {
if (!node->stack) {
- DRM_ERROR("node [%08llx + %08llx]: unknown owner\n",
- node->start, node->size);
+ pr_err("node [%08llx + %08llx]: unknown owner\n",
+ node->start, node->size);
continue;
}

stack_depot_snprint(node->stack, buf, BUFSZ, 0);
- DRM_ERROR("node [%08llx + %08llx]: inserted at\n%s",
- node->start, node->size, buf);
+ pr_err("node [%08llx + %08llx]: inserted at\n%s",
+ node->start, node->size, buf);
}

kfree(buf);
diff --git a/drivers/gpu/drm/drm_mode_config.c b/drivers/gpu/drm/drm_mode_config.c
index 688c8afe0bf1..5dab605520b1 100644
--- a/drivers/gpu/drm/drm_mode_config.c
+++ b/drivers/gpu/drm/drm_mode_config.c
@@ -505,7 +505,7 @@ void drm_mode_config_cleanup(struct drm_device *dev)
if (WARN_ON(!list_empty(&dev->mode_config.connector_list))) {
drm_connector_list_iter_begin(dev, &conn_iter);
drm_for_each_connector_iter(connector, &conn_iter)
- DRM_ERROR("connector %s leaked!\n", connector->name);
+ drm_err(dev, "connector %s leaked!\n", connector->name);
drm_connector_list_iter_end(&conn_iter);
}

diff --git a/drivers/gpu/drm/drm_modeset_helper.c b/drivers/gpu/drm/drm_modeset_helper.c
index f858dfedf2cf..e26b0285dde6 100644
--- a/drivers/gpu/drm/drm_modeset_helper.c
+++ b/drivers/gpu/drm/drm_modeset_helper.c
@@ -235,7 +235,7 @@ int drm_mode_config_helper_resume(struct drm_device *dev)

ret = drm_atomic_helper_resume(dev, dev->mode_config.suspend_state);
if (ret)
- DRM_ERROR("Failed to resume (%d)\n", ret);
+ drm_err(dev, "Failed to resume (%d)\n", ret);
dev->mode_config.suspend_state = NULL;

drm_fb_helper_set_suspend_unlocked(dev->fb_helper, 0);
diff --git a/drivers/gpu/drm/drm_plane.c b/drivers/gpu/drm/drm_plane.c
index 33357629a7f5..a650f06e4cea 100644
--- a/drivers/gpu/drm/drm_plane.c
+++ b/drivers/gpu/drm/drm_plane.c
@@ -606,7 +606,7 @@ void drm_plane_force_disable(struct drm_plane *plane)
plane->old_fb = plane->fb;
ret = plane->funcs->disable_plane(plane, NULL);
if (ret) {
- DRM_ERROR("failed to disable plane with busy fb\n");
+ drm_err(plane->dev, "failed to disable plane with busy fb\n");
plane->old_fb = NULL;
return;
}
diff --git a/drivers/gpu/drm/drm_scatter.c b/drivers/gpu/drm/drm_scatter.c
index f4e6184d1877..5b0b2140d535 100644
--- a/drivers/gpu/drm/drm_scatter.c
+++ b/drivers/gpu/drm/drm_scatter.c
@@ -170,9 +170,10 @@ int drm_legacy_sg_alloc(struct drm_device *dev, void *data,
j++, tmp++) {
if (*tmp != 0xcafebabe && error == 0) {
error = 1;
- DRM_ERROR("Scatter allocation error, "
- "pagelist does not match "
- "virtual mapping\n");
+ drm_err(dev,
+ "Scatter allocation error, "
+ "pagelist does not match "
+ "virtual mapping\n");
}
}
tmp = page_address(entry->pagelist[i]);
@@ -183,7 +184,7 @@ int drm_legacy_sg_alloc(struct drm_device *dev, void *data,
}
}
if (error == 0)
- DRM_ERROR("Scatter allocation matches pagelist\n");
+ drm_err(dev, "Scatter allocation matches pagelist\n");
}
#endif

diff --git a/drivers/gpu/drm/drm_vm.c b/drivers/gpu/drm/drm_vm.c
index f024dc93939e..cdb956af2079 100644
--- a/drivers/gpu/drm/drm_vm.c
+++ b/drivers/gpu/drm/drm_vm.c
@@ -547,7 +547,7 @@ static int drm_mmap_locked(struct file *filp, struct vm_area_struct *vma)
return drm_mmap_dma(filp, vma);

if (drm_ht_find_item(&dev->map_hash, vma->vm_pgoff, &hash)) {
- DRM_ERROR("Could not find map\n");
+ drm_err(dev, "Could not find map\n");
return -EINVAL;
}

--
2.35.1


2022-12-20 20:41:07

by Siddh Raman Pant

[permalink] [raw]
Subject: [PATCH 08/10] drm: Remove usage of deprecated DRM_DEBUG_PRIME

drm_print.h says DRM_DEBUG_PRIME is deprecated in favor of
drm_dbg_prime().

Signed-off-by: Siddh Raman Pant <[email protected]>
---
drivers/gpu/drm/drm_gem_dma_helper.c | 4 ++--
drivers/gpu/drm/drm_gem_shmem_helper.c | 2 +-
2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/drivers/gpu/drm/drm_gem_dma_helper.c b/drivers/gpu/drm/drm_gem_dma_helper.c
index 1ba551b0ab97..0f903cc8914a 100644
--- a/drivers/gpu/drm/drm_gem_dma_helper.c
+++ b/drivers/gpu/drm/drm_gem_dma_helper.c
@@ -477,8 +477,8 @@ drm_gem_dma_prime_import_sg_table(struct drm_device *dev,
dma_obj->dma_addr = sg_dma_address(sgt->sgl);
dma_obj->sgt = sgt;

- DRM_DEBUG_PRIME("dma_addr = %pad, size = %zu\n", &dma_obj->dma_addr,
- attach->dmabuf->size);
+ drm_dbg_prime(dev, "dma_addr = %pad, size = %zu\n", &dma_obj->dma_addr,
+ attach->dmabuf->size);

return &dma_obj->base;
}
diff --git a/drivers/gpu/drm/drm_gem_shmem_helper.c b/drivers/gpu/drm/drm_gem_shmem_helper.c
index f0b6b69f4baf..1b9a6b357d8a 100644
--- a/drivers/gpu/drm/drm_gem_shmem_helper.c
+++ b/drivers/gpu/drm/drm_gem_shmem_helper.c
@@ -764,7 +764,7 @@ drm_gem_shmem_prime_import_sg_table(struct drm_device *dev,

shmem->sgt = sgt;

- DRM_DEBUG_PRIME("size = %zu\n", size);
+ drm_dbg_prime(dev, "size = %zu\n", size);

return &shmem->base;
}
--
2.35.1


2022-12-20 20:42:39

by Siddh Raman Pant

[permalink] [raw]
Subject: [PATCH 09/10] drm/drm_blend: Remove usage of deprecated DRM_DEBUG_ATOMIC

drm_print.h says DRM_DEBUG_ATOMIC is deprecated in favor of
drm_dbg_atomic().

Signed-off-by: Siddh Raman Pant <[email protected]>
---
drivers/gpu/drm/drm_blend.c | 13 ++++++-------
1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/drivers/gpu/drm/drm_blend.c b/drivers/gpu/drm/drm_blend.c
index b4c8cab7158c..6e74de833466 100644
--- a/drivers/gpu/drm/drm_blend.c
+++ b/drivers/gpu/drm/drm_blend.c
@@ -450,8 +450,8 @@ static int drm_atomic_helper_crtc_normalize_zpos(struct drm_crtc *crtc,
int i, n = 0;
int ret = 0;

- DRM_DEBUG_ATOMIC("[CRTC:%d:%s] calculating normalized zpos values\n",
- crtc->base.id, crtc->name);
+ drm_dbg_atomic(dev, "[CRTC:%d:%s] calculating normalized zpos values\n",
+ crtc->base.id, crtc->name);

states = kmalloc_array(total_planes, sizeof(*states), GFP_KERNEL);
if (!states)
@@ -469,9 +469,8 @@ static int drm_atomic_helper_crtc_normalize_zpos(struct drm_crtc *crtc,
goto done;
}
states[n++] = plane_state;
- DRM_DEBUG_ATOMIC("[PLANE:%d:%s] processing zpos value %d\n",
- plane->base.id, plane->name,
- plane_state->zpos);
+ drm_dbg_atomic(dev, "[PLANE:%d:%s] processing zpos value %d\n",
+ plane->base.id, plane->name, plane_state->zpos);
}

sort(states, n, sizeof(*states), drm_atomic_state_zpos_cmp, NULL);
@@ -480,8 +479,8 @@ static int drm_atomic_helper_crtc_normalize_zpos(struct drm_crtc *crtc,
plane = states[i]->plane;

states[i]->normalized_zpos = i;
- DRM_DEBUG_ATOMIC("[PLANE:%d:%s] normalized zpos value %d\n",
- plane->base.id, plane->name, i);
+ drm_dbg_atomic(dev, "[PLANE:%d:%s] normalized zpos value %d\n",
+ plane->base.id, plane->name, i);
}
crtc_state->zpos_changed = true;

--
2.35.1


2022-12-20 20:45:34

by Siddh Raman Pant

[permalink] [raw]
Subject: [PATCH 04/10] drm/print: Fix support for NULL as first argument of drm_dbg_*

Comments say macros DRM_DEBUG_* are deprecated in favor of
drm_dbg_*(NULL, ...), but they have broken support for it,
as the macro will result in `(NULL) ? (NULL)->dev : NULL`.

Thus, fix them by casting input drm to a temporary struct ptr,
with the same convention as in __DRM_DEFINE_DBG_RATELIMITED.

Signed-off-by: Siddh Raman Pant <[email protected]>
---
include/drm/drm_print.h | 89 ++++++++++++++++++++++++++++++++---------
1 file changed, 69 insertions(+), 20 deletions(-)

diff --git a/include/drm/drm_print.h b/include/drm/drm_print.h
index a44fb7ef257f..53702d830291 100644
--- a/include/drm/drm_print.h
+++ b/include/drm/drm_print.h
@@ -486,26 +486,75 @@ void __drm_dev_dbg(struct _ddebug *desc, const struct device *dev,
__drm_printk((drm), err, _ratelimited, "*ERROR* " fmt, ##__VA_ARGS__)


-#define drm_dbg_core(drm, fmt, ...) \
- drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_CORE, fmt, ##__VA_ARGS__)
-#define drm_dbg_driver(drm, fmt, ...) \
- drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_DRIVER, fmt, ##__VA_ARGS__)
-#define drm_dbg_kms(drm, fmt, ...) \
- drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_KMS, fmt, ##__VA_ARGS__)
-#define drm_dbg_prime(drm, fmt, ...) \
- drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_PRIME, fmt, ##__VA_ARGS__)
-#define drm_dbg_atomic(drm, fmt, ...) \
- drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_ATOMIC, fmt, ##__VA_ARGS__)
-#define drm_dbg_vbl(drm, fmt, ...) \
- drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_VBL, fmt, ##__VA_ARGS__)
-#define drm_dbg_state(drm, fmt, ...) \
- drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_STATE, fmt, ##__VA_ARGS__)
-#define drm_dbg_lease(drm, fmt, ...) \
- drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_LEASE, fmt, ##__VA_ARGS__)
-#define drm_dbg_dp(drm, fmt, ...) \
- drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_DP, fmt, ##__VA_ARGS__)
-#define drm_dbg_drmres(drm, fmt, ...) \
- drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_DRMRES, fmt, ##__VA_ARGS__)
+#define drm_dbg_core(drm, fmt, ...) \
+({ \
+ const struct drm_device *drm_ = (drm); \
+ drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_CORE, \
+ fmt, ##__VA_ARGS__); \
+})
+
+#define drm_dbg_driver(drm, fmt, ...) \
+({ \
+ const struct drm_device *drm_ = (drm); \
+ drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_DRIVER, \
+ fmt, ##__VA_ARGS__); \
+})
+
+#define drm_dbg_kms(drm, fmt, ...) \
+({ \
+ const struct drm_device *drm_ = (drm); \
+ drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_KMS, \
+ fmt, ##__VA_ARGS__); \
+})
+
+#define drm_dbg_prime(drm, fmt, ...) \
+({ \
+ const struct drm_device *drm_ = (drm); \
+ drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_PRIME, \
+ fmt, ##__VA_ARGS__); \
+})
+
+#define drm_dbg_atomic(drm, fmt, ...) \
+({ \
+ const struct drm_device *drm_ = (drm); \
+ drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_ATOMIC, \
+ fmt, ##__VA_ARGS__); \
+})
+
+#define drm_dbg_vbl(drm, fmt, ...) \
+({ \
+ const struct drm_device *drm_ = (drm); \
+ drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_VBL, \
+ fmt, ##__VA_ARGS__); \
+})
+
+#define drm_dbg_state(drm, fmt, ...) \
+({ \
+ const struct drm_device *drm_ = (drm); \
+ drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_STATE, \
+ fmt, ##__VA_ARGS__); \
+})
+
+#define drm_dbg_lease(drm, fmt, ...) \
+({ \
+ const struct drm_device *drm_ = (drm); \
+ drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_LEASE, \
+ fmt, ##__VA_ARGS__); \
+})
+
+#define drm_dbg_dp(drm, fmt, ...) \
+({ \
+ const struct drm_device *drm_ = (drm); \
+ drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_DP, \
+ fmt, ##__VA_ARGS__); \
+})
+
+#define drm_dbg_drmres(drm, fmt, ...) \
+({ \
+ const struct drm_device *drm_ = (drm); \
+ drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_DRMRES, \
+ fmt, ##__VA_ARGS__); \
+})

#define drm_dbg(drm, fmt, ...) drm_dbg_driver(drm, fmt, ##__VA_ARGS__)

--
2.35.1


2022-12-20 20:45:44

by Siddh Raman Pant

[permalink] [raw]
Subject: [PATCH 02/10] drm: Remove usage of deprecated DRM_NOTE

drm_print.h says DRM_NOTE is deprecated in favour of pr_notice().

Signed-off-by: Siddh Raman Pant <[email protected]>
---
drivers/gpu/drm/drm_displayid.c | 2 +-
drivers/gpu/drm/drm_kms_helper_common.c | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/drm_displayid.c b/drivers/gpu/drm/drm_displayid.c
index 38ea8203df45..e8431da8238a 100644
--- a/drivers/gpu/drm/drm_displayid.c
+++ b/drivers/gpu/drm/drm_displayid.c
@@ -26,7 +26,7 @@ static int validate_displayid(const u8 *displayid, int length, int idx)
for (i = 0; i < dispid_length; i++)
csum += displayid[idx + i];
if (csum) {
- DRM_NOTE("DisplayID checksum invalid, remainder is %d\n", csum);
+ pr_notice("DisplayID checksum invalid, remainder is %d\n", csum);
return -EINVAL;
}

diff --git a/drivers/gpu/drm/drm_kms_helper_common.c b/drivers/gpu/drm/drm_kms_helper_common.c
index 0bf0fc1abf54..bcb3dd62462c 100644
--- a/drivers/gpu/drm/drm_kms_helper_common.c
+++ b/drivers/gpu/drm/drm_kms_helper_common.c
@@ -41,7 +41,7 @@ MODULE_LICENSE("GPL and additional rights");
/* Backward compatibility for drm_kms_helper.edid_firmware */
static int edid_firmware_set(const char *val, const struct kernel_param *kp)
{
- DRM_NOTE("drm_kms_helper.edid_firmware is deprecated, please use drm.edid_firmware instead.\n");
+ pr_notice("drm_kms_helper.edid_firmware is deprecated, please use drm.edid_firmware instead.\n");

return __drm_set_edid_firmware_path(val);
}
--
2.35.1


2022-12-20 20:46:03

by Siddh Raman Pant

[permalink] [raw]
Subject: [PATCH 10/10] drm/drm_lease: Remove usage of deprecated DRM_DEBUG_LEASE

drm_print.h says DRM_DEBUG_LEASE is deprecated in favor of
drm_dbg_lease().

Signed-off-by: Siddh Raman Pant <[email protected]>
---
drivers/gpu/drm/drm_lease.c | 64 ++++++++++++++++++++-----------------
1 file changed, 34 insertions(+), 30 deletions(-)

diff --git a/drivers/gpu/drm/drm_lease.c b/drivers/gpu/drm/drm_lease.c
index c442d5e766d1..08b4f29f8b61 100644
--- a/drivers/gpu/drm/drm_lease.c
+++ b/drivers/gpu/drm/drm_lease.c
@@ -213,11 +213,11 @@ static struct drm_master *drm_lease_create(struct drm_master *lessor, struct idr
int id;
void *entry;

- DRM_DEBUG_LEASE("lessor %d\n", lessor->lessee_id);
+ drm_dbg_lease(dev, "lessor %d\n", lessor->lessee_id);

lessee = drm_master_create(lessor->dev);
if (!lessee) {
- DRM_DEBUG_LEASE("drm_master_create failed\n");
+ drm_dbg_lease(dev, "drm_master_create failed\n");
return ERR_PTR(-ENOMEM);
}

@@ -231,7 +231,7 @@ static struct drm_master *drm_lease_create(struct drm_master *lessor, struct idr
error = -EBUSY;

if (error != 0) {
- DRM_DEBUG_LEASE("object %d failed %d\n", object, error);
+ drm_dbg_lease(dev, "object %d failed %d\n", object, error);
goto out_lessee;
}
}
@@ -249,7 +249,8 @@ static struct drm_master *drm_lease_create(struct drm_master *lessor, struct idr

/* Move the leases over */
lessee->leases = *leases;
- DRM_DEBUG_LEASE("new lessee %d %p, lessor %d %p\n", lessee->lessee_id, lessee, lessor->lessee_id, lessor);
+ drm_dbg_lease(dev, "new lessee %d %p, lessor %d %p\n",
+ lessee->lessee_id, lessee, lessor->lessee_id, lessor);

mutex_unlock(&dev->mode_config.idr_mutex);
return lessee;
@@ -268,7 +269,7 @@ void drm_lease_destroy(struct drm_master *master)

mutex_lock(&dev->mode_config.idr_mutex);

- DRM_DEBUG_LEASE("drm_lease_destroy %d\n", master->lessee_id);
+ drm_dbg_lease(dev, "drm_lease_destroy %d\n", master->lessee_id);

/* This master is referenced by all lessees, hence it cannot be destroyed
* until all of them have been
@@ -277,7 +278,8 @@ void drm_lease_destroy(struct drm_master *master)

/* Remove this master from the lessee idr in the owner */
if (master->lessee_id != 0) {
- DRM_DEBUG_LEASE("remove master %d from device list of lessees\n", master->lessee_id);
+ drm_dbg_lease(dev, "remove master %d from device list of lessees\n",
+ master->lessee_id);
idr_remove(&(drm_lease_owner(master)->lessee_idr), master->lessee_id);
}

@@ -292,7 +294,7 @@ void drm_lease_destroy(struct drm_master *master)
drm_master_put(&master->lessor);
}

- DRM_DEBUG_LEASE("drm_lease_destroy done %d\n", master->lessee_id);
+ drm_dbg_lease(dev, "drm_lease_destroy done %d\n", master->lessee_id);
}

static void _drm_lease_revoke(struct drm_master *top)
@@ -308,7 +310,8 @@ static void _drm_lease_revoke(struct drm_master *top)
* the tree is fully connected, we can do this without recursing
*/
for (;;) {
- DRM_DEBUG_LEASE("revoke leases for %p %d\n", master, master->lessee_id);
+ drm_dbg_lease(master->dev, "revoke leases for %p %d\n",
+ master, master->lessee_id);

/* Evacuate the lease */
idr_for_each_entry(&master->leases, entry, object)
@@ -408,7 +411,7 @@ static int fill_object_idr(struct drm_device *dev,

ret = validate_lease(dev, object_count, objects, universal_planes);
if (ret) {
- DRM_DEBUG_LEASE("lease validation failed\n");
+ drm_dbg_lease(dev, "lease validation failed\n");
goto out_free_objects;
}

@@ -418,7 +421,7 @@ static int fill_object_idr(struct drm_device *dev,
struct drm_mode_object *obj = objects[o];
u32 object_id = objects[o]->id;

- DRM_DEBUG_LEASE("Adding object %d to lease\n", object_id);
+ drm_dbg_lease(dev, "Adding object %d to lease\n", object_id);

/*
* We're using an IDR to hold the set of leased
@@ -430,8 +433,8 @@ static int fill_object_idr(struct drm_device *dev,
*/
ret = idr_alloc(leases, &drm_lease_idr_object , object_id, object_id + 1, GFP_KERNEL);
if (ret < 0) {
- DRM_DEBUG_LEASE("Object %d cannot be inserted into leases (%d)\n",
- object_id, ret);
+ drm_dbg_lease(dev, "Object %d cannot be inserted into leases (%d)\n",
+ object_id, ret);
goto out_free_objects;
}
if (obj->type == DRM_MODE_OBJECT_CRTC && !universal_planes) {
@@ -439,15 +442,15 @@ static int fill_object_idr(struct drm_device *dev,

ret = idr_alloc(leases, &drm_lease_idr_object, crtc->primary->base.id, crtc->primary->base.id + 1, GFP_KERNEL);
if (ret < 0) {
- DRM_DEBUG_LEASE("Object primary plane %d cannot be inserted into leases (%d)\n",
- object_id, ret);
+ drm_dbg_lease(dev, "Object primary plane %d cannot be inserted into leases (%d)\n",
+ object_id, ret);
goto out_free_objects;
}
if (crtc->cursor) {
ret = idr_alloc(leases, &drm_lease_idr_object, crtc->cursor->base.id, crtc->cursor->base.id + 1, GFP_KERNEL);
if (ret < 0) {
- DRM_DEBUG_LEASE("Object cursor plane %d cannot be inserted into leases (%d)\n",
- object_id, ret);
+ drm_dbg_lease(dev, "Object cursor plane %d cannot be inserted into leases (%d)\n",
+ object_id, ret);
goto out_free_objects;
}
}
@@ -490,14 +493,14 @@ int drm_mode_create_lease_ioctl(struct drm_device *dev,
return -EOPNOTSUPP;

if (cl->flags && (cl->flags & ~(O_CLOEXEC | O_NONBLOCK))) {
- DRM_DEBUG_LEASE("invalid flags\n");
+ drm_dbg_lease(dev, "invalid flags\n");
return -EINVAL;
}

lessor = drm_file_get_master(lessor_priv);
/* Do not allow sub-leases */
if (lessor->lessor) {
- DRM_DEBUG_LEASE("recursive leasing not allowed\n");
+ drm_dbg_lease(dev, "recursive leasing not allowed\n");
ret = -EINVAL;
goto out_lessor;
}
@@ -520,7 +523,7 @@ int drm_mode_create_lease_ioctl(struct drm_device *dev,
object_count, object_ids);
kfree(object_ids);
if (ret) {
- DRM_DEBUG_LEASE("lease object lookup failed: %i\n", ret);
+ drm_dbg_lease(dev, "lease object lookup failed: %i\n", ret);
idr_destroy(&leases);
goto out_lessor;
}
@@ -534,7 +537,7 @@ int drm_mode_create_lease_ioctl(struct drm_device *dev,
goto out_lessor;
}

- DRM_DEBUG_LEASE("Creating lease\n");
+ drm_dbg_lease(dev, "Creating lease\n");
/* lessee will take the ownership of leases */
lessee = drm_lease_create(lessor, &leases);

@@ -545,7 +548,7 @@ int drm_mode_create_lease_ioctl(struct drm_device *dev,
}

/* Clone the lessor file to create a new file for us */
- DRM_DEBUG_LEASE("Allocating lease file\n");
+ drm_dbg_lease(dev, "Allocating lease file\n");
lessee_file = file_clone_open(lessor_file);
if (IS_ERR(lessee_file)) {
ret = PTR_ERR(lessee_file);
@@ -560,7 +563,7 @@ int drm_mode_create_lease_ioctl(struct drm_device *dev,
lessee_priv->authenticated = 1;

/* Pass fd back to userspace */
- DRM_DEBUG_LEASE("Returning fd %d id %d\n", fd, lessee->lessee_id);
+ drm_dbg_lease(dev, "Returning fd %d id %d\n", fd, lessee->lessee_id);
cl->fd = fd;
cl->lessee_id = lessee->lessee_id;

@@ -568,7 +571,7 @@ int drm_mode_create_lease_ioctl(struct drm_device *dev,
fd_install(fd, lessee_file);

drm_master_put(&lessor);
- DRM_DEBUG_LEASE("drm_mode_create_lease_ioctl succeeded\n");
+ drm_dbg_lease(dev, "drm_mode_create_lease_ioctl succeeded\n");
return 0;

out_lessee:
@@ -579,7 +582,7 @@ int drm_mode_create_lease_ioctl(struct drm_device *dev,

out_lessor:
drm_master_put(&lessor);
- DRM_DEBUG_LEASE("drm_mode_create_lease_ioctl failed: %d\n", ret);
+ drm_dbg_lease(dev, "drm_mode_create_lease_ioctl failed: %d\n", ret);
return ret;
}

@@ -601,7 +604,7 @@ int drm_mode_list_lessees_ioctl(struct drm_device *dev,
return -EOPNOTSUPP;

lessor = drm_file_get_master(lessor_priv);
- DRM_DEBUG_LEASE("List lessees for %d\n", lessor->lessee_id);
+ drm_dbg_lease(dev, "List lessees for %d\n", lessor->lessee_id);

mutex_lock(&dev->mode_config.idr_mutex);

@@ -610,7 +613,8 @@ int drm_mode_list_lessees_ioctl(struct drm_device *dev,
/* Only list un-revoked leases */
if (!idr_is_empty(&lessee->leases)) {
if (count_lessees > count) {
- DRM_DEBUG_LEASE("Add lessee %d\n", lessee->lessee_id);
+ drm_dbg_lease(dev, "Add lessee %d\n",
+ lessee->lessee_id);
ret = put_user(lessee->lessee_id, lessee_ids + count);
if (ret)
break;
@@ -619,7 +623,7 @@ int drm_mode_list_lessees_ioctl(struct drm_device *dev,
}
}

- DRM_DEBUG_LEASE("Lessor leases to %d\n", count);
+ drm_dbg_lease(dev, "Lessor leases to %d\n", count);
if (ret == 0)
arg->count_lessees = count;

@@ -651,7 +655,7 @@ int drm_mode_get_lease_ioctl(struct drm_device *dev,
return -EOPNOTSUPP;

lessee = drm_file_get_master(lessee_priv);
- DRM_DEBUG_LEASE("get lease for %d\n", lessee->lessee_id);
+ drm_dbg_lease(dev, "get lease for %d\n", lessee->lessee_id);

mutex_lock(&dev->mode_config.idr_mutex);

@@ -665,7 +669,7 @@ int drm_mode_get_lease_ioctl(struct drm_device *dev,
count = 0;
idr_for_each_entry(object_idr, entry, object) {
if (count_objects > count) {
- DRM_DEBUG_LEASE("adding object %d\n", object);
+ drm_dbg_lease(dev, "adding object %d\n", object);
ret = put_user(object, object_ids + count);
if (ret)
break;
@@ -696,7 +700,7 @@ int drm_mode_revoke_lease_ioctl(struct drm_device *dev,
struct drm_master *lessee;
int ret = 0;

- DRM_DEBUG_LEASE("revoke lease for %d\n", arg->lessee_id);
+ drm_dbg_lease(dev, "revoke lease for %d\n", arg->lessee_id);

/* Can't lease without MODESET */
if (!drm_core_check_feature(dev, DRIVER_MODESET))
--
2.35.1


2022-12-20 20:46:15

by Siddh Raman Pant

[permalink] [raw]
Subject: [PATCH 05/10] drm: Remove usage of deprecated DRM_DEBUG

drm_print.h says DRM_DEBUG is deprecated in favor of drm_dbg_core().

Signed-off-by: Siddh Raman Pant <[email protected]>
---
drivers/gpu/drm/drm_agpsupport.c | 4 +-
drivers/gpu/drm/drm_bufs.c | 114 +++++++++++++++---------------
drivers/gpu/drm/drm_context.c | 14 ++--
drivers/gpu/drm/drm_dma.c | 10 +--
drivers/gpu/drm/drm_drv.c | 10 +--
drivers/gpu/drm/drm_file.c | 18 ++---
drivers/gpu/drm/drm_gem.c | 5 +-
drivers/gpu/drm/drm_hashtab.c | 6 +-
drivers/gpu/drm/drm_ioc32.c | 13 ++--
drivers/gpu/drm/drm_ioctl.c | 24 +++----
drivers/gpu/drm/drm_irq.c | 4 +-
drivers/gpu/drm/drm_lease.c | 2 +-
drivers/gpu/drm/drm_legacy_misc.c | 4 +-
drivers/gpu/drm/drm_lock.c | 20 +++---
drivers/gpu/drm/drm_mode_object.c | 6 +-
drivers/gpu/drm/drm_pci.c | 12 ++--
drivers/gpu/drm/drm_plane.c | 12 ++--
drivers/gpu/drm/drm_scatter.c | 10 +--
drivers/gpu/drm/drm_syncobj.c | 2 +-
drivers/gpu/drm/drm_sysfs.c | 14 ++--
drivers/gpu/drm/drm_vm.c | 43 ++++++-----
21 files changed, 178 insertions(+), 169 deletions(-)

diff --git a/drivers/gpu/drm/drm_agpsupport.c b/drivers/gpu/drm/drm_agpsupport.c
index a4ad6fd13abc..d27686d6e82d 100644
--- a/drivers/gpu/drm/drm_agpsupport.c
+++ b/drivers/gpu/drm/drm_agpsupport.c
@@ -315,8 +315,8 @@ int drm_legacy_agp_bind(struct drm_device *dev, struct drm_agp_binding *request)
if (retcode)
return retcode;
entry->bound = dev->agp->base + (page << PAGE_SHIFT);
- DRM_DEBUG("base = 0x%lx entry->bound = 0x%lx\n",
- dev->agp->base, entry->bound);
+ drm_dbg_core(dev, "base = 0x%lx entry->bound = 0x%lx\n",
+ dev->agp->base, entry->bound);
return 0;
}
EXPORT_SYMBOL(drm_legacy_agp_bind);
diff --git a/drivers/gpu/drm/drm_bufs.c b/drivers/gpu/drm/drm_bufs.c
index 98aaf3379a3b..feedd7c6f0d5 100644
--- a/drivers/gpu/drm/drm_bufs.c
+++ b/drivers/gpu/drm/drm_bufs.c
@@ -171,8 +171,8 @@ static int drm_addmap_core(struct drm_device *dev, resource_size_t offset,
kfree(map);
return -EINVAL;
}
- DRM_DEBUG("offset = 0x%08llx, size = 0x%08lx, type = %d\n",
- (unsigned long long)map->offset, map->size, map->type);
+ drm_dbg_core(dev, "offset = 0x%08llx, size = 0x%08lx, type = %d\n",
+ (unsigned long long)map->offset, map->size, map->type);

/* page-align _DRM_SHM maps. They are allocated here so there is no security
* hole created by that and it works around various broken drivers that use
@@ -205,10 +205,10 @@ static int drm_addmap_core(struct drm_device *dev, resource_size_t offset,
list = drm_find_matching_map(dev, map);
if (list != NULL) {
if (list->map->size != map->size) {
- DRM_DEBUG("Matching maps of type %d with "
- "mismatched sizes, (%ld vs %ld)\n",
- map->type, map->size,
- list->map->size);
+ drm_dbg_core(dev, "Matching maps of type %d with "
+ "mismatched sizes, (%ld vs %ld)\n",
+ map->type, map->size,
+ list->map->size);
list->map->size = map->size;
}

@@ -239,9 +239,9 @@ static int drm_addmap_core(struct drm_device *dev, resource_size_t offset,
list = drm_find_matching_map(dev, map);
if (list != NULL) {
if (list->map->size != map->size) {
- DRM_DEBUG("Matching maps of type %d with "
- "mismatched sizes, (%ld vs %ld)\n",
- map->type, map->size, list->map->size);
+ drm_dbg_core(dev, "Matching maps of type %d with "
+ "mismatched sizes, (%ld vs %ld)\n",
+ map->type, map->size, list->map->size);
list->map->size = map->size;
}

@@ -250,8 +250,8 @@ static int drm_addmap_core(struct drm_device *dev, resource_size_t offset,
return 0;
}
map->handle = vmalloc_user(map->size);
- DRM_DEBUG("%lu %d %p\n",
- map->size, order_base_2(map->size), map->handle);
+ drm_dbg_core(dev, "%lu %d %p\n",
+ map->size, order_base_2(map->size), map->handle);
if (!map->handle) {
kfree(map);
return -ENOMEM;
@@ -308,8 +308,8 @@ static int drm_addmap_core(struct drm_device *dev, resource_size_t offset,
kfree(map);
return -EPERM;
}
- DRM_DEBUG("AGP offset = 0x%08llx, size = 0x%08lx\n",
- (unsigned long long)map->offset, map->size);
+ drm_dbg_core(dev, "AGP offset = 0x%08llx, size = 0x%08lx\n",
+ (unsigned long long)map->offset, map->size);

break;
}
@@ -749,13 +749,13 @@ int drm_legacy_addbufs_agp(struct drm_device *dev,
byte_count = 0;
agp_offset = dev->agp->base + request->agp_start;

- DRM_DEBUG("count: %d\n", count);
- DRM_DEBUG("order: %d\n", order);
- DRM_DEBUG("size: %d\n", size);
- DRM_DEBUG("agp_offset: %lx\n", agp_offset);
- DRM_DEBUG("alignment: %d\n", alignment);
- DRM_DEBUG("page_order: %d\n", page_order);
- DRM_DEBUG("total: %d\n", total);
+ drm_dbg_core(dev, "count: %d\n", count);
+ drm_dbg_core(dev, "order: %d\n", order);
+ drm_dbg_core(dev, "size: %d\n", size);
+ drm_dbg_core(dev, "agp_offset: %lx\n", agp_offset);
+ drm_dbg_core(dev, "alignment: %d\n", alignment);
+ drm_dbg_core(dev, "page_order: %d\n", page_order);
+ drm_dbg_core(dev, "total: %d\n", total);

if (order < DRM_MIN_ORDER || order > DRM_MAX_ORDER)
return -EINVAL;
@@ -770,7 +770,7 @@ int drm_legacy_addbufs_agp(struct drm_device *dev,
}
}
if (!list_empty(&dev->agp->memory) && !valid) {
- DRM_DEBUG("zone invalid\n");
+ drm_dbg_core(dev, "zone invalid\n");
return -EINVAL;
}
spin_lock(&dev->buf_lock);
@@ -833,14 +833,15 @@ int drm_legacy_addbufs_agp(struct drm_device *dev,
return -ENOMEM;
}

- DRM_DEBUG("buffer %d @ %p\n", entry->buf_count, buf->address);
+ drm_dbg_core(dev, "buffer %d @ %p\n", entry->buf_count,
+ buf->address);

offset += alignment;
entry->buf_count++;
byte_count += PAGE_SIZE << page_order;
}

- DRM_DEBUG("byte_count: %d\n", byte_count);
+ drm_dbg_core(dev, "byte_count: %d\n", byte_count);

temp_buflist = krealloc(dma->buflist,
(dma->buf_count + entry->buf_count) *
@@ -863,8 +864,8 @@ int drm_legacy_addbufs_agp(struct drm_device *dev,
dma->page_count += byte_count >> PAGE_SHIFT;
dma->byte_count += byte_count;

- DRM_DEBUG("dma->buf_count : %d\n", dma->buf_count);
- DRM_DEBUG("entry->buf_count : %d\n", entry->buf_count);
+ drm_dbg_core(dev, "dma->buf_count : %d\n", dma->buf_count);
+ drm_dbg_core(dev, "entry->buf_count : %d\n", entry->buf_count);

mutex_unlock(&dev->struct_mutex);

@@ -912,8 +913,8 @@ int drm_legacy_addbufs_pci(struct drm_device *dev,
order = order_base_2(request->size);
size = 1 << order;

- DRM_DEBUG("count=%d, size=%d (%d), order=%d\n",
- request->count, request->size, size, order);
+ drm_dbg_core(dev, "count=%d, size=%d (%d), order=%d\n",
+ request->count, request->size, size, order);

if (order < DRM_MIN_ORDER || order > DRM_MAX_ORDER)
return -EINVAL;
@@ -975,8 +976,8 @@ int drm_legacy_addbufs_pci(struct drm_device *dev,
}
memcpy(temp_pagelist,
dma->pagelist, dma->page_count * sizeof(*dma->pagelist));
- DRM_DEBUG("pagelist: %d entries\n",
- dma->page_count + (count << page_order));
+ drm_dbg_core(dev, "pagelist: %d entries\n",
+ dma->page_count + (count << page_order));

entry->buf_size = size;
entry->page_order = page_order;
@@ -1015,9 +1016,9 @@ int drm_legacy_addbufs_pci(struct drm_device *dev,
}
entry->seglist[entry->seg_count++] = dmah;
for (i = 0; i < (1 << page_order); i++) {
- DRM_DEBUG("page %d @ 0x%08lx\n",
- dma->page_count + page_count,
- (unsigned long)dmah->vaddr + PAGE_SIZE * i);
+ drm_dbg_core(dev, "page %d @ 0x%08lx\n",
+ dma->page_count + page_count,
+ (unsigned long)dmah->vaddr + PAGE_SIZE * i);
temp_pagelist[dma->page_count + page_count++]
= (unsigned long)dmah->vaddr + PAGE_SIZE * i;
}
@@ -1051,8 +1052,8 @@ int drm_legacy_addbufs_pci(struct drm_device *dev,
return -ENOMEM;
}

- DRM_DEBUG("buffer %d @ %p\n",
- entry->buf_count, buf->address);
+ drm_dbg_core(dev, "buffer %d @ %p\n",
+ entry->buf_count, buf->address);
}
byte_count += PAGE_SIZE << page_order;
}
@@ -1140,13 +1141,13 @@ static int drm_legacy_addbufs_sg(struct drm_device *dev,
byte_count = 0;
agp_offset = request->agp_start;

- DRM_DEBUG("count: %d\n", count);
- DRM_DEBUG("order: %d\n", order);
- DRM_DEBUG("size: %d\n", size);
- DRM_DEBUG("agp_offset: %lu\n", agp_offset);
- DRM_DEBUG("alignment: %d\n", alignment);
- DRM_DEBUG("page_order: %d\n", page_order);
- DRM_DEBUG("total: %d\n", total);
+ drm_dbg_core(dev, "count: %d\n", count);
+ drm_dbg_core(dev, "order: %d\n", order);
+ drm_dbg_core(dev, "size: %d\n", size);
+ drm_dbg_core(dev, "agp_offset: %lu\n", agp_offset);
+ drm_dbg_core(dev, "alignment: %d\n", alignment);
+ drm_dbg_core(dev, "page_order: %d\n", page_order);
+ drm_dbg_core(dev, "total: %d\n", total);

if (order < DRM_MIN_ORDER || order > DRM_MAX_ORDER)
return -EINVAL;
@@ -1212,14 +1213,15 @@ static int drm_legacy_addbufs_sg(struct drm_device *dev,
return -ENOMEM;
}

- DRM_DEBUG("buffer %d @ %p\n", entry->buf_count, buf->address);
+ drm_dbg_core(dev, "buffer %d @ %p\n", entry->buf_count,
+ buf->address);

offset += alignment;
entry->buf_count++;
byte_count += PAGE_SIZE << page_order;
}

- DRM_DEBUG("byte_count: %d\n", byte_count);
+ drm_dbg_core(dev, "byte_count: %d\n", byte_count);

temp_buflist = krealloc(dma->buflist,
(dma->buf_count + entry->buf_count) *
@@ -1242,8 +1244,8 @@ static int drm_legacy_addbufs_sg(struct drm_device *dev,
dma->page_count += byte_count >> PAGE_SHIFT;
dma->byte_count += byte_count;

- DRM_DEBUG("dma->buf_count : %d\n", dma->buf_count);
- DRM_DEBUG("entry->buf_count : %d\n", entry->buf_count);
+ drm_dbg_core(dev, "dma->buf_count : %d\n", dma->buf_count);
+ drm_dbg_core(dev, "entry->buf_count : %d\n", entry->buf_count);

mutex_unlock(&dev->struct_mutex);

@@ -1344,7 +1346,7 @@ int __drm_legacy_infobufs(struct drm_device *dev,
++count;
}

- DRM_DEBUG("count = %d\n", count);
+ drm_dbg_core(dev, "count = %d\n", count);

if (*p >= count) {
for (i = 0, count = 0; i < DRM_MAX_ORDER + 1; i++) {
@@ -1353,12 +1355,12 @@ int __drm_legacy_infobufs(struct drm_device *dev,
if (from->buf_count) {
if (f(data, count, from) < 0)
return -EFAULT;
- DRM_DEBUG("%d %d %d %d %d\n",
- i,
- dma->bufs[i].buf_count,
- dma->bufs[i].buf_size,
- dma->bufs[i].low_mark,
- dma->bufs[i].high_mark);
+ drm_dbg_core(dev, "%d %d %d %d %d\n",
+ i,
+ dma->bufs[i].buf_count,
+ dma->bufs[i].buf_size,
+ dma->bufs[i].low_mark,
+ dma->bufs[i].high_mark);
++count;
}
}
@@ -1421,8 +1423,8 @@ int drm_legacy_markbufs(struct drm_device *dev, void *data,
if (!dma)
return -EINVAL;

- DRM_DEBUG("%d, %d, %d\n",
- request->size, request->low_mark, request->high_mark);
+ drm_dbg_core(dev, "%d, %d, %d\n",
+ request->size, request->low_mark, request->high_mark);
order = order_base_2(request->size);
if (order < DRM_MIN_ORDER || order > DRM_MAX_ORDER)
return -EINVAL;
@@ -1469,7 +1471,7 @@ int drm_legacy_freebufs(struct drm_device *dev, void *data,
if (!dma)
return -EINVAL;

- DRM_DEBUG("%d\n", request->count);
+ drm_dbg_core(dev, "%d\n", request->count);
for (i = 0; i < request->count; i++) {
if (copy_from_user(&idx, &request->list[i], sizeof(idx)))
return -EFAULT;
@@ -1569,7 +1571,7 @@ int __drm_legacy_mapbufs(struct drm_device *dev, void *data, int *p,
}
done:
*p = dma->buf_count;
- DRM_DEBUG("%d buffers, retcode = %d\n", *p, retcode);
+ drm_dbg_core(dev, "%d buffers, retcode = %d\n", *p, retcode);

return retcode;
}
diff --git a/drivers/gpu/drm/drm_context.c b/drivers/gpu/drm/drm_context.c
index f6d68fad8311..c52764e98d26 100644
--- a/drivers/gpu/drm/drm_context.c
+++ b/drivers/gpu/drm/drm_context.c
@@ -280,7 +280,7 @@ static int drm_context_switch(struct drm_device * dev, int old, int new)
return -EBUSY;
}

- DRM_DEBUG("Context switch from %d to %d\n", old, new);
+ drm_dbg_core(dev, "Context switch from %d to %d\n", old, new);

if (new == dev->last_context) {
clear_bit(0, &dev->context_flag);
@@ -379,9 +379,9 @@ int drm_legacy_addctx(struct drm_device *dev, void *data,
/* Skip kernel's context and get a new one. */
tmp_handle = drm_legacy_ctxbitmap_next(dev);
}
- DRM_DEBUG("%d\n", tmp_handle);
+ drm_dbg_core(dev, "%d\n", tmp_handle);
if (tmp_handle < 0) {
- DRM_DEBUG("Not enough free contexts.\n");
+ drm_dbg_core(dev, "Not enough free contexts.\n");
/* Should this return -EBUSY instead? */
return tmp_handle;
}
@@ -390,7 +390,7 @@ int drm_legacy_addctx(struct drm_device *dev, void *data,

ctx_entry = kmalloc(sizeof(*ctx_entry), GFP_KERNEL);
if (!ctx_entry) {
- DRM_DEBUG("out of memory\n");
+ drm_dbg_core(dev, "out of memory\n");
return -ENOMEM;
}

@@ -449,7 +449,7 @@ int drm_legacy_switchctx(struct drm_device *dev, void *data,
!drm_core_check_feature(dev, DRIVER_LEGACY))
return -EOPNOTSUPP;

- DRM_DEBUG("%d\n", ctx->handle);
+ drm_dbg_core(dev, "%d\n", ctx->handle);
return drm_context_switch(dev, dev->last_context, ctx->handle);
}

@@ -473,7 +473,7 @@ int drm_legacy_newctx(struct drm_device *dev, void *data,
!drm_core_check_feature(dev, DRIVER_LEGACY))
return -EOPNOTSUPP;

- DRM_DEBUG("%d\n", ctx->handle);
+ drm_dbg_core(dev, "%d\n", ctx->handle);
drm_context_switch_complete(dev, file_priv, ctx->handle);

return 0;
@@ -499,7 +499,7 @@ int drm_legacy_rmctx(struct drm_device *dev, void *data,
!drm_core_check_feature(dev, DRIVER_LEGACY))
return -EOPNOTSUPP;

- DRM_DEBUG("%d\n", ctx->handle);
+ drm_dbg_core(dev, "%d\n", ctx->handle);
if (ctx->handle != DRM_KERNEL_CONTEXT) {
if (dev->driver->context_dtor)
dev->driver->context_dtor(dev, ctx->handle);
diff --git a/drivers/gpu/drm/drm_dma.c b/drivers/gpu/drm/drm_dma.c
index eb6b741a6f99..dac137072c33 100644
--- a/drivers/gpu/drm/drm_dma.c
+++ b/drivers/gpu/drm/drm_dma.c
@@ -94,11 +94,11 @@ void drm_legacy_dma_takedown(struct drm_device *dev)
/* Clear dma buffers */
for (i = 0; i <= DRM_MAX_ORDER; i++) {
if (dma->bufs[i].seg_count) {
- DRM_DEBUG("order %d: buf_count = %d,"
- " seg_count = %d\n",
- i,
- dma->bufs[i].buf_count,
- dma->bufs[i].seg_count);
+ drm_dbg_core(dev, "order %d: buf_count = %d,"
+ " seg_count = %d\n",
+ i,
+ dma->bufs[i].buf_count,
+ dma->bufs[i].seg_count);
for (j = 0; j < dma->bufs[i].seg_count; j++) {
if (dma->bufs[i].seglist[j]) {
dmah = dma->bufs[i].seglist[j];
diff --git a/drivers/gpu/drm/drm_drv.c b/drivers/gpu/drm/drm_drv.c
index d66c98243623..278197dac151 100644
--- a/drivers/gpu/drm/drm_drv.c
+++ b/drivers/gpu/drm/drm_drv.c
@@ -166,7 +166,7 @@ static int drm_minor_register(struct drm_device *dev, unsigned int type)
unsigned long flags;
int ret;

- DRM_DEBUG("\n");
+ drm_dbg_core(dev, "\n");

minor = *drm_minor_get_slot(dev, type);
if (!minor)
@@ -195,7 +195,7 @@ static int drm_minor_register(struct drm_device *dev, unsigned int type)
spin_unlock_irqrestore(&drm_minor_lock, flags);
}

- DRM_DEBUG("new minor registered %d\n", minor->index);
+ drm_dbg_core(dev, "new minor registered %d\n", minor->index);
return 0;

err_debugfs:
@@ -422,7 +422,7 @@ void drm_minor_release(struct drm_minor *minor)
*/
void drm_put_dev(struct drm_device *dev)
{
- DRM_DEBUG("\n");
+ drm_dbg_core(dev, "\n");

if (!dev) {
pr_err("cleanup called no dev\n");
@@ -1043,7 +1043,7 @@ static int drm_stub_open(struct inode *inode, struct file *filp)
struct drm_minor *minor;
int err;

- DRM_DEBUG("\n");
+ drm_dbg_core(NULL, "\n");

minor = drm_minor_acquire(iminor(inode));
if (IS_ERR(minor))
@@ -1112,7 +1112,7 @@ static int __init drm_core_init(void)

drm_core_init_complete = true;

- DRM_DEBUG("Initialized\n");
+ drm_dbg_core(NULL, "Initialized\n");
return 0;

error:
diff --git a/drivers/gpu/drm/drm_file.c b/drivers/gpu/drm/drm_file.c
index 64b4a3a87fbb..04f0042accec 100644
--- a/drivers/gpu/drm/drm_file.c
+++ b/drivers/gpu/drm/drm_file.c
@@ -245,10 +245,10 @@ void drm_file_free(struct drm_file *file)

dev = file->minor->dev;

- DRM_DEBUG("comm=\"%s\", pid=%d, dev=0x%lx, open_count=%d\n",
- current->comm, task_pid_nr(current),
- (long)old_encode_dev(file->minor->kdev->devt),
- atomic_read(&dev->open_count));
+ drm_dbg_core(dev, "comm=\"%s\", pid=%d, dev=0x%lx, open_count=%d\n",
+ current->comm, task_pid_nr(current),
+ (long)old_encode_dev(file->minor->kdev->devt),
+ atomic_read(&dev->open_count));

#ifdef CONFIG_DRM_LEGACY
if (drm_core_check_feature(dev, DRIVER_LEGACY) &&
@@ -340,8 +340,8 @@ int drm_open_helper(struct file *filp, struct drm_minor *minor)
dev->switch_power_state != DRM_SWITCH_POWER_DYNAMIC_OFF)
return -EINVAL;

- DRM_DEBUG("comm=\"%s\", pid=%d, minor=%d\n", current->comm,
- task_pid_nr(current), minor->index);
+ drm_dbg_core(dev, "comm=\"%s\", pid=%d, minor=%d\n", current->comm,
+ task_pid_nr(current), minor->index);

priv = drm_file_alloc(minor);
if (IS_ERR(priv))
@@ -450,11 +450,11 @@ EXPORT_SYMBOL(drm_open);

void drm_lastclose(struct drm_device * dev)
{
- DRM_DEBUG("\n");
+ drm_dbg_core(dev, "\n");

if (dev->driver->lastclose)
dev->driver->lastclose(dev);
- DRM_DEBUG("driver lastclose completed\n");
+ drm_dbg_core(dev, "driver lastclose completed\n");

if (drm_core_check_feature(dev, DRIVER_LEGACY))
drm_legacy_dev_reinit(dev);
@@ -485,7 +485,7 @@ int drm_release(struct inode *inode, struct file *filp)
if (drm_dev_needs_global_mutex(dev))
mutex_lock(&drm_global_mutex);

- DRM_DEBUG("open_count = %d\n", atomic_read(&dev->open_count));
+ drm_dbg_core(dev, "open_count = %d\n", atomic_read(&dev->open_count));

drm_close_helper(filp);

diff --git a/drivers/gpu/drm/drm_gem.c b/drivers/gpu/drm/drm_gem.c
index 3c99610afc0a..6adc509b6a07 100644
--- a/drivers/gpu/drm/drm_gem.c
+++ b/drivers/gpu/drm/drm_gem.c
@@ -698,7 +698,7 @@ int drm_gem_objects_lookup(struct drm_file *filp, void __user *bo_handles,

if (copy_from_user(handles, bo_handles, count * sizeof(u32))) {
ret = -EFAULT;
- DRM_DEBUG("Failed to copy in GEM handles\n");
+ drm_dbg_core(filp->minor->dev, "Failed to copy in GEM handles\n");
goto out;
}

@@ -753,7 +753,8 @@ long drm_gem_dma_resv_wait(struct drm_file *filep, u32 handle,

obj = drm_gem_object_lookup(filep, handle);
if (!obj) {
- DRM_DEBUG("Failed to look up GEM BO %d\n", handle);
+ drm_dbg_core(filep->minor->dev,
+ "Failed to look up GEM BO %d\n", handle);
return -EINVAL;
}

diff --git a/drivers/gpu/drm/drm_hashtab.c b/drivers/gpu/drm/drm_hashtab.c
index 924bf36b18db..a8c8065ee55b 100644
--- a/drivers/gpu/drm/drm_hashtab.c
+++ b/drivers/gpu/drm/drm_hashtab.c
@@ -67,10 +67,12 @@ void drm_ht_verbose_list(struct drm_open_hash *ht, unsigned long key)
int count = 0;

hashed_key = hash_long(key, ht->order);
- DRM_DEBUG("Key is 0x%08lx, Hashed key is 0x%08x\n", key, hashed_key);
+ drm_dbg_core(NULL, "Key is 0x%08lx, Hashed key is 0x%08x\n",
+ key, hashed_key);
h_list = &ht->table[hashed_key];
hlist_for_each_entry(entry, h_list, head)
- DRM_DEBUG("count %d, key: 0x%08lx\n", count++, entry->key);
+ drm_dbg_core(NULL, "count %d, key: 0x%08lx\n",
+ count++, entry->key);
}

static struct hlist_node *drm_ht_find_key(struct drm_open_hash *ht,
diff --git a/drivers/gpu/drm/drm_ioc32.c b/drivers/gpu/drm/drm_ioc32.c
index 5d82891c3222..115abcccd2f1 100644
--- a/drivers/gpu/drm/drm_ioc32.c
+++ b/drivers/gpu/drm/drm_ioc32.c
@@ -986,14 +986,15 @@ long drm_compat_ioctl(struct file *filp, unsigned int cmd, unsigned long arg)
if (!fn)
return drm_ioctl(filp, cmd, arg);

- DRM_DEBUG("comm=\"%s\", pid=%d, dev=0x%lx, auth=%d, %s\n",
- current->comm, task_pid_nr(current),
- (long)old_encode_dev(file_priv->minor->kdev->devt),
- file_priv->authenticated,
- drm_compat_ioctls[nr].name);
+ drm_dbg_core(file_priv->minor->dev,
+ "comm=\"%s\", pid=%d, dev=0x%lx, auth=%d, %s\n",
+ current->comm, task_pid_nr(current),
+ (long)old_encode_dev(file_priv->minor->kdev->devt),
+ file_priv->authenticated,
+ drm_compat_ioctls[nr].name);
ret = (*fn)(filp, cmd, arg);
if (ret)
- DRM_DEBUG("ret = %d\n", ret);
+ drm_dbg_core(file_priv->minor->dev, "ret = %d\n", ret);
return ret;
}
EXPORT_SYMBOL(drm_compat_ioctl);
diff --git a/drivers/gpu/drm/drm_ioctl.c b/drivers/gpu/drm/drm_ioctl.c
index ca2a6e6101dc..192c4803c3e0 100644
--- a/drivers/gpu/drm/drm_ioctl.c
+++ b/drivers/gpu/drm/drm_ioctl.c
@@ -440,7 +440,7 @@ static int drm_setversion(struct drm_device *dev, void *data, struct drm_file *f
int drm_noop(struct drm_device *dev, void *data,
struct drm_file *file_priv)
{
- DRM_DEBUG("\n");
+ drm_dbg_core(dev, "\n");
return 0;
}
EXPORT_SYMBOL(drm_noop);
@@ -856,16 +856,16 @@ long drm_ioctl(struct file *filp,
out_size = 0;
ksize = max(max(in_size, out_size), drv_size);

- DRM_DEBUG("comm=\"%s\" pid=%d, dev=0x%lx, auth=%d, %s\n",
- current->comm, task_pid_nr(current),
- (long)old_encode_dev(file_priv->minor->kdev->devt),
- file_priv->authenticated, ioctl->name);
+ drm_dbg_core(dev, "comm=\"%s\" pid=%d, dev=0x%lx, auth=%d, %s\n",
+ current->comm, task_pid_nr(current),
+ (long)old_encode_dev(file_priv->minor->kdev->devt),
+ file_priv->authenticated, ioctl->name);

/* Do not trust userspace, use our own definition */
func = ioctl->func;

if (unlikely(!func)) {
- DRM_DEBUG("no function\n");
+ drm_dbg_core(dev, "no function\n");
retcode = -EINVAL;
goto err_i1;
}
@@ -894,16 +894,16 @@ long drm_ioctl(struct file *filp,

err_i1:
if (!ioctl)
- DRM_DEBUG("invalid ioctl: comm=\"%s\", pid=%d, dev=0x%lx, auth=%d, cmd=0x%02x, nr=0x%02x\n",
- current->comm, task_pid_nr(current),
- (long)old_encode_dev(file_priv->minor->kdev->devt),
- file_priv->authenticated, cmd, nr);
+ drm_dbg_core(dev, "invalid ioctl: comm=\"%s\", pid=%d, dev=0x%lx, auth=%d, cmd=0x%02x, nr=0x%02x\n",
+ current->comm, task_pid_nr(current),
+ (long)old_encode_dev(file_priv->minor->kdev->devt),
+ file_priv->authenticated, cmd, nr);

if (kdata != stack_kdata)
kfree(kdata);
if (retcode)
- DRM_DEBUG("comm=\"%s\", pid=%d, ret=%d\n", current->comm,
- task_pid_nr(current), retcode);
+ drm_dbg_core(dev, "comm=\"%s\", pid=%d, ret=%d\n", current->comm,
+ task_pid_nr(current), retcode);
return retcode;
}
EXPORT_SYMBOL(drm_ioctl);
diff --git a/drivers/gpu/drm/drm_irq.c b/drivers/gpu/drm/drm_irq.c
index d327638e15ee..e70d6975310c 100644
--- a/drivers/gpu/drm/drm_irq.c
+++ b/drivers/gpu/drm/drm_irq.c
@@ -78,7 +78,7 @@ static int drm_legacy_irq_install(struct drm_device *dev, int irq)
return -EBUSY;
dev->irq_enabled = true;

- DRM_DEBUG("irq=%d\n", irq);
+ drm_dbg_core(dev, "irq=%d\n", irq);

/* Before installing handler */
if (dev->driver->irq_preinstall)
@@ -146,7 +146,7 @@ int drm_legacy_irq_uninstall(struct drm_device *dev)
if (!irq_enabled)
return -EINVAL;

- DRM_DEBUG("irq=%d\n", dev->irq);
+ drm_dbg_core(dev, "irq=%d\n", dev->irq);

if (drm_core_check_feature(dev, DRIVER_LEGACY))
vga_client_unregister(to_pci_dev(dev->dev));
diff --git a/drivers/gpu/drm/drm_lease.c b/drivers/gpu/drm/drm_lease.c
index d72c2fac0ff1..a4b50fdbaaf7 100644
--- a/drivers/gpu/drm/drm_lease.c
+++ b/drivers/gpu/drm/drm_lease.c
@@ -673,7 +673,7 @@ int drm_mode_get_lease_ioctl(struct drm_device *dev,
count++;
}

- DRM_DEBUG("lease holds %d objects\n", count);
+ drm_dbg_core(dev, "lease holds %d objects\n", count);
if (ret == 0)
arg->count_objects = count;

diff --git a/drivers/gpu/drm/drm_legacy_misc.c b/drivers/gpu/drm/drm_legacy_misc.c
index d4c5434062d7..ad0eef292cb0 100644
--- a/drivers/gpu/drm/drm_legacy_misc.c
+++ b/drivers/gpu/drm/drm_legacy_misc.c
@@ -70,7 +70,7 @@ int drm_legacy_setup(struct drm_device * dev)
return ret;


- DRM_DEBUG("\n");
+ drm_dbg_core(dev, "\n");
return 0;
}

@@ -95,7 +95,7 @@ void drm_legacy_dev_reinit(struct drm_device *dev)
dev->last_context = 0;
dev->if_version = 0;

- DRM_DEBUG("lastclose completed\n");
+ drm_dbg_core(dev, "lastclose completed\n");
}

void drm_master_legacy_init(struct drm_master *master)
diff --git a/drivers/gpu/drm/drm_lock.c b/drivers/gpu/drm/drm_lock.c
index 0bca8b175616..6cc03a1ed0c6 100644
--- a/drivers/gpu/drm/drm_lock.c
+++ b/drivers/gpu/drm/drm_lock.c
@@ -180,10 +180,10 @@ int drm_legacy_lock(struct drm_device *dev, void *data,
return -EINVAL;
}

- DRM_DEBUG("%d (pid %d) requests lock (0x%08x), flags = 0x%08x\n",
- lock->context, task_pid_nr(current),
- master->lock.hw_lock ? master->lock.hw_lock->lock : -1,
- lock->flags);
+ drm_dbg_core(dev, "%d (pid %d) requests lock (0x%08x), flags = 0x%08x\n",
+ lock->context, task_pid_nr(current),
+ master->lock.hw_lock ? master->lock.hw_lock->lock : -1,
+ lock->flags);

add_wait_queue(&master->lock.lock_queue, &entry);
spin_lock_bh(&master->lock.spinlock);
@@ -219,8 +219,8 @@ int drm_legacy_lock(struct drm_device *dev, void *data,
__set_current_state(TASK_RUNNING);
remove_wait_queue(&master->lock.lock_queue, &entry);

- DRM_DEBUG("%d %s\n", lock->context,
- ret ? "interrupted" : "has lock");
+ drm_dbg_core(dev, "%d %s\n", lock->context,
+ ret ? "interrupted" : "has lock");
if (ret) return ret;

/* don't set the block all signals on the master process for now
@@ -234,8 +234,8 @@ int drm_legacy_lock(struct drm_device *dev, void *data,
if (dev->driver->dma_quiescent && (lock->flags & _DRM_LOCK_QUIESCENT))
{
if (dev->driver->dma_quiescent(dev)) {
- DRM_DEBUG("%d waiting for DMA quiescent\n",
- lock->context);
+ drm_dbg_core(dev, "%d waiting for DMA quiescent\n",
+ lock->context);
return -EBUSY;
}
}
@@ -345,8 +345,8 @@ void drm_legacy_lock_release(struct drm_device *dev, struct file *filp)
return;

if (drm_legacy_i_have_hw_lock(dev, file_priv)) {
- DRM_DEBUG("File %p released, freeing lock for context %d\n",
- filp, _DRM_LOCKING_CONTEXT(file_priv->master->lock.hw_lock->lock));
+ drm_dbg_core(dev, "File %p released, freeing lock for context %d\n",
+ filp, _DRM_LOCKING_CONTEXT(file_priv->master->lock.hw_lock->lock));
drm_legacy_lock_free(&file_priv->master->lock,
_DRM_LOCKING_CONTEXT(file_priv->master->lock.hw_lock->lock));
}
diff --git a/drivers/gpu/drm/drm_mode_object.c b/drivers/gpu/drm/drm_mode_object.c
index ba1608effc0f..6e5a970043fc 100644
--- a/drivers/gpu/drm/drm_mode_object.c
+++ b/drivers/gpu/drm/drm_mode_object.c
@@ -192,7 +192,8 @@ EXPORT_SYMBOL(drm_mode_object_find);
void drm_mode_object_put(struct drm_mode_object *obj)
{
if (obj->free_cb) {
- DRM_DEBUG("OBJ ID: %d (%d)\n", obj->id, kref_read(&obj->refcount));
+ drm_dbg_core(NULL, "OBJ ID: %d (%d)\n", obj->id,
+ kref_read(&obj->refcount));
kref_put(&obj->refcount, obj->free_cb);
}
}
@@ -209,7 +210,8 @@ EXPORT_SYMBOL(drm_mode_object_put);
void drm_mode_object_get(struct drm_mode_object *obj)
{
if (obj->free_cb) {
- DRM_DEBUG("OBJ ID: %d (%d)\n", obj->id, kref_read(&obj->refcount));
+ drm_dbg_core(NULL, "OBJ ID: %d (%d)\n", obj->id,
+ kref_read(&obj->refcount));
kref_get(&obj->refcount);
}
}
diff --git a/drivers/gpu/drm/drm_pci.c b/drivers/gpu/drm/drm_pci.c
index 18cf7fa23698..1695dd0eadad 100644
--- a/drivers/gpu/drm/drm_pci.c
+++ b/drivers/gpu/drm/drm_pci.c
@@ -85,8 +85,8 @@ static int drm_legacy_pci_irq_by_busid(struct drm_device *dev, struct drm_irq_bu

p->irq = pdev->irq;

- DRM_DEBUG("%d:%d:%d => IRQ %d\n", p->busnum, p->devnum, p->funcnum,
- p->irq);
+ drm_dbg_core(dev, "%d:%d:%d => IRQ %d\n",
+ p->busnum, p->devnum, p->funcnum, p->irq);
return 0;
}

@@ -151,12 +151,12 @@ static int drm_legacy_get_pci_dev(struct pci_dev *pdev,
struct drm_device *dev;
int ret;

- DRM_DEBUG("\n");
-
dev = drm_dev_alloc(driver, &pdev->dev);
if (IS_ERR(dev))
return PTR_ERR(dev);

+ drm_dbg_core(dev, "\n");
+
ret = pci_enable_device(pdev);
if (ret)
goto err_free;
@@ -203,7 +203,7 @@ int drm_legacy_pci_init(const struct drm_driver *driver,
const struct pci_device_id *pid;
int i;

- DRM_DEBUG("\n");
+ drm_dbg_core(NULL, "\n");

if (WARN_ON(!(driver->driver_features & DRIVER_LEGACY)))
return -EINVAL;
@@ -247,7 +247,7 @@ void drm_legacy_pci_exit(const struct drm_driver *driver,
{
struct drm_device *dev, *tmp;

- DRM_DEBUG("\n");
+ drm_dbg_core(dev, "\n");

if (!(driver->driver_features & DRIVER_LEGACY)) {
WARN_ON(1);
diff --git a/drivers/gpu/drm/drm_plane.c b/drivers/gpu/drm/drm_plane.c
index a650f06e4cea..5e3b82bf197a 100644
--- a/drivers/gpu/drm/drm_plane.c
+++ b/drivers/gpu/drm/drm_plane.c
@@ -1255,17 +1255,19 @@ int drm_mode_page_flip_ioctl(struct drm_device *dev,
switch (page_flip->flags & DRM_MODE_PAGE_FLIP_TARGET) {
case DRM_MODE_PAGE_FLIP_TARGET_ABSOLUTE:
if ((int)(target_vblank - current_vblank) > 1) {
- DRM_DEBUG("Invalid absolute flip target %u, "
- "must be <= %u\n", target_vblank,
- current_vblank + 1);
+ drm_dbg_core(dev,
+ "Invalid absolute flip target %u, "
+ "must be <= %u\n", target_vblank,
+ current_vblank + 1);
drm_crtc_vblank_put(crtc);
return -EINVAL;
}
break;
case DRM_MODE_PAGE_FLIP_TARGET_RELATIVE:
if (target_vblank != 0 && target_vblank != 1) {
- DRM_DEBUG("Invalid relative flip target %u, "
- "must be 0 or 1\n", target_vblank);
+ drm_dbg_core(dev,
+ "Invalid relative flip target %u, "
+ "must be 0 or 1\n", target_vblank);
drm_crtc_vblank_put(crtc);
return -EINVAL;
}
diff --git a/drivers/gpu/drm/drm_scatter.c b/drivers/gpu/drm/drm_scatter.c
index 5b0b2140d535..08b3eb586484 100644
--- a/drivers/gpu/drm/drm_scatter.c
+++ b/drivers/gpu/drm/drm_scatter.c
@@ -82,7 +82,7 @@ int drm_legacy_sg_alloc(struct drm_device *dev, void *data,
struct drm_sg_mem *entry;
unsigned long pages, i, j;

- DRM_DEBUG("\n");
+ drm_dbg_core(dev, "\n");

if (!drm_core_check_feature(dev, DRIVER_LEGACY))
return -EOPNOTSUPP;
@@ -101,7 +101,7 @@ int drm_legacy_sg_alloc(struct drm_device *dev, void *data,
return -ENOMEM;

pages = (request->size + PAGE_SIZE - 1) / PAGE_SIZE;
- DRM_DEBUG("size=%ld pages=%ld\n", request->size, pages);
+ drm_dbg_core(dev, "size=%ld pages=%ld\n", request->size, pages);

entry->pages = pages;
entry->pagelist = kcalloc(pages, sizeof(*entry->pagelist), GFP_KERNEL);
@@ -132,8 +132,8 @@ int drm_legacy_sg_alloc(struct drm_device *dev, void *data,

entry->handle = ScatterHandle((unsigned long)entry->virtual);

- DRM_DEBUG("handle = %08lx\n", entry->handle);
- DRM_DEBUG("virtual = %p\n", entry->virtual);
+ drm_dbg_core(dev, "handle = %08lx\n", entry->handle);
+ drm_dbg_core(dev, "virtual = %p\n", entry->virtual);

for (i = (unsigned long)entry->virtual, j = 0; j < pages;
i += PAGE_SIZE, j++) {
@@ -213,7 +213,7 @@ int drm_legacy_sg_free(struct drm_device *dev, void *data,
if (!entry || entry->handle != request->handle)
return -EINVAL;

- DRM_DEBUG("virtual = %p\n", entry->virtual);
+ drm_dbg_core(dev, "virtual = %p\n", entry->virtual);

drm_sg_cleanup(entry);

diff --git a/drivers/gpu/drm/drm_syncobj.c b/drivers/gpu/drm/drm_syncobj.c
index 0c2be8360525..e84957a0f319 100644
--- a/drivers/gpu/drm/drm_syncobj.c
+++ b/drivers/gpu/drm/drm_syncobj.c
@@ -298,7 +298,7 @@ void drm_syncobj_add_point(struct drm_syncobj *syncobj,
prev = drm_syncobj_fence_get(syncobj);
/* You are adding an unorder point to timeline, which could cause payload returned from query_ioctl is 0! */
if (prev && prev->seqno >= point)
- DRM_DEBUG("You are adding an unorder point to timeline!\n");
+ drm_dbg_core(NULL, "You are adding an unorder point to timeline!\n");
dma_fence_chain_init(chain, prev, fence, point);
rcu_assign_pointer(syncobj->fence, &chain->base);

diff --git a/drivers/gpu/drm/drm_sysfs.c b/drivers/gpu/drm/drm_sysfs.c
index 183130355997..6b090d71d45a 100644
--- a/drivers/gpu/drm/drm_sysfs.c
+++ b/drivers/gpu/drm/drm_sysfs.c
@@ -342,8 +342,8 @@ int drm_sysfs_connector_add(struct drm_connector *connector)
if (r)
goto err_free;

- DRM_DEBUG("adding \"%s\" to sysfs\n",
- connector->name);
+ drm_dbg_core(dev, "adding \"%s\" to sysfs\n",
+ connector->name);

r = device_add(kdev);
if (r) {
@@ -371,8 +371,8 @@ void drm_sysfs_connector_remove(struct drm_connector *connector)
if (connector->ddc)
sysfs_remove_link(&connector->kdev->kobj, "ddc");

- DRM_DEBUG("removing \"%s\" from sysfs\n",
- connector->name);
+ drm_dbg_core(connector->dev, "removing \"%s\" from sysfs\n",
+ connector->name);

device_unregister(connector->kdev);
connector->kdev = NULL;
@@ -383,7 +383,7 @@ void drm_sysfs_lease_event(struct drm_device *dev)
char *event_string = "LEASE=1";
char *envp[] = { event_string, NULL };

- DRM_DEBUG("generating lease event\n");
+ drm_dbg_core(dev, "generating lease event\n");

kobject_uevent_env(&dev->primary->kdev->kobj, KOBJ_CHANGE, envp);
}
@@ -404,7 +404,7 @@ void drm_sysfs_hotplug_event(struct drm_device *dev)
char *event_string = "HOTPLUG=1";
char *envp[] = { event_string, NULL };

- DRM_DEBUG("generating hotplug event\n");
+ drm_dbg_core(dev, "generating hotplug event\n");

kobject_uevent_env(&dev->primary->kdev->kobj, KOBJ_CHANGE, envp);
}
@@ -460,7 +460,7 @@ void drm_sysfs_connector_status_event(struct drm_connector *connector,
snprintf(prop_id, ARRAY_SIZE(prop_id),
"PROPERTY=%u", property->base.id);

- DRM_DEBUG("generating connector status event\n");
+ drm_dbg_core(dev, "generating connector status event\n");

kobject_uevent_env(&dev->primary->kdev->kobj, KOBJ_CHANGE, envp);
}
diff --git a/drivers/gpu/drm/drm_vm.c b/drivers/gpu/drm/drm_vm.c
index cdb956af2079..6349807e8898 100644
--- a/drivers/gpu/drm/drm_vm.c
+++ b/drivers/gpu/drm/drm_vm.c
@@ -168,12 +168,11 @@ static vm_fault_t drm_vm_fault(struct vm_fault *vmf)
get_page(page);
vmf->page = page;

- DRM_DEBUG
- ("baddr = 0x%llx page = 0x%p, offset = 0x%llx, count=%d\n",
- (unsigned long long)baddr,
- agpmem->memory->pages[offset],
- (unsigned long long)offset,
- page_count(page));
+ drm_dbg_core(dev, "baddr = 0x%llx page = 0x%p, offset = 0x%llx, count=%d\n",
+ (unsigned long long)baddr,
+ agpmem->memory->pages[offset],
+ (unsigned long long)offset,
+ page_count(page));
return 0;
}
vm_fault_error:
@@ -215,7 +214,7 @@ static vm_fault_t drm_vm_shm_fault(struct vm_fault *vmf)
get_page(page);
vmf->page = page;

- DRM_DEBUG("shm_fault 0x%lx\n", offset);
+ drm_dbg_core(NULL, "shm_fault 0x%lx\n", offset);
return 0;
}

@@ -236,8 +235,8 @@ static void drm_vm_shm_close(struct vm_area_struct *vma)
struct drm_map_list *r_list;
int found_maps = 0;

- DRM_DEBUG("0x%08lx,0x%08lx\n",
- vma->vm_start, vma->vm_end - vma->vm_start);
+ drm_dbg_core(dev, "0x%08lx,0x%08lx\n",
+ vma->vm_start, vma->vm_end - vma->vm_start);

map = vma->vm_private_data;

@@ -319,7 +318,7 @@ static vm_fault_t drm_vm_dma_fault(struct vm_fault *vmf)
get_page(page);
vmf->page = page;

- DRM_DEBUG("dma_fault 0x%lx (page %lu)\n", offset, page_nr);
+ drm_dbg_core(dev, "dma_fault 0x%lx (page %lu)\n", offset, page_nr);
return 0;
}

@@ -391,8 +390,8 @@ static void drm_vm_open_locked(struct drm_device *dev,
{
struct drm_vma_entry *vma_entry;

- DRM_DEBUG("0x%08lx,0x%08lx\n",
- vma->vm_start, vma->vm_end - vma->vm_start);
+ drm_dbg_core(dev, "0x%08lx,0x%08lx\n",
+ vma->vm_start, vma->vm_end - vma->vm_start);

vma_entry = kmalloc(sizeof(*vma_entry), GFP_KERNEL);
if (vma_entry) {
@@ -417,8 +416,8 @@ static void drm_vm_close_locked(struct drm_device *dev,
{
struct drm_vma_entry *pt, *temp;

- DRM_DEBUG("0x%08lx,0x%08lx\n",
- vma->vm_start, vma->vm_end - vma->vm_start);
+ drm_dbg_core(dev, "0x%08lx,0x%08lx\n",
+ vma->vm_start, vma->vm_end - vma->vm_start);

list_for_each_entry_safe(pt, temp, &dev->vmalist, head) {
if (pt->vma == vma) {
@@ -466,8 +465,8 @@ static int drm_mmap_dma(struct file *filp, struct vm_area_struct *vma)

dev = priv->minor->dev;
dma = dev->dma;
- DRM_DEBUG("start = 0x%lx, end = 0x%lx, page offset = 0x%lx\n",
- vma->vm_start, vma->vm_end, vma->vm_pgoff);
+ drm_dbg_core(dev, "start = 0x%lx, end = 0x%lx, page offset = 0x%lx\n",
+ vma->vm_start, vma->vm_end, vma->vm_pgoff);

/* Length must match exact page count */
if (!dma || (length >> PAGE_SHIFT) != dma->page_count) {
@@ -528,8 +527,8 @@ static int drm_mmap_locked(struct file *filp, struct vm_area_struct *vma)
resource_size_t offset = 0;
struct drm_hash_item *hash;

- DRM_DEBUG("start = 0x%lx, end = 0x%lx, page offset = 0x%lx\n",
- vma->vm_start, vma->vm_end, vma->vm_pgoff);
+ drm_dbg_core(dev, "start = 0x%lx, end = 0x%lx, page offset = 0x%lx\n",
+ vma->vm_start, vma->vm_end, vma->vm_pgoff);

if (!priv->authenticated)
return -EACCES;
@@ -600,10 +599,10 @@ static int drm_mmap_locked(struct file *filp, struct vm_area_struct *vma)
vma->vm_end - vma->vm_start,
vma->vm_page_prot))
return -EAGAIN;
- DRM_DEBUG(" Type = %d; start = 0x%lx, end = 0x%lx,"
- " offset = 0x%llx\n",
- map->type,
- vma->vm_start, vma->vm_end, (unsigned long long)(map->offset + offset));
+ drm_dbg_core(dev,
+ " Type = %d; start = 0x%lx, end = 0x%lx, offset = 0x%llx\n",
+ map->type, vma->vm_start, vma->vm_end,
+ (unsigned long long)(map->offset + offset));

vma->vm_ops = &drm_vm_ops;
break;
--
2.35.1


2022-12-20 20:48:15

by Siddh Raman Pant

[permalink] [raw]
Subject: [PATCH 07/10] drm: Remove usage of deprecated DRM_DEBUG_KMS

drm_print.h says DRM_DEBUG_KMS is deprecated in favor of
drm_dbg_kms().

Signed-off-by: Siddh Raman Pant <[email protected]>
---
drivers/gpu/drm/drm_client_modeset.c | 112 ++++++++++++++-----------
drivers/gpu/drm/drm_color_mgmt.c | 4 +-
drivers/gpu/drm/drm_connector.c | 21 ++---
drivers/gpu/drm/drm_crtc.c | 36 ++++----
drivers/gpu/drm/drm_crtc_helper.c | 54 ++++++------
drivers/gpu/drm/drm_debugfs_crc.c | 5 +-
drivers/gpu/drm/drm_displayid.c | 4 +-
drivers/gpu/drm/drm_edid.c | 17 ++--
drivers/gpu/drm/drm_gem_shmem_helper.c | 4 +-
drivers/gpu/drm/drm_lease.c | 2 +-
drivers/gpu/drm/drm_mipi_dbi.c | 7 +-
drivers/gpu/drm/drm_modes.c | 10 +--
drivers/gpu/drm/drm_plane.c | 32 +++----
drivers/gpu/drm/drm_probe_helper.c | 39 ++++-----
drivers/gpu/drm/drm_rect.c | 4 +-
drivers/gpu/drm/drm_sysfs.c | 8 +-
16 files changed, 189 insertions(+), 170 deletions(-)

diff --git a/drivers/gpu/drm/drm_client_modeset.c b/drivers/gpu/drm/drm_client_modeset.c
index c4517dea924e..7c1e8352ff71 100644
--- a/drivers/gpu/drm/drm_client_modeset.c
+++ b/drivers/gpu/drm/drm_client_modeset.c
@@ -246,8 +246,9 @@ static void drm_client_connectors_enabled(struct drm_connector **connectors,
for (i = 0; i < connector_count; i++) {
connector = connectors[i];
enabled[i] = drm_connector_enabled(connector, true);
- DRM_DEBUG_KMS("connector %d enabled? %s\n", connector->base.id,
- connector->display_info.non_desktop ? "non desktop" : str_yes_no(enabled[i]));
+ drm_dbg_kms(connector->dev, "connector %d enabled? %s\n",
+ connector->base.id,
+ connector->display_info.non_desktop ? "non desktop" : str_yes_no(enabled[i]));

any_enabled |= enabled[i];
}
@@ -307,7 +308,7 @@ static bool drm_client_target_cloned(struct drm_device *dev,
}

if (can_clone) {
- DRM_DEBUG_KMS("can clone using command line\n");
+ drm_dbg_kms(dev, "can clone using command line\n");
return true;
}

@@ -332,7 +333,7 @@ static bool drm_client_target_cloned(struct drm_device *dev,
}

if (can_clone) {
- DRM_DEBUG_KMS("can clone using 1024x768\n");
+ drm_dbg_kms(dev, "can clone using 1024x768\n");
return true;
}
drm_info(dev, "kms: can't enable cloning when we probably wanted to.\n");
@@ -356,8 +357,9 @@ static int drm_client_get_tile_offsets(struct drm_connector **connectors,
continue;

if (!modes[i] && (h_idx || v_idx)) {
- DRM_DEBUG_KMS("no modes for connector tiled %d %d\n", i,
- connector->base.id);
+ drm_dbg_kms(connector->dev,
+ "no modes for connector tiled %d %d\n",
+ i, connector->base.id);
continue;
}
if (connector->tile_h_loc < h_idx)
@@ -368,7 +370,8 @@ static int drm_client_get_tile_offsets(struct drm_connector **connectors,
}
offsets[idx].x = hoffset;
offsets[idx].y = voffset;
- DRM_DEBUG_KMS("returned %d %d for %d %d\n", hoffset, voffset, h_idx, v_idx);
+ drm_dbg_kms(NULL, "returned %d %d for %d %d\n",
+ hoffset, voffset, h_idx, v_idx);
return 0;
}

@@ -425,14 +428,16 @@ static bool drm_client_target_preferred(struct drm_connector **connectors,
drm_client_get_tile_offsets(connectors, connector_count, modes, offsets, i,
connector->tile_h_loc, connector->tile_v_loc);
}
- DRM_DEBUG_KMS("looking for cmdline mode on connector %d\n",
- connector->base.id);
+ drm_dbg_kms(connector->dev,
+ "looking for cmdline mode on connector %d\n",
+ connector->base.id);

/* got for command line mode first */
modes[i] = drm_connector_pick_cmdline_mode(connector);
if (!modes[i]) {
- DRM_DEBUG_KMS("looking for preferred mode on connector %d %d\n",
- connector->base.id, connector->tile_group ? connector->tile_group->id : 0);
+ drm_dbg_kms(connector->dev,
+ "looking for preferred mode on connector %d %d\n",
+ connector->base.id, connector->tile_group ? connector->tile_group->id : 0);
modes[i] = drm_connector_has_preferred_mode(connector, width, height);
}
/* No preferred modes, pick one off the list */
@@ -454,16 +459,17 @@ static bool drm_client_target_preferred(struct drm_connector **connectors,
(connector->tile_h_loc == 0 &&
connector->tile_v_loc == 0 &&
!drm_connector_get_tiled_mode(connector))) {
- DRM_DEBUG_KMS("Falling back to non tiled mode on Connector %d\n",
- connector->base.id);
+ drm_dbg_kms(connector->dev,
+ "Falling back to non tiled mode on Connector %d\n",
+ connector->base.id);
modes[i] = drm_connector_fallback_non_tiled_mode(connector);
} else {
modes[i] = drm_connector_get_tiled_mode(connector);
}
}

- DRM_DEBUG_KMS("found mode %s\n", modes[i] ? modes[i]->name :
- "none");
+ drm_dbg_kms(connector->dev, "found mode %s\n",
+ modes[i] ? modes[i]->name : "none");
conn_configured |= BIT_ULL(i);
}

@@ -623,15 +629,17 @@ static bool drm_client_firmware_config(struct drm_client_dev *client,
num_connectors_detected++;

if (!enabled[i]) {
- DRM_DEBUG_KMS("connector %s not enabled, skipping\n",
- connector->name);
+ drm_dbg_kms(connector->dev,
+ "connector %s not enabled, skipping\n",
+ connector->name);
conn_configured |= BIT(i);
continue;
}

if (connector->force == DRM_FORCE_OFF) {
- DRM_DEBUG_KMS("connector %s is disabled by user, skipping\n",
- connector->name);
+ drm_dbg_kms(connector->dev,
+ "connector %s is disabled by user, skipping\n",
+ connector->name);
enabled[i] = false;
continue;
}
@@ -641,8 +649,9 @@ static bool drm_client_firmware_config(struct drm_client_dev *client,
if (connector->force > DRM_FORCE_OFF)
goto bail;

- DRM_DEBUG_KMS("connector %s has no encoder or crtc, skipping\n",
- connector->name);
+ drm_dbg_kms(connector->dev,
+ "connector %s has no encoder or crtc, skipping\n",
+ connector->name);
enabled[i] = false;
conn_configured |= BIT(i);
continue;
@@ -659,28 +668,32 @@ static bool drm_client_firmware_config(struct drm_client_dev *client,
*/
for (j = 0; j < count; j++) {
if (crtcs[j] == new_crtc) {
- DRM_DEBUG_KMS("fallback: cloned configuration\n");
+ drm_dbg_kms(connector->dev,
+ "fallback: cloned configuration\n");
goto bail;
}
}

- DRM_DEBUG_KMS("looking for cmdline mode on connector %s\n",
- connector->name);
+ drm_dbg_kms(connector->dev,
+ "looking for cmdline mode on connector %s\n",
+ connector->name);

/* go for command line mode first */
modes[i] = drm_connector_pick_cmdline_mode(connector);

/* try for preferred next */
if (!modes[i]) {
- DRM_DEBUG_KMS("looking for preferred mode on connector %s %d\n",
- connector->name, connector->has_tile);
+ drm_dbg_kms(connector->dev,
+ "looking for preferred mode on connector %s %d\n",
+ connector->name, connector->has_tile);
modes[i] = drm_connector_has_preferred_mode(connector, width, height);
}

/* No preferred mode marked by the EDID? Are there any modes? */
if (!modes[i] && !list_empty(&connector->modes)) {
- DRM_DEBUG_KMS("using first mode listed on connector %s\n",
- connector->name);
+ drm_dbg_kms(connector->dev,
+ "using first mode listed on connector %s\n",
+ connector->name);
modes[i] = list_first_entry(&connector->modes,
struct drm_display_mode,
head);
@@ -699,8 +712,9 @@ static bool drm_client_firmware_config(struct drm_client_dev *client,
* This is crtc->mode and not crtc->state->mode for the
* fastboot check to work correctly.
*/
- DRM_DEBUG_KMS("looking for current mode on connector %s\n",
- connector->name);
+ drm_dbg_kms(connector->dev,
+ "looking for current mode on connector %s\n",
+ connector->name);
modes[i] = &connector->state->crtc->mode;
}
/*
@@ -709,18 +723,20 @@ static bool drm_client_firmware_config(struct drm_client_dev *client,
*/
if (connector->has_tile &&
num_tiled_conns < connector->num_h_tile * connector->num_v_tile) {
- DRM_DEBUG_KMS("Falling back to non tiled mode on Connector %d\n",
- connector->base.id);
+ drm_dbg_kms(connector->dev,
+ "Falling back to non tiled mode on Connector %d\n",
+ connector->base.id);
modes[i] = drm_connector_fallback_non_tiled_mode(connector);
}
crtcs[i] = new_crtc;

- DRM_DEBUG_KMS("connector %s on [CRTC:%d:%s]: %dx%d%s\n",
- connector->name,
- connector->state->crtc->base.id,
- connector->state->crtc->name,
- modes[i]->hdisplay, modes[i]->vdisplay,
- modes[i]->flags & DRM_MODE_FLAG_INTERLACE ? "i" : "");
+ drm_dbg_kms(connector->dev,
+ "connector %s on [CRTC:%d:%s]: %dx%d%s\n",
+ connector->name,
+ connector->state->crtc->base.id,
+ connector->state->crtc->name,
+ modes[i]->hdisplay, modes[i]->vdisplay,
+ modes[i]->flags & DRM_MODE_FLAG_INTERLACE ? "i" : "");

fallback = false;
conn_configured |= BIT(i);
@@ -736,15 +752,15 @@ static bool drm_client_firmware_config(struct drm_client_dev *client,
*/
if (num_connectors_enabled != num_connectors_detected &&
num_connectors_enabled < dev->mode_config.num_crtc) {
- DRM_DEBUG_KMS("fallback: Not all outputs enabled\n");
- DRM_DEBUG_KMS("Enabled: %i, detected: %i\n", num_connectors_enabled,
- num_connectors_detected);
+ drm_dbg_kms(NULL, "fallback: Not all outputs enabled\n");
+ drm_dbg_kms(NULL, "Enabled: %i, detected: %i\n",
+ num_connectors_enabled, num_connectors_detected);
fallback = true;
}

if (fallback) {
bail:
- DRM_DEBUG_KMS("Not using firmware configuration\n");
+ drm_dbg_kms(NULL, "Not using firmware configuration\n");
memcpy(enabled, save_enabled, count);
ret = false;
}
@@ -781,7 +797,7 @@ int drm_client_modeset_probe(struct drm_client_dev *client, unsigned int width,
int i, ret = 0;
bool *enabled;

- DRM_DEBUG_KMS("\n");
+ drm_dbg_kms(dev, "\n");

if (!width)
width = dev->mode_config.max_width;
@@ -823,7 +839,7 @@ int drm_client_modeset_probe(struct drm_client_dev *client, unsigned int width,
for (i = 0; i < connector_count; i++)
total_modes_count += connectors[i]->funcs->fill_modes(connectors[i], width, height);
if (!total_modes_count)
- DRM_DEBUG_KMS("No connectors reported connected with modes\n");
+ drm_dbg_kms(dev, "No connectors reported connected with modes\n");
drm_client_connectors_enabled(connectors, connector_count, enabled);

if (!drm_client_firmware_config(client, connectors, connector_count, crtcs,
@@ -838,8 +854,8 @@ int drm_client_modeset_probe(struct drm_client_dev *client, unsigned int width,
offsets, enabled, width, height))
drm_err(client->dev, "Unable to find initial modes\n");

- DRM_DEBUG_KMS("picking CRTCs for %dx%d config\n",
- width, height);
+ drm_dbg_kms(dev, "picking CRTCs for %dx%d config\n",
+ width, height);

drm_client_pick_crtcs(client, connectors, connector_count,
crtcs, modes, 0, width, height);
@@ -857,8 +873,8 @@ int drm_client_modeset_probe(struct drm_client_dev *client, unsigned int width,
struct drm_mode_set *modeset = drm_client_find_modeset(client, crtc);
struct drm_connector *connector = connectors[i];

- DRM_DEBUG_KMS("desired mode %s set on crtc %d (%d,%d)\n",
- mode->name, crtc->base.id, offset->x, offset->y);
+ drm_dbg_kms(dev, "desired mode %s set on crtc %d (%d,%d)\n",
+ mode->name, crtc->base.id, offset->x, offset->y);

if (WARN_ON_ONCE(modeset->num_connectors == DRM_CLIENT_MAX_CLONED_CONNECTORS ||
(dev->mode_config.num_crtc > 1 && modeset->num_connectors == 1))) {
diff --git a/drivers/gpu/drm/drm_color_mgmt.c b/drivers/gpu/drm/drm_color_mgmt.c
index d021497841b8..a2761a6ce11f 100644
--- a/drivers/gpu/drm/drm_color_mgmt.c
+++ b/drivers/gpu/drm/drm_color_mgmt.c
@@ -612,7 +612,7 @@ int drm_color_lut_check(const struct drm_property_blob *lut, u32 tests)
if (tests & DRM_COLOR_LUT_EQUAL_CHANNELS) {
if (entry[i].red != entry[i].blue ||
entry[i].red != entry[i].green) {
- DRM_DEBUG_KMS("All LUT entries must have equal r/g/b\n");
+ drm_dbg_kms(NULL, "All LUT entries must have equal r/g/b\n");
return -EINVAL;
}
}
@@ -621,7 +621,7 @@ int drm_color_lut_check(const struct drm_property_blob *lut, u32 tests)
if (entry[i].red < entry[i - 1].red ||
entry[i].green < entry[i - 1].green ||
entry[i].blue < entry[i - 1].blue) {
- DRM_DEBUG_KMS("LUT entries must never decrease.\n");
+ drm_dbg_kms(NULL, "LUT entries must never decrease.\n");
return -EINVAL;
}
}
diff --git a/drivers/gpu/drm/drm_connector.c b/drivers/gpu/drm/drm_connector.c
index 34c26b2a974e..3294f2e41e7a 100644
--- a/drivers/gpu/drm/drm_connector.c
+++ b/drivers/gpu/drm/drm_connector.c
@@ -178,13 +178,14 @@ static void drm_connector_get_cmdline_mode(struct drm_connector *connector)
mode->panel_orientation);
}

- DRM_DEBUG_KMS("cmdline mode for connector %s %s %dx%d@%dHz%s%s%s\n",
- connector->name, mode->name,
- mode->xres, mode->yres,
- mode->refresh_specified ? mode->refresh : 60,
- mode->rb ? " reduced blanking" : "",
- mode->margins ? " with margins" : "",
- mode->interlace ? " interlaced" : "");
+ drm_dbg_kms(connector->dev,
+ "cmdline mode for connector %s %s %dx%d@%dHz%s%s%s\n",
+ connector->name, mode->name,
+ mode->xres, mode->yres,
+ mode->refresh_specified ? mode->refresh : 60,
+ mode->rb ? " reduced blanking" : "",
+ mode->margins ? " with margins" : "",
+ mode->interlace ? " interlaced" : "");
}

static void drm_connector_free(struct kref *kref)
@@ -244,9 +245,9 @@ static int __drm_connector_init(struct drm_device *dev,
/* connector index is used with 32bit bitmasks */
ret = ida_alloc_max(&config->connector_ida, 31, GFP_KERNEL);
if (ret < 0) {
- DRM_DEBUG_KMS("Failed to allocate %s connector index: %d\n",
- drm_connector_enum_list[connector_type].name,
- ret);
+ drm_dbg_kms(dev, "Failed to allocate %s connector index: %d\n",
+ drm_connector_enum_list[connector_type].name,
+ ret);
goto out_put;
}
connector->index = ret;
diff --git a/drivers/gpu/drm/drm_crtc.c b/drivers/gpu/drm/drm_crtc.c
index df9bf3c9206e..adc426561e17 100644
--- a/drivers/gpu/drm/drm_crtc.c
+++ b/drivers/gpu/drm/drm_crtc.c
@@ -730,10 +730,10 @@ int drm_mode_setcrtc(struct drm_device *dev, void *data,

crtc = drm_crtc_find(dev, file_priv, crtc_req->crtc_id);
if (!crtc) {
- DRM_DEBUG_KMS("Unknown CRTC ID %d\n", crtc_req->crtc_id);
+ drm_dbg_kms(dev, "Unknown CRTC ID %d\n", crtc_req->crtc_id);
return -ENOENT;
}
- DRM_DEBUG_KMS("[CRTC:%d:%s]\n", crtc->base.id, crtc->name);
+ drm_dbg_kms(dev, "[CRTC:%d:%s]\n", crtc->base.id, crtc->name);

plane = crtc->primary;

@@ -756,7 +756,7 @@ int drm_mode_setcrtc(struct drm_device *dev, void *data,
old_fb = plane->fb;

if (!old_fb) {
- DRM_DEBUG_KMS("CRTC doesn't have current FB\n");
+ drm_dbg_kms(dev, "CRTC doesn't have current FB\n");
ret = -EINVAL;
goto out;
}
@@ -767,8 +767,7 @@ int drm_mode_setcrtc(struct drm_device *dev, void *data,
} else {
fb = drm_framebuffer_lookup(dev, file_priv, crtc_req->fb_id);
if (!fb) {
- DRM_DEBUG_KMS("Unknown FB ID%d\n",
- crtc_req->fb_id);
+ drm_dbg_kms(dev, "Unknown FB ID%d\n", crtc_req->fb_id);
ret = -ENOENT;
goto out;
}
@@ -781,7 +780,7 @@ int drm_mode_setcrtc(struct drm_device *dev, void *data,
}
if (!file_priv->aspect_ratio_allowed &&
(crtc_req->mode.flags & DRM_MODE_FLAG_PIC_AR_MASK) != DRM_MODE_FLAG_PIC_AR_NONE) {
- DRM_DEBUG_KMS("Unexpected aspect-ratio flag bits\n");
+ drm_dbg_kms(dev, "Unexpected aspect-ratio flag bits\n");
ret = -EINVAL;
goto out;
}
@@ -789,8 +788,8 @@ int drm_mode_setcrtc(struct drm_device *dev, void *data,

ret = drm_mode_convert_umode(dev, mode, &crtc_req->mode);
if (ret) {
- DRM_DEBUG_KMS("Invalid mode (ret=%d, status=%s)\n",
- ret, drm_get_mode_status_name(mode->status));
+ drm_dbg_kms(dev, "Invalid mode (ret=%d, status=%s)\n",
+ ret, drm_get_mode_status_name(mode->status));
drm_mode_debug_printmodeline(mode);
goto out;
}
@@ -807,9 +806,8 @@ int drm_mode_setcrtc(struct drm_device *dev, void *data,
fb->format->format,
fb->modifier);
if (ret) {
- DRM_DEBUG_KMS("Invalid pixel format %p4cc, modifier 0x%llx\n",
- &fb->format->format,
- fb->modifier);
+ drm_dbg_kms(dev, "Invalid pixel format %p4cc, modifier 0x%llx\n",
+ &fb->format->format, fb->modifier);
goto out;
}
}
@@ -822,14 +820,14 @@ int drm_mode_setcrtc(struct drm_device *dev, void *data,
}

if (crtc_req->count_connectors == 0 && mode) {
- DRM_DEBUG_KMS("Count connectors is 0 but mode set\n");
+ drm_dbg_kms(dev, "Count connectors is 0 but mode set\n");
ret = -EINVAL;
goto out;
}

if (crtc_req->count_connectors > 0 && (!mode || !fb)) {
- DRM_DEBUG_KMS("Count connectors is %d but no mode or fb set\n",
- crtc_req->count_connectors);
+ drm_dbg_kms(dev, "Count connectors is %d but no mode or fb set\n",
+ crtc_req->count_connectors);
ret = -EINVAL;
goto out;
}
@@ -861,14 +859,14 @@ int drm_mode_setcrtc(struct drm_device *dev, void *data,

connector = drm_connector_lookup(dev, file_priv, out_id);
if (!connector) {
- DRM_DEBUG_KMS("Connector id %d unknown\n",
- out_id);
+ drm_dbg_kms(dev, "Connector id %d unknown\n",
+ out_id);
ret = -ENOENT;
goto out;
}
- DRM_DEBUG_KMS("[CONNECTOR:%d:%s]\n",
- connector->base.id,
- connector->name);
+ drm_dbg_kms(dev, "[CONNECTOR:%d:%s]\n",
+ connector->base.id,
+ connector->name);

connector_set[i] = connector;
}
diff --git a/drivers/gpu/drm/drm_crtc_helper.c b/drivers/gpu/drm/drm_crtc_helper.c
index d9599ea7058a..b65b900a4cd1 100644
--- a/drivers/gpu/drm/drm_crtc_helper.c
+++ b/drivers/gpu/drm/drm_crtc_helper.c
@@ -338,7 +338,7 @@ bool drm_crtc_helper_set_mode(struct drm_crtc *crtc,
if (encoder_funcs->mode_fixup) {
if (!(ret = encoder_funcs->mode_fixup(encoder, mode,
adjusted_mode))) {
- DRM_DEBUG_KMS("Encoder fixup failed\n");
+ drm_dbg_kms(dev, "Encoder fixup failed\n");
goto done;
}
}
@@ -347,11 +347,11 @@ bool drm_crtc_helper_set_mode(struct drm_crtc *crtc,
if (crtc_funcs->mode_fixup) {
if (!(ret = crtc_funcs->mode_fixup(crtc, mode,
adjusted_mode))) {
- DRM_DEBUG_KMS("CRTC fixup failed\n");
+ drm_dbg_kms(dev, "CRTC fixup failed\n");
goto done;
}
}
- DRM_DEBUG_KMS("[CRTC:%d:%s]\n", crtc->base.id, crtc->name);
+ drm_dbg_kms(dev, "[CRTC:%d:%s]\n", crtc->base.id, crtc->name);

drm_mode_copy(&crtc->hwmode, adjusted_mode);

@@ -390,8 +390,8 @@ bool drm_crtc_helper_set_mode(struct drm_crtc *crtc,
if (!encoder_funcs)
continue;

- DRM_DEBUG_KMS("[ENCODER:%d:%s] set [MODE:%s]\n",
- encoder->base.id, encoder->name, mode->name);
+ drm_dbg_kms(dev, "[ENCODER:%d:%s] set [MODE:%s]\n",
+ encoder->base.id, encoder->name, mode->name);
if (encoder_funcs->mode_set)
encoder_funcs->mode_set(encoder, mode, adjusted_mode);
}
@@ -567,7 +567,7 @@ int drm_crtc_helper_set_config(struct drm_mode_set *set,
int ret;
int i;

- DRM_DEBUG_KMS("\n");
+ drm_dbg_kms(NULL, "\n");

BUG_ON(!set);
BUG_ON(!set->crtc);
@@ -586,13 +586,13 @@ int drm_crtc_helper_set_config(struct drm_mode_set *set,
set->fb = NULL;

if (set->fb) {
- DRM_DEBUG_KMS("[CRTC:%d:%s] [FB:%d] #connectors=%d (x y) (%i %i)\n",
- set->crtc->base.id, set->crtc->name,
- set->fb->base.id,
- (int)set->num_connectors, set->x, set->y);
+ drm_dbg_kms(dev, "[CRTC:%d:%s] [FB:%d] #connectors=%d (x y) (%i %i)\n",
+ set->crtc->base.id, set->crtc->name,
+ set->fb->base.id,
+ (int)set->num_connectors, set->x, set->y);
} else {
- DRM_DEBUG_KMS("[CRTC:%d:%s] [NOFB]\n",
- set->crtc->base.id, set->crtc->name);
+ drm_dbg_kms(dev, "[CRTC:%d:%s] [NOFB]\n",
+ set->crtc->base.id, set->crtc->name);
drm_crtc_helper_disable(set->crtc);
return 0;
}
@@ -642,7 +642,7 @@ int drm_crtc_helper_set_config(struct drm_mode_set *set,
if (set->crtc->primary->fb != set->fb) {
/* If we have no fb then treat it as a full mode set */
if (set->crtc->primary->fb == NULL) {
- DRM_DEBUG_KMS("crtc has no fb, full mode set\n");
+ drm_dbg_kms(dev, "crtc has no fb, full mode set\n");
mode_changed = true;
} else if (set->fb->format != set->crtc->primary->fb->format) {
mode_changed = true;
@@ -654,7 +654,7 @@ int drm_crtc_helper_set_config(struct drm_mode_set *set,
fb_changed = true;

if (!drm_mode_equal(set->mode, &set->crtc->mode)) {
- DRM_DEBUG_KMS("modes are different, full mode set\n");
+ drm_dbg_kms(dev, "modes are different, full mode set\n");
drm_mode_debug_printmodeline(&set->crtc->mode);
drm_mode_debug_printmodeline(set->mode);
mode_changed = true;
@@ -690,7 +690,7 @@ int drm_crtc_helper_set_config(struct drm_mode_set *set,
fail = 1;

if (connector->dpms != DRM_MODE_DPMS_ON) {
- DRM_DEBUG_KMS("connector dpms not on, full mode switch\n");
+ drm_dbg_kms(dev, "connector dpms not on, full mode switch\n");
mode_changed = true;
}

@@ -699,7 +699,7 @@ int drm_crtc_helper_set_config(struct drm_mode_set *set,
}

if (new_encoder != connector->encoder) {
- DRM_DEBUG_KMS("encoder changed, full mode switch\n");
+ drm_dbg_kms(dev, "encoder changed, full mode switch\n");
mode_changed = true;
/* If the encoder is reused for another connector, then
* the appropriate crtc will be set later.
@@ -740,17 +740,17 @@ int drm_crtc_helper_set_config(struct drm_mode_set *set,
goto fail;
}
if (new_crtc != connector->encoder->crtc) {
- DRM_DEBUG_KMS("crtc changed, full mode switch\n");
+ drm_dbg_kms(dev, "crtc changed, full mode switch\n");
mode_changed = true;
connector->encoder->crtc = new_crtc;
}
if (new_crtc) {
- DRM_DEBUG_KMS("[CONNECTOR:%d:%s] to [CRTC:%d:%s]\n",
- connector->base.id, connector->name,
- new_crtc->base.id, new_crtc->name);
+ drm_dbg_kms(dev, "[CONNECTOR:%d:%s] to [CRTC:%d:%s]\n",
+ connector->base.id, connector->name,
+ new_crtc->base.id, new_crtc->name);
} else {
- DRM_DEBUG_KMS("[CONNECTOR:%d:%s] to [NOCRTC]\n",
- connector->base.id, connector->name);
+ drm_dbg_kms(dev, "[CONNECTOR:%d:%s] to [NOCRTC]\n",
+ connector->base.id, connector->name);
}
}
drm_connector_list_iter_end(&conn_iter);
@@ -761,8 +761,7 @@ int drm_crtc_helper_set_config(struct drm_mode_set *set,

if (mode_changed) {
if (drm_helper_crtc_in_use(set->crtc)) {
- DRM_DEBUG_KMS("attempting to set mode from"
- " userspace\n");
+ drm_dbg_kms(dev, "attempting to set mode from userspace\n");
drm_mode_debug_printmodeline(set->mode);
set->crtc->primary->fb = set->fb;
if (!drm_crtc_helper_set_mode(set->crtc, set->mode,
@@ -774,10 +773,11 @@ int drm_crtc_helper_set_config(struct drm_mode_set *set,
ret = -EINVAL;
goto fail;
}
- DRM_DEBUG_KMS("Setting connector DPMS state to on\n");
+ drm_dbg_kms(dev, "Setting connector DPMS state to on\n");
for (i = 0; i < set->num_connectors; i++) {
- DRM_DEBUG_KMS("\t[CONNECTOR:%d:%s] set DPMS on\n", set->connectors[i]->base.id,
- set->connectors[i]->name);
+ drm_dbg_kms(dev, "\t[CONNECTOR:%d:%s] set DPMS on\n",
+ set->connectors[i]->base.id,
+ set->connectors[i]->name);
set->connectors[i]->funcs->dpms(set->connectors[i], DRM_MODE_DPMS_ON);
}
}
diff --git a/drivers/gpu/drm/drm_debugfs_crc.c b/drivers/gpu/drm/drm_debugfs_crc.c
index a59ef3f0e4a1..f29d286f4760 100644
--- a/drivers/gpu/drm/drm_debugfs_crc.c
+++ b/drivers/gpu/drm/drm_debugfs_crc.c
@@ -131,8 +131,9 @@ static ssize_t crc_control_write(struct file *file, const char __user *ubuf,
return 0;

if (len > PAGE_SIZE - 1) {
- DRM_DEBUG_KMS("Expected < %lu bytes into crtc crc control\n",
- PAGE_SIZE);
+ drm_dbg_kms(crtc->dev,
+ "Expected < %lu bytes into crtc crc control\n",
+ PAGE_SIZE);
return -E2BIG;
}

diff --git a/drivers/gpu/drm/drm_displayid.c b/drivers/gpu/drm/drm_displayid.c
index e8431da8238a..accae8ac23f1 100644
--- a/drivers/gpu/drm/drm_displayid.c
+++ b/drivers/gpu/drm/drm_displayid.c
@@ -15,8 +15,8 @@ static int validate_displayid(const u8 *displayid, int length, int idx)

base = (const struct displayid_header *)&displayid[idx];

- DRM_DEBUG_KMS("base revision 0x%x, length %d, %d %d\n",
- base->rev, base->bytes, base->prod_id, base->ext_count);
+ drm_dbg_kms(NULL, "base revision 0x%x, length %d, %d %d\n",
+ base->rev, base->bytes, base->prod_id, base->ext_count);

/* +1 for DispID checksum */
dispid_length = sizeof(*base) + base->bytes + 1;
diff --git a/drivers/gpu/drm/drm_edid.c b/drivers/gpu/drm/drm_edid.c
index 3841aba17abd..ddae8c2b84dd 100644
--- a/drivers/gpu/drm/drm_edid.c
+++ b/drivers/gpu/drm/drm_edid.c
@@ -1987,7 +1987,7 @@ bool drm_edid_block_valid(u8 *_block, int block_num, bool print_bad_edid,

status = edid_block_check(block, is_base_block);
if (status == EDID_BLOCK_HEADER_REPAIR) {
- DRM_DEBUG_KMS("Fixing EDID header, your hardware may be failing\n");
+ drm_dbg_kms(dev, "Fixing EDID header, your hardware may be failing\n");
edid_header_fix(block);

/* Retry with fixed header, update status if that worked. */
@@ -2173,8 +2173,9 @@ drm_do_probe_ddc_edid(void *data, u8 *buf, unsigned int block, size_t len)
ret = i2c_transfer(adapter, &msgs[3 - xfers], xfers);

if (ret == -ENXIO) {
- DRM_DEBUG_KMS("drm: skipping non-existent adapter %s\n",
- adapter->name);
+ drm_dbg_kms(NULL,
+ "drm: skipping non-existent adapter %s\n",
+ adapter->name);
break;
}
} while (ret != xfers && --retries);
@@ -5629,7 +5630,7 @@ static int _drm_edid_to_sad(const struct drm_edid *drm_edid,
}
cea_db_iter_end(&iter);

- DRM_DEBUG_KMS("Found %d Short Audio Descriptors\n", count);
+ drm_dbg_kms(NULL, "Found %d Short Audio Descriptors\n", count);

return count;
}
@@ -5674,7 +5675,7 @@ static int _drm_edid_to_speaker_allocation(const struct drm_edid *drm_edid,
}
cea_db_iter_end(&iter);

- DRM_DEBUG_KMS("Found %d Speaker Allocation Data Blocks\n", count);
+ drm_dbg_kms(NULL, "Found %d Speaker Allocation Data Blocks\n", count);

return count;
}
@@ -5801,7 +5802,7 @@ static bool _drm_detect_monitor_audio(const struct drm_edid *drm_edid)
drm_edid_iter_end(&edid_iter);

if (has_audio) {
- DRM_DEBUG_KMS("Monitor has basic audio support\n");
+ drm_dbg_kms(NULL, "Monitor has basic audio support\n");
goto end;
}

@@ -5812,8 +5813,8 @@ static bool _drm_detect_monitor_audio(const struct drm_edid *drm_edid)
int i;

for (i = 0; i < cea_db_payload_len(db); i += 3)
- DRM_DEBUG_KMS("CEA audio format %d\n",
- (data[i] >> 3) & 0xf);
+ drm_dbg_kms(NULL, "CEA audio format %d\n",
+ (data[i] >> 3) & 0xf);
has_audio = true;
break;
}
diff --git a/drivers/gpu/drm/drm_gem_shmem_helper.c b/drivers/gpu/drm/drm_gem_shmem_helper.c
index b602cd72a120..f0b6b69f4baf 100644
--- a/drivers/gpu/drm/drm_gem_shmem_helper.c
+++ b/drivers/gpu/drm/drm_gem_shmem_helper.c
@@ -173,7 +173,7 @@ static int drm_gem_shmem_get_pages_locked(struct drm_gem_shmem_object *shmem)

pages = drm_gem_get_pages(obj);
if (IS_ERR(pages)) {
- DRM_DEBUG_KMS("Failed to get pages (%ld)\n", PTR_ERR(pages));
+ drm_dbg_kms(NULL, "Failed to get pages (%ld)\n", PTR_ERR(pages));
shmem->pages_use_count = 0;
return PTR_ERR(pages);
}
@@ -326,7 +326,7 @@ static int drm_gem_shmem_vmap_locked(struct drm_gem_shmem_object *shmem,
}

if (ret) {
- DRM_DEBUG_KMS("Failed to vmap pages, error %d\n", ret);
+ drm_dbg_kms(NULL, "Failed to vmap pages, error %d\n", ret);
goto err_put_pages;
}

diff --git a/drivers/gpu/drm/drm_lease.c b/drivers/gpu/drm/drm_lease.c
index a4b50fdbaaf7..c442d5e766d1 100644
--- a/drivers/gpu/drm/drm_lease.c
+++ b/drivers/gpu/drm/drm_lease.c
@@ -400,7 +400,7 @@ static int fill_object_idr(struct drm_device *dev,
}

if (!drm_mode_object_lease_required(objects[o]->type)) {
- DRM_DEBUG_KMS("invalid object for lease\n");
+ drm_dbg_kms(dev, "invalid object for lease\n");
ret = -EINVAL;
goto out_free_objects;
}
diff --git a/drivers/gpu/drm/drm_mipi_dbi.c b/drivers/gpu/drm/drm_mipi_dbi.c
index 6ad399f6ab03..64a976675fde 100644
--- a/drivers/gpu/drm/drm_mipi_dbi.c
+++ b/drivers/gpu/drm/drm_mipi_dbi.c
@@ -282,7 +282,8 @@ static void mipi_dbi_fb_dirty(struct drm_framebuffer *fb, struct drm_rect *rect)

full = width == fb->width && height == fb->height;

- DRM_DEBUG_KMS("Flushing [FB:%d] " DRM_RECT_FMT "\n", fb->base.id, DRM_RECT_ARG(rect));
+ drm_dbg_kms(fb->dev, "Flushing [FB:%d] " DRM_RECT_FMT "\n",
+ fb->base.id, DRM_RECT_ARG(rect));

if (!dbi->dc || !full || swap ||
fb->format->format == DRM_FORMAT_XRGB8888) {
@@ -418,7 +419,7 @@ void mipi_dbi_pipe_disable(struct drm_simple_display_pipe *pipe)
{
struct mipi_dbi_dev *dbidev = drm_to_mipi_dbi_dev(pipe->crtc.dev);

- DRM_DEBUG_KMS("\n");
+ drm_dbg_kms(&dbidev->drm, "\n");

if (dbidev->backlight)
backlight_disable(dbidev->backlight);
@@ -551,7 +552,7 @@ int mipi_dbi_dev_init_with_formats(struct mipi_dbi_dev *dbidev,
drm->mode_config.max_height = dbidev->mode.vdisplay;
dbidev->rotation = rotation;

- DRM_DEBUG_KMS("rotation = %u\n", rotation);
+ drm_dbg_kms(drm, "rotation = %u\n", rotation);

return 0;
}
diff --git a/drivers/gpu/drm/drm_modes.c b/drivers/gpu/drm/drm_modes.c
index 3c8034a8c27b..112429eb3709 100644
--- a/drivers/gpu/drm/drm_modes.c
+++ b/drivers/gpu/drm/drm_modes.c
@@ -52,11 +52,11 @@
* drm_mode_debug_printmodeline - print a mode to dmesg
* @mode: mode to print
*
- * Describe @mode using DRM_DEBUG.
+ * Describe @mode using drm_dbg_kms().
*/
void drm_mode_debug_printmodeline(const struct drm_display_mode *mode)
{
- DRM_DEBUG_KMS("Modeline " DRM_MODE_FMT "\n", DRM_MODE_ARG(mode));
+ drm_dbg_kms(NULL, "Modeline " DRM_MODE_FMT "\n", DRM_MODE_ARG(mode));
}
EXPORT_SYMBOL(drm_mode_debug_printmodeline);

@@ -1336,9 +1336,9 @@ void drm_mode_prune_invalid(struct drm_device *dev,
}
if (verbose) {
drm_mode_debug_printmodeline(mode);
- DRM_DEBUG_KMS("Not using %s mode: %s\n",
- mode->name,
- drm_get_mode_status_name(mode->status));
+ drm_dbg_kms(dev, "Not using %s mode: %s\n",
+ mode->name,
+ drm_get_mode_status_name(mode->status));
}
drm_mode_destroy(dev, mode);
}
diff --git a/drivers/gpu/drm/drm_plane.c b/drivers/gpu/drm/drm_plane.c
index 5e3b82bf197a..ad623a085362 100644
--- a/drivers/gpu/drm/drm_plane.c
+++ b/drivers/gpu/drm/drm_plane.c
@@ -270,7 +270,7 @@ static int __drm_universal_plane_init(struct drm_device *dev,
plane->format_types = kmalloc_array(format_count, sizeof(uint32_t),
GFP_KERNEL);
if (!plane->format_types) {
- DRM_DEBUG_KMS("out of memory when allocating plane\n");
+ drm_dbg_kms(dev, "out of memory when allocating plane\n");
drm_mode_object_unregister(dev, &plane->base);
return -ENOMEM;
}
@@ -297,7 +297,7 @@ static int __drm_universal_plane_init(struct drm_device *dev,
GFP_KERNEL);

if (format_modifier_count && !plane->modifiers) {
- DRM_DEBUG_KMS("out of memory when allocating plane\n");
+ drm_dbg_kms(dev, "out of memory when allocating plane\n");
kfree(plane->format_types);
drm_mode_object_unregister(dev, &plane->base);
return -ENOMEM;
@@ -781,7 +781,7 @@ static int __setplane_check(struct drm_plane *plane,

/* Check whether this plane is usable on this CRTC */
if (!(plane->possible_crtcs & drm_crtc_mask(crtc))) {
- DRM_DEBUG_KMS("Invalid crtc for plane\n");
+ drm_dbg_kms(plane->dev, "Invalid crtc for plane\n");
return -EINVAL;
}

@@ -789,8 +789,9 @@ static int __setplane_check(struct drm_plane *plane,
ret = drm_plane_check_pixel_format(plane, fb->format->format,
fb->modifier);
if (ret) {
- DRM_DEBUG_KMS("Invalid pixel format %p4cc, modifier 0x%llx\n",
- &fb->format->format, fb->modifier);
+ drm_dbg_kms(fb->dev,
+ "Invalid pixel format %p4cc, modifier 0x%llx\n",
+ &fb->format->format, fb->modifier);
return ret;
}

@@ -799,8 +800,8 @@ static int __setplane_check(struct drm_plane *plane,
crtc_x > INT_MAX - (int32_t) crtc_w ||
crtc_h > INT_MAX ||
crtc_y > INT_MAX - (int32_t) crtc_h) {
- DRM_DEBUG_KMS("Invalid CRTC coordinates %ux%u+%d+%d\n",
- crtc_w, crtc_h, crtc_x, crtc_y);
+ drm_dbg_kms(crtc->dev, "Invalid CRTC coordinates %ux%u+%d+%d\n",
+ crtc_w, crtc_h, crtc_x, crtc_y);
return -ERANGE;
}

@@ -977,24 +978,23 @@ int drm_mode_setplane(struct drm_device *dev, void *data,
*/
plane = drm_plane_find(dev, file_priv, plane_req->plane_id);
if (!plane) {
- DRM_DEBUG_KMS("Unknown plane ID %d\n",
- plane_req->plane_id);
+ drm_dbg_kms(dev, "Unknown plane ID %d\n", plane_req->plane_id);
return -ENOENT;
}

if (plane_req->fb_id) {
fb = drm_framebuffer_lookup(dev, file_priv, plane_req->fb_id);
if (!fb) {
- DRM_DEBUG_KMS("Unknown framebuffer ID %d\n",
- plane_req->fb_id);
+ drm_dbg_kms(dev, "Unknown framebuffer ID %d\n",
+ plane_req->fb_id);
return -ENOENT;
}

crtc = drm_crtc_find(dev, file_priv, plane_req->crtc_id);
if (!crtc) {
drm_framebuffer_put(fb);
- DRM_DEBUG_KMS("Unknown crtc ID %d\n",
- plane_req->crtc_id);
+ drm_dbg_kms(dev, "Unknown crtc ID %d\n",
+ plane_req->crtc_id);
return -ENOENT;
}
}
@@ -1043,7 +1043,7 @@ static int drm_mode_cursor_universal(struct drm_crtc *crtc,
if (req->handle) {
fb = drm_internal_framebuffer_create(dev, &fbreq, file_priv);
if (IS_ERR(fb)) {
- DRM_DEBUG_KMS("failed to wrap cursor buffer in drm framebuffer\n");
+ drm_dbg_kms(dev, "failed to wrap cursor buffer in drm framebuffer\n");
return PTR_ERR(fb);
}

@@ -1114,7 +1114,7 @@ static int drm_mode_cursor_common(struct drm_device *dev,

crtc = drm_crtc_find(dev, file_priv, req->crtc_id);
if (!crtc) {
- DRM_DEBUG_KMS("Unknown CRTC ID %d\n", req->crtc_id);
+ drm_dbg_kms(dev, "Unknown CRTC ID %d\n", req->crtc_id);
return -ENOENT;
}

@@ -1335,7 +1335,7 @@ int drm_mode_page_flip_ioctl(struct drm_device *dev,
* to modifier changes.
*/
if (old_fb->format->format != fb->format->format) {
- DRM_DEBUG_KMS("Page flip is not allowed to change frame buffer format.\n");
+ drm_dbg_kms(dev, "Page flip is not allowed to change frame buffer format.\n");
ret = -EINVAL;
goto out;
}
diff --git a/drivers/gpu/drm/drm_probe_helper.c b/drivers/gpu/drm/drm_probe_helper.c
index bcd9611dabfd..5aca64370cb5 100644
--- a/drivers/gpu/drm/drm_probe_helper.c
+++ b/drivers/gpu/drm/drm_probe_helper.c
@@ -498,8 +498,8 @@ int drm_helper_probe_single_connector_modes(struct drm_connector *connector,

drm_modeset_acquire_init(&ctx, 0);

- DRM_DEBUG_KMS("[CONNECTOR:%d:%s]\n", connector->base.id,
- connector->name);
+ drm_dbg_kms(dev, "[CONNECTOR:%d:%s]\n", connector->base.id,
+ connector->name);

retry:
ret = drm_modeset_lock(&dev->mode_config.connection_mutex, &ctx);
@@ -542,11 +542,12 @@ int drm_helper_probe_single_connector_modes(struct drm_connector *connector,
* check here, and if anything changed start the hotplug code.
*/
if (old_status != connector->status) {
- DRM_DEBUG_KMS("[CONNECTOR:%d:%s] status updated from %s to %s\n",
- connector->base.id,
- connector->name,
- drm_get_connector_status_name(old_status),
- drm_get_connector_status_name(connector->status));
+ drm_dbg_kms(dev,
+ "[CONNECTOR:%d:%s] status updated from %s to %s\n",
+ connector->base.id,
+ connector->name,
+ drm_get_connector_status_name(old_status),
+ drm_get_connector_status_name(connector->status));

/*
* The hotplug event code might call into the fb
@@ -567,8 +568,8 @@ int drm_helper_probe_single_connector_modes(struct drm_connector *connector,
dev->mode_config.poll_running = drm_kms_helper_poll;

if (connector->status == connector_status_disconnected) {
- DRM_DEBUG_KMS("[CONNECTOR:%d:%s] disconnected\n",
- connector->base.id, connector->name);
+ drm_dbg_kms(dev, "[CONNECTOR:%d:%s] disconnected\n",
+ connector->base.id, connector->name);
drm_connector_update_edid_property(connector, NULL);
drm_mode_prune_invalid(dev, &connector->modes, false);
goto exit;
@@ -626,8 +627,8 @@ int drm_helper_probe_single_connector_modes(struct drm_connector *connector,

drm_mode_sort(&connector->modes);

- DRM_DEBUG_KMS("[CONNECTOR:%d:%s] probed modes :\n", connector->base.id,
- connector->name);
+ drm_dbg_kms(dev, "[CONNECTOR:%d:%s] probed modes :\n",
+ connector->base.id, connector->name);
list_for_each_entry(mode, &connector->modes, head) {
drm_mode_set_crtcinfo(mode, CRTC_INTERLACE_HALVE_V);
drm_mode_debug_printmodeline(mode);
@@ -758,14 +759,14 @@ static void output_poll_execute(struct work_struct *work)
old = drm_get_connector_status_name(old_status);
new = drm_get_connector_status_name(connector->status);

- DRM_DEBUG_KMS("[CONNECTOR:%d:%s] "
- "status updated from %s to %s\n",
- connector->base.id,
- connector->name,
- old, new);
- DRM_DEBUG_KMS("[CONNECTOR:%d:%s] epoch counter %llu -> %llu\n",
- connector->base.id, connector->name,
- old_epoch_counter, connector->epoch_counter);
+ drm_dbg_kms(dev, "[CONNECTOR:%d:%s] "
+ "status updated from %s to %s\n",
+ connector->base.id,
+ connector->name,
+ old, new);
+ drm_dbg_kms(dev, "[CONNECTOR:%d:%s] epoch counter %llu -> %llu\n",
+ connector->base.id, connector->name,
+ old_epoch_counter, connector->epoch_counter);

changed = true;
}
diff --git a/drivers/gpu/drm/drm_rect.c b/drivers/gpu/drm/drm_rect.c
index 85c79a38c13a..8f4abcb1cbd8 100644
--- a/drivers/gpu/drm/drm_rect.c
+++ b/drivers/gpu/drm/drm_rect.c
@@ -228,9 +228,9 @@ EXPORT_SYMBOL(drm_rect_calc_vscale);
void drm_rect_debug_print(const char *prefix, const struct drm_rect *r, bool fixed_point)
{
if (fixed_point)
- DRM_DEBUG_KMS("%s" DRM_RECT_FP_FMT "\n", prefix, DRM_RECT_FP_ARG(r));
+ drm_dbg_kms(NULL, "%s" DRM_RECT_FP_FMT "\n", prefix, DRM_RECT_FP_ARG(r));
else
- DRM_DEBUG_KMS("%s" DRM_RECT_FMT "\n", prefix, DRM_RECT_ARG(r));
+ drm_dbg_kms(NULL, "%s" DRM_RECT_FMT "\n", prefix, DRM_RECT_ARG(r));
}
EXPORT_SYMBOL(drm_rect_debug_print);

diff --git a/drivers/gpu/drm/drm_sysfs.c b/drivers/gpu/drm/drm_sysfs.c
index 6b090d71d45a..873818348bb4 100644
--- a/drivers/gpu/drm/drm_sysfs.c
+++ b/drivers/gpu/drm/drm_sysfs.c
@@ -179,10 +179,10 @@ static ssize_t status_store(struct device *device,
ret = -EINVAL;

if (old_force != connector->force || !connector->force) {
- DRM_DEBUG_KMS("[CONNECTOR:%d:%s] force updated from %d to %d or reprobing\n",
- connector->base.id,
- connector->name,
- old_force, connector->force);
+ drm_dbg_kms(dev, "[CONNECTOR:%d:%s] force updated from %d to %d or reprobing\n",
+ connector->base.id,
+ connector->name,
+ old_force, connector->force);

connector->funcs->fill_modes(connector,
dev->mode_config.max_width,
--
2.35.1


2022-12-21 06:34:45

by kernel test robot

[permalink] [raw]
Subject: Re: [PATCH 05/10] drm: Remove usage of deprecated DRM_DEBUG

Hi Siddh,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on next-20221220]
[also build test WARNING on linus/master]
[cannot apply to drm-misc/drm-misc-next v6.1 v6.1-rc8 v6.1-rc7 v6.1]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url: https://github.com/intel-lab-lkp/linux/commits/Siddh-Raman-Pant/drm-Remove-usage-of-deprecated-DRM_-macros/20221221-113133
patch link: https://lore.kernel.org/r/0fdcf7a0c9ad77e2d2252cf49fcd5d09952d1b69.1671566741.git.code%40siddh.me
patch subject: [PATCH 05/10] drm: Remove usage of deprecated DRM_DEBUG
config: ia64-allyesconfig
compiler: ia64-linux-gcc (GCC) 12.1.0
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/intel-lab-lkp/linux/commit/3990929cf97542bbc76cebc444540d0038b9165c
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Siddh-Raman-Pant/drm-Remove-usage-of-deprecated-DRM_-macros/20221221-113133
git checkout 3990929cf97542bbc76cebc444540d0038b9165c
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=ia64 olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=ia64 SHELL=/bin/bash drivers/gpu/drm/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <[email protected]>

All warnings (new ones prefixed by >>):

In file included from drivers/gpu/drm/drm_pci.c:34:
include/drm/drm_print.h: In function 'drm_legacy_pci_exit':
>> include/drm/drm_print.h:491:34: warning: 'dev' is used uninitialized [-Wuninitialized]
491 | const struct drm_device *drm_ = (drm); \
| ^~~~
drivers/gpu/drm/drm_pci.c:248:28: note: 'dev' was declared here
248 | struct drm_device *dev, *tmp;
| ^~~


vim +/dev +491 include/drm/drm_print.h

e820f52577b14c Jim Cromie 2022-09-11 416
02c9656b2f0d69 Haneen Mohammed 2017-10-17 417 /**
b52817e9de06a3 Mauro Carvalho Chehab 2020-10-27 418 * DRM_DEV_DEBUG() - Debug output for generic drm code
02c9656b2f0d69 Haneen Mohammed 2017-10-17 419 *
306589856399e1 Douglas Anderson 2021-09-21 420 * NOTE: this is deprecated in favor of drm_dbg_core().
306589856399e1 Douglas Anderson 2021-09-21 421 *
091756bbb1a961 Haneen Mohammed 2017-10-17 422 * @dev: device pointer
091756bbb1a961 Haneen Mohammed 2017-10-17 423 * @fmt: printf() like format string.
02c9656b2f0d69 Haneen Mohammed 2017-10-17 424 */
db87086492581c Joe Perches 2018-03-16 425 #define DRM_DEV_DEBUG(dev, fmt, ...) \
db87086492581c Joe Perches 2018-03-16 426 drm_dev_dbg(dev, DRM_UT_CORE, fmt, ##__VA_ARGS__)
b52817e9de06a3 Mauro Carvalho Chehab 2020-10-27 427 /**
b52817e9de06a3 Mauro Carvalho Chehab 2020-10-27 428 * DRM_DEV_DEBUG_DRIVER() - Debug output for vendor specific part of the driver
b52817e9de06a3 Mauro Carvalho Chehab 2020-10-27 429 *
306589856399e1 Douglas Anderson 2021-09-21 430 * NOTE: this is deprecated in favor of drm_dbg() or dev_dbg().
306589856399e1 Douglas Anderson 2021-09-21 431 *
b52817e9de06a3 Mauro Carvalho Chehab 2020-10-27 432 * @dev: device pointer
b52817e9de06a3 Mauro Carvalho Chehab 2020-10-27 433 * @fmt: printf() like format string.
b52817e9de06a3 Mauro Carvalho Chehab 2020-10-27 434 */
db87086492581c Joe Perches 2018-03-16 435 #define DRM_DEV_DEBUG_DRIVER(dev, fmt, ...) \
db87086492581c Joe Perches 2018-03-16 436 drm_dev_dbg(dev, DRM_UT_DRIVER, fmt, ##__VA_ARGS__)
b52817e9de06a3 Mauro Carvalho Chehab 2020-10-27 437 /**
b52817e9de06a3 Mauro Carvalho Chehab 2020-10-27 438 * DRM_DEV_DEBUG_KMS() - Debug output for modesetting code
b52817e9de06a3 Mauro Carvalho Chehab 2020-10-27 439 *
306589856399e1 Douglas Anderson 2021-09-21 440 * NOTE: this is deprecated in favor of drm_dbg_kms().
306589856399e1 Douglas Anderson 2021-09-21 441 *
b52817e9de06a3 Mauro Carvalho Chehab 2020-10-27 442 * @dev: device pointer
b52817e9de06a3 Mauro Carvalho Chehab 2020-10-27 443 * @fmt: printf() like format string.
b52817e9de06a3 Mauro Carvalho Chehab 2020-10-27 444 */
db87086492581c Joe Perches 2018-03-16 445 #define DRM_DEV_DEBUG_KMS(dev, fmt, ...) \
db87086492581c Joe Perches 2018-03-16 446 drm_dev_dbg(dev, DRM_UT_KMS, fmt, ##__VA_ARGS__)
a18b21929453af Lyude Paul 2018-07-16 447
fb6c7ab8718eb2 Jani Nikula 2019-12-10 448 /*
fb6c7ab8718eb2 Jani Nikula 2019-12-10 449 * struct drm_device based logging
fb6c7ab8718eb2 Jani Nikula 2019-12-10 450 *
fb6c7ab8718eb2 Jani Nikula 2019-12-10 451 * Prefer drm_device based logging over device or prink based logging.
fb6c7ab8718eb2 Jani Nikula 2019-12-10 452 */
fb6c7ab8718eb2 Jani Nikula 2019-12-10 453
fb6c7ab8718eb2 Jani Nikula 2019-12-10 454 /* Helper for struct drm_device based logging. */
fb6c7ab8718eb2 Jani Nikula 2019-12-10 455 #define __drm_printk(drm, level, type, fmt, ...) \
fb6c7ab8718eb2 Jani Nikula 2019-12-10 456 dev_##level##type((drm)->dev, "[drm] " fmt, ##__VA_ARGS__)
fb6c7ab8718eb2 Jani Nikula 2019-12-10 457
fb6c7ab8718eb2 Jani Nikula 2019-12-10 458
fb6c7ab8718eb2 Jani Nikula 2019-12-10 459 #define drm_info(drm, fmt, ...) \
fb6c7ab8718eb2 Jani Nikula 2019-12-10 460 __drm_printk((drm), info,, fmt, ##__VA_ARGS__)
fb6c7ab8718eb2 Jani Nikula 2019-12-10 461
fb6c7ab8718eb2 Jani Nikula 2019-12-10 462 #define drm_notice(drm, fmt, ...) \
fb6c7ab8718eb2 Jani Nikula 2019-12-10 463 __drm_printk((drm), notice,, fmt, ##__VA_ARGS__)
fb6c7ab8718eb2 Jani Nikula 2019-12-10 464
fb6c7ab8718eb2 Jani Nikula 2019-12-10 465 #define drm_warn(drm, fmt, ...) \
fb6c7ab8718eb2 Jani Nikula 2019-12-10 466 __drm_printk((drm), warn,, fmt, ##__VA_ARGS__)
fb6c7ab8718eb2 Jani Nikula 2019-12-10 467
fb6c7ab8718eb2 Jani Nikula 2019-12-10 468 #define drm_err(drm, fmt, ...) \
fb6c7ab8718eb2 Jani Nikula 2019-12-10 469 __drm_printk((drm), err,, "*ERROR* " fmt, ##__VA_ARGS__)
fb6c7ab8718eb2 Jani Nikula 2019-12-10 470
fb6c7ab8718eb2 Jani Nikula 2019-12-10 471
fb6c7ab8718eb2 Jani Nikula 2019-12-10 472 #define drm_info_once(drm, fmt, ...) \
fb6c7ab8718eb2 Jani Nikula 2019-12-10 473 __drm_printk((drm), info, _once, fmt, ##__VA_ARGS__)
fb6c7ab8718eb2 Jani Nikula 2019-12-10 474
fb6c7ab8718eb2 Jani Nikula 2019-12-10 475 #define drm_notice_once(drm, fmt, ...) \
fb6c7ab8718eb2 Jani Nikula 2019-12-10 476 __drm_printk((drm), notice, _once, fmt, ##__VA_ARGS__)
fb6c7ab8718eb2 Jani Nikula 2019-12-10 477
fb6c7ab8718eb2 Jani Nikula 2019-12-10 478 #define drm_warn_once(drm, fmt, ...) \
fb6c7ab8718eb2 Jani Nikula 2019-12-10 479 __drm_printk((drm), warn, _once, fmt, ##__VA_ARGS__)
fb6c7ab8718eb2 Jani Nikula 2019-12-10 480
fb6c7ab8718eb2 Jani Nikula 2019-12-10 481 #define drm_err_once(drm, fmt, ...) \
fb6c7ab8718eb2 Jani Nikula 2019-12-10 482 __drm_printk((drm), err, _once, "*ERROR* " fmt, ##__VA_ARGS__)
fb6c7ab8718eb2 Jani Nikula 2019-12-10 483
fb6c7ab8718eb2 Jani Nikula 2019-12-10 484
fb6c7ab8718eb2 Jani Nikula 2019-12-10 485 #define drm_err_ratelimited(drm, fmt, ...) \
fb6c7ab8718eb2 Jani Nikula 2019-12-10 486 __drm_printk((drm), err, _ratelimited, "*ERROR* " fmt, ##__VA_ARGS__)
fb6c7ab8718eb2 Jani Nikula 2019-12-10 487
fb6c7ab8718eb2 Jani Nikula 2019-12-10 488
fb6c7ab8718eb2 Jani Nikula 2019-12-10 489 #define drm_dbg_core(drm, fmt, ...) \
24eb20345874ac Siddh Raman Pant 2022-12-21 490 ({ \
24eb20345874ac Siddh Raman Pant 2022-12-21 @491 const struct drm_device *drm_ = (drm); \
24eb20345874ac Siddh Raman Pant 2022-12-21 492 drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_CORE, \
24eb20345874ac Siddh Raman Pant 2022-12-21 493 fmt, ##__VA_ARGS__); \
24eb20345874ac Siddh Raman Pant 2022-12-21 494 })
24eb20345874ac Siddh Raman Pant 2022-12-21 495

--
0-DAY CI Kernel Test Service
https://01.org/lkp


Attachments:
(No filename) (8.88 kB)
config (330.88 kB)
Download all attachments

2022-12-21 09:45:29

by Thomas Zimmermann

[permalink] [raw]
Subject: Re: [PATCH 00/10] drm: Remove usage of deprecated DRM_* macros

Hi

Am 20.12.22 um 21:16 schrieb Siddh Raman Pant:
> This patchset aims to remove usages of deprecated DRM_* macros from the
> files residing in drivers/gpu/drm root.
>
> In process, I found out that NULL as first argument of drm_dbg_* wasn't
> working, but it was listed as the alternative in deprecation comment,
> so I fixed that before removing usages of DRM_DEBUG_* macros.
>
> This patchset should be applied in order as changes might be dependent.
>
> Please review and let me know if any errors are there, and hopefully
> this gets accepted.

Thanks for the patchset. Overall this looks fine.

But the use of pr_() functions is not optimal in my opinion. I know that
I recommended using it, but at a closer look, I think we might want to
reconsider that. I wouldn't like losing the '[drm]' tag, but adding them
to each pr_() call isn't a good idea either.

I think it would be nicer to replace DRM_INFO with drm_info(NULL, ).
Depending on the device being NULL, the helpers would select dev-based
messages or printk-based messages. It would then work like drm_dbg_().
But it needs some additional changes.

Can you first move all pr_() related changes into a new patchset? The
trivial conversion were the device is known and not NULL can remain in
this patchset and be merged soon. We can afterwards have a separate
discussion for the changes that currently involve pr_().

Best regards
Thomas

>
> Siddh Raman Pant (10):
> drm: Remove usage of deprecated DRM_INFO
> drm: Remove usage of deprecated DRM_NOTE
> drm: Remove usage of deprecated DRM_ERROR
> drm/print: Fix support for NULL as first argument of drm_dbg_*
> drm: Remove usage of deprecated DRM_DEBUG
> drm: Remove usage of deprecated DRM_DEBUG_DRIVER
> drm: Remove usage of deprecated DRM_DEBUG_KMS
> drm: Remove usage of deprecated DRM_DEBUG_PRIME
> drm/drm_blend: Remove usage of deprecated DRM_DEBUG_ATOMIC
> drm/drm_lease: Remove usage of deprecated DRM_DEBUG_LEASE
>
> drivers/gpu/drm/drm_agpsupport.c | 4 +-
> drivers/gpu/drm/drm_blend.c | 13 ++-
> drivers/gpu/drm/drm_bridge.c | 8 +-
> drivers/gpu/drm/drm_bufs.c | 122 ++++++++++++------------
> drivers/gpu/drm/drm_client_modeset.c | 118 +++++++++++++----------
> drivers/gpu/drm/drm_color_mgmt.c | 4 +-
> drivers/gpu/drm/drm_connector.c | 28 +++---
> drivers/gpu/drm/drm_context.c | 18 ++--
> drivers/gpu/drm/drm_crtc.c | 36 ++++---
> drivers/gpu/drm/drm_crtc_helper.c | 62 ++++++------
> drivers/gpu/drm/drm_debugfs_crc.c | 8 +-
> drivers/gpu/drm/drm_displayid.c | 6 +-
> drivers/gpu/drm/drm_dma.c | 10 +-
> drivers/gpu/drm/drm_drv.c | 28 +++---
> drivers/gpu/drm/drm_edid.c | 17 ++--
> drivers/gpu/drm/drm_file.c | 18 ++--
> drivers/gpu/drm/drm_flip_work.c | 2 +-
> drivers/gpu/drm/drm_framebuffer.c | 3 +-
> drivers/gpu/drm/drm_gem.c | 7 +-
> drivers/gpu/drm/drm_gem_dma_helper.c | 6 +-
> drivers/gpu/drm/drm_gem_shmem_helper.c | 6 +-
> drivers/gpu/drm/drm_hashtab.c | 10 +-
> drivers/gpu/drm/drm_ioc32.c | 13 +--
> drivers/gpu/drm/drm_ioctl.c | 24 ++---
> drivers/gpu/drm/drm_irq.c | 4 +-
> drivers/gpu/drm/drm_kms_helper_common.c | 2 +-
> drivers/gpu/drm/drm_lease.c | 68 ++++++-------
> drivers/gpu/drm/drm_legacy_misc.c | 4 +-
> drivers/gpu/drm/drm_lock.c | 36 +++----
> drivers/gpu/drm/drm_mipi_dbi.c | 19 ++--
> drivers/gpu/drm/drm_mm.c | 8 +-
> drivers/gpu/drm/drm_mode_config.c | 2 +-
> drivers/gpu/drm/drm_mode_object.c | 6 +-
> drivers/gpu/drm/drm_modes.c | 10 +-
> drivers/gpu/drm/drm_modeset_helper.c | 2 +-
> drivers/gpu/drm/drm_pci.c | 14 +--
> drivers/gpu/drm/drm_plane.c | 46 ++++-----
> drivers/gpu/drm/drm_probe_helper.c | 39 ++++----
> drivers/gpu/drm/drm_rect.c | 4 +-
> drivers/gpu/drm/drm_scatter.c | 19 ++--
> drivers/gpu/drm/drm_syncobj.c | 2 +-
> drivers/gpu/drm/drm_sysfs.c | 22 ++---
> drivers/gpu/drm/drm_vm.c | 45 +++++----
> include/drm/drm_print.h | 91 ++++++++++++++----
> 44 files changed, 549 insertions(+), 465 deletions(-)
>

--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Ivo Totev


Attachments:
OpenPGP_signature (855.00 B)
OpenPGP digital signature

2022-12-21 09:47:38

by Thomas Zimmermann

[permalink] [raw]
Subject: Re: [PATCH 04/10] drm/print: Fix support for NULL as first argument of drm_dbg_*

Hi

Am 20.12.22 um 21:16 schrieb Siddh Raman Pant:
> Comments say macros DRM_DEBUG_* are deprecated in favor of
> drm_dbg_*(NULL, ...), but they have broken support for it,
> as the macro will result in `(NULL) ? (NULL)->dev : NULL`.
>
> Thus, fix them by casting input drm to a temporary struct ptr,
> with the same convention as in __DRM_DEFINE_DBG_RATELIMITED.
>
> Signed-off-by: Siddh Raman Pant <[email protected]>
> ---
> include/drm/drm_print.h | 89 ++++++++++++++++++++++++++++++++---------
> 1 file changed, 69 insertions(+), 20 deletions(-)
>
> diff --git a/include/drm/drm_print.h b/include/drm/drm_print.h
> index a44fb7ef257f..53702d830291 100644
> --- a/include/drm/drm_print.h
> +++ b/include/drm/drm_print.h
> @@ -486,26 +486,75 @@ void __drm_dev_dbg(struct _ddebug *desc, const struct device *dev,
> __drm_printk((drm), err, _ratelimited, "*ERROR* " fmt, ##__VA_ARGS__)
>
>
> -#define drm_dbg_core(drm, fmt, ...) \
> - drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_CORE, fmt, ##__VA_ARGS__)
...
> +#define drm_dbg_core(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_CORE, \
> + fmt, ##__VA_ARGS__); \
> +})

Instead of doing this for each drm_dbg_ macro, rather add an internal
helper that returns the device or NULL like this:

static inline struct device *__drm_print_dev(struct drm_device *drm)
{
if (drm)
return drm->dev;
return NULL;
}

and change the macros to

drm_dbg_core(drm, fmt, ...)
drm_dev_dbg(__drm_print_dev(drm), DRM_UT_CORE, )

and so on.

Best regards
Thomas

> +
> +#define drm_dbg_driver(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_DRIVER, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_kms(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_KMS, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_prime(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_PRIME, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_atomic(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_ATOMIC, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_vbl(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_VBL, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_state(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_STATE, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_lease(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_LEASE, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_dp(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_DP, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_drmres(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_DRMRES, \
> + fmt, ##__VA_ARGS__); \
> +})
>
> #define drm_dbg(drm, fmt, ...) drm_dbg_driver(drm, fmt, ##__VA_ARGS__)
>

--
Thomas Zimmermann
Graphics Driver Developer
SUSE Software Solutions Germany GmbH
Maxfeldstr. 5, 90409 Nürnberg, Germany
(HRB 36809, AG Nürnberg)
Geschäftsführer: Ivo Totev


Attachments:
OpenPGP_signature (855.00 B)
OpenPGP digital signature

2022-12-21 10:25:02

by Jani Nikula

[permalink] [raw]
Subject: Re: [PATCH 00/10] drm: Remove usage of deprecated DRM_* macros

On Wed, 21 Dec 2022, Thomas Zimmermann <[email protected]> wrote:
> Hi
>
> Am 20.12.22 um 21:16 schrieb Siddh Raman Pant:
>> This patchset aims to remove usages of deprecated DRM_* macros from the
>> files residing in drivers/gpu/drm root.
>>
>> In process, I found out that NULL as first argument of drm_dbg_* wasn't
>> working, but it was listed as the alternative in deprecation comment,
>> so I fixed that before removing usages of DRM_DEBUG_* macros.
>>
>> This patchset should be applied in order as changes might be dependent.
>>
>> Please review and let me know if any errors are there, and hopefully
>> this gets accepted.
>
> Thanks for the patchset. Overall this looks fine.
>
> But the use of pr_() functions is not optimal in my opinion. I know that
> I recommended using it, but at a closer look, I think we might want to
> reconsider that. I wouldn't like losing the '[drm]' tag, but adding them
> to each pr_() call isn't a good idea either.
>
> I think it would be nicer to replace DRM_INFO with drm_info(NULL, ).
> Depending on the device being NULL, the helpers would select dev-based
> messages or printk-based messages. It would then work like drm_dbg_().
> But it needs some additional changes.
>
> Can you first move all pr_() related changes into a new patchset? The
> trivial conversion were the device is known and not NULL can remain in
> this patchset and be merged soon. We can afterwards have a separate
> discussion for the changes that currently involve pr_().

Same thoughts, agreed.

BR,
Jani.


>
> Best regards
> Thomas
>
>>
>> Siddh Raman Pant (10):
>> drm: Remove usage of deprecated DRM_INFO
>> drm: Remove usage of deprecated DRM_NOTE
>> drm: Remove usage of deprecated DRM_ERROR
>> drm/print: Fix support for NULL as first argument of drm_dbg_*
>> drm: Remove usage of deprecated DRM_DEBUG
>> drm: Remove usage of deprecated DRM_DEBUG_DRIVER
>> drm: Remove usage of deprecated DRM_DEBUG_KMS
>> drm: Remove usage of deprecated DRM_DEBUG_PRIME
>> drm/drm_blend: Remove usage of deprecated DRM_DEBUG_ATOMIC
>> drm/drm_lease: Remove usage of deprecated DRM_DEBUG_LEASE
>>
>> drivers/gpu/drm/drm_agpsupport.c | 4 +-
>> drivers/gpu/drm/drm_blend.c | 13 ++-
>> drivers/gpu/drm/drm_bridge.c | 8 +-
>> drivers/gpu/drm/drm_bufs.c | 122 ++++++++++++------------
>> drivers/gpu/drm/drm_client_modeset.c | 118 +++++++++++++----------
>> drivers/gpu/drm/drm_color_mgmt.c | 4 +-
>> drivers/gpu/drm/drm_connector.c | 28 +++---
>> drivers/gpu/drm/drm_context.c | 18 ++--
>> drivers/gpu/drm/drm_crtc.c | 36 ++++---
>> drivers/gpu/drm/drm_crtc_helper.c | 62 ++++++------
>> drivers/gpu/drm/drm_debugfs_crc.c | 8 +-
>> drivers/gpu/drm/drm_displayid.c | 6 +-
>> drivers/gpu/drm/drm_dma.c | 10 +-
>> drivers/gpu/drm/drm_drv.c | 28 +++---
>> drivers/gpu/drm/drm_edid.c | 17 ++--
>> drivers/gpu/drm/drm_file.c | 18 ++--
>> drivers/gpu/drm/drm_flip_work.c | 2 +-
>> drivers/gpu/drm/drm_framebuffer.c | 3 +-
>> drivers/gpu/drm/drm_gem.c | 7 +-
>> drivers/gpu/drm/drm_gem_dma_helper.c | 6 +-
>> drivers/gpu/drm/drm_gem_shmem_helper.c | 6 +-
>> drivers/gpu/drm/drm_hashtab.c | 10 +-
>> drivers/gpu/drm/drm_ioc32.c | 13 +--
>> drivers/gpu/drm/drm_ioctl.c | 24 ++---
>> drivers/gpu/drm/drm_irq.c | 4 +-
>> drivers/gpu/drm/drm_kms_helper_common.c | 2 +-
>> drivers/gpu/drm/drm_lease.c | 68 ++++++-------
>> drivers/gpu/drm/drm_legacy_misc.c | 4 +-
>> drivers/gpu/drm/drm_lock.c | 36 +++----
>> drivers/gpu/drm/drm_mipi_dbi.c | 19 ++--
>> drivers/gpu/drm/drm_mm.c | 8 +-
>> drivers/gpu/drm/drm_mode_config.c | 2 +-
>> drivers/gpu/drm/drm_mode_object.c | 6 +-
>> drivers/gpu/drm/drm_modes.c | 10 +-
>> drivers/gpu/drm/drm_modeset_helper.c | 2 +-
>> drivers/gpu/drm/drm_pci.c | 14 +--
>> drivers/gpu/drm/drm_plane.c | 46 ++++-----
>> drivers/gpu/drm/drm_probe_helper.c | 39 ++++----
>> drivers/gpu/drm/drm_rect.c | 4 +-
>> drivers/gpu/drm/drm_scatter.c | 19 ++--
>> drivers/gpu/drm/drm_syncobj.c | 2 +-
>> drivers/gpu/drm/drm_sysfs.c | 22 ++---
>> drivers/gpu/drm/drm_vm.c | 45 +++++----
>> include/drm/drm_print.h | 91 ++++++++++++++----
>> 44 files changed, 549 insertions(+), 465 deletions(-)
>>

--
Jani Nikula, Intel Open Source Graphics Center

2022-12-21 10:50:59

by Jani Nikula

[permalink] [raw]
Subject: Re: [PATCH 04/10] drm/print: Fix support for NULL as first argument of drm_dbg_*

On Wed, 21 Dec 2022, Siddh Raman Pant <[email protected]> wrote:
> Comments say macros DRM_DEBUG_* are deprecated in favor of
> drm_dbg_*(NULL, ...), but they have broken support for it,
> as the macro will result in `(NULL) ? (NULL)->dev : NULL`.

What's wrong with that?

>
> Thus, fix them by casting input drm to a temporary struct ptr,
> with the same convention as in __DRM_DEFINE_DBG_RATELIMITED.
>
> Signed-off-by: Siddh Raman Pant <[email protected]>
> ---
> include/drm/drm_print.h | 89 ++++++++++++++++++++++++++++++++---------
> 1 file changed, 69 insertions(+), 20 deletions(-)
>
> diff --git a/include/drm/drm_print.h b/include/drm/drm_print.h
> index a44fb7ef257f..53702d830291 100644
> --- a/include/drm/drm_print.h
> +++ b/include/drm/drm_print.h
> @@ -486,26 +486,75 @@ void __drm_dev_dbg(struct _ddebug *desc, const struct device *dev,
> __drm_printk((drm), err, _ratelimited, "*ERROR* " fmt, ##__VA_ARGS__)
>
>
> -#define drm_dbg_core(drm, fmt, ...) \
> - drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_CORE, fmt, ##__VA_ARGS__)
> -#define drm_dbg_driver(drm, fmt, ...) \
> - drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_DRIVER, fmt, ##__VA_ARGS__)
> -#define drm_dbg_kms(drm, fmt, ...) \
> - drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_KMS, fmt, ##__VA_ARGS__)
> -#define drm_dbg_prime(drm, fmt, ...) \
> - drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_PRIME, fmt, ##__VA_ARGS__)
> -#define drm_dbg_atomic(drm, fmt, ...) \
> - drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_ATOMIC, fmt, ##__VA_ARGS__)
> -#define drm_dbg_vbl(drm, fmt, ...) \
> - drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_VBL, fmt, ##__VA_ARGS__)
> -#define drm_dbg_state(drm, fmt, ...) \
> - drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_STATE, fmt, ##__VA_ARGS__)
> -#define drm_dbg_lease(drm, fmt, ...) \
> - drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_LEASE, fmt, ##__VA_ARGS__)
> -#define drm_dbg_dp(drm, fmt, ...) \
> - drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_DP, fmt, ##__VA_ARGS__)
> -#define drm_dbg_drmres(drm, fmt, ...) \
> - drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_DRMRES, fmt, ##__VA_ARGS__)
> +#define drm_dbg_core(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_CORE, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_driver(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_DRIVER, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_kms(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_KMS, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_prime(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_PRIME, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_atomic(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_ATOMIC, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_vbl(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_VBL, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_state(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_STATE, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_lease(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_LEASE, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_dp(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_DP, \
> + fmt, ##__VA_ARGS__); \
> +})
> +
> +#define drm_dbg_drmres(drm, fmt, ...) \
> +({ \
> + const struct drm_device *drm_ = (drm); \
> + drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_DRMRES, \
> + fmt, ##__VA_ARGS__); \
> +})
>
> #define drm_dbg(drm, fmt, ...) drm_dbg_driver(drm, fmt, ##__VA_ARGS__)

--
Jani Nikula, Intel Open Source Graphics Center

2022-12-21 12:12:00

by kernel test robot

[permalink] [raw]
Subject: Re: [PATCH 05/10] drm: Remove usage of deprecated DRM_DEBUG

Hi Siddh,

Thank you for the patch! Perhaps something to improve:

[auto build test WARNING on next-20221220]
[also build test WARNING on linus/master]
[cannot apply to drm-misc/drm-misc-next v6.1 v6.1-rc8 v6.1-rc7 v6.1]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url: https://github.com/intel-lab-lkp/linux/commits/Siddh-Raman-Pant/drm-Remove-usage-of-deprecated-DRM_-macros/20221221-113133
patch link: https://lore.kernel.org/r/0fdcf7a0c9ad77e2d2252cf49fcd5d09952d1b69.1671566741.git.code%40siddh.me
patch subject: [PATCH 05/10] drm: Remove usage of deprecated DRM_DEBUG
config: i386-randconfig-a014-20221219
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/intel-lab-lkp/linux/commit/3990929cf97542bbc76cebc444540d0038b9165c
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Siddh-Raman-Pant/drm-Remove-usage-of-deprecated-DRM_-macros/20221221-113133
git checkout 3990929cf97542bbc76cebc444540d0038b9165c
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/gpu/drm/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <[email protected]>

All warnings (new ones prefixed by >>):

>> drivers/gpu/drm/drm_pci.c:250:15: warning: variable 'dev' is uninitialized when used here [-Wuninitialized]
drm_dbg_core(dev, "\n");
^~~
include/drm/drm_print.h:491:35: note: expanded from macro 'drm_dbg_core'
const struct drm_device *drm_ = (drm); \
^~~
drivers/gpu/drm/drm_pci.c:248:24: note: initialize the variable 'dev' to silence this warning
struct drm_device *dev, *tmp;
^
= NULL
1 warning generated.


vim +/dev +250 drivers/gpu/drm/drm_pci.c

236
237 /**
238 * drm_legacy_pci_exit - unregister shadow-attach legacy DRM driver
239 * @driver: DRM device driver
240 * @pdriver: PCI device driver
241 *
242 * Unregister a DRM driver shadow-attached through drm_legacy_pci_init(). This
243 * is deprecated and only used by dri1 drivers.
244 */
245 void drm_legacy_pci_exit(const struct drm_driver *driver,
246 struct pci_driver *pdriver)
247 {
248 struct drm_device *dev, *tmp;
249
> 250 drm_dbg_core(dev, "\n");
251
252 if (!(driver->driver_features & DRIVER_LEGACY)) {
253 WARN_ON(1);
254 } else {
255 mutex_lock(&legacy_dev_list_lock);
256 list_for_each_entry_safe(dev, tmp, &legacy_dev_list,
257 legacy_dev_list) {
258 if (dev->driver == driver) {
259 list_del(&dev->legacy_dev_list);
260 drm_put_dev(dev);
261 }
262 }
263 mutex_unlock(&legacy_dev_list_lock);
264 }
265 pr_info("Module unloaded\n");
266 }
267 EXPORT_SYMBOL(drm_legacy_pci_exit);
268

--
0-DAY CI Kernel Test Service
https://01.org/lkp


Attachments:
(No filename) (3.65 kB)
config (157.72 kB)
Download all attachments

2022-12-21 12:20:59

by kernel test robot

[permalink] [raw]
Subject: Re: [PATCH 07/10] drm: Remove usage of deprecated DRM_DEBUG_KMS

Hi Siddh,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on next-20221220]
[also build test ERROR on linus/master]
[cannot apply to drm-misc/drm-misc-next v6.1 v6.1-rc8 v6.1-rc7 v6.1]
[If your patch is applied to the wrong git tree, kindly drop us a note.
And when submitting patch, we suggest to use '--base' as documented in
https://git-scm.com/docs/git-format-patch#_base_tree_information]

url: https://github.com/intel-lab-lkp/linux/commits/Siddh-Raman-Pant/drm-Remove-usage-of-deprecated-DRM_-macros/20221221-113133
patch link: https://lore.kernel.org/r/99d9fc30de75907b13228ebd262da01c3c31b042.1671566741.git.code%40siddh.me
patch subject: [PATCH 07/10] drm: Remove usage of deprecated DRM_DEBUG_KMS
config: i386-randconfig-a011-20221219
compiler: clang version 14.0.6 (https://github.com/llvm/llvm-project f28c006a5895fc0e329fe15fead81e37457cb1d1)
reproduce (this is a W=1 build):
wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
chmod +x ~/bin/make.cross
# https://github.com/intel-lab-lkp/linux/commit/64f0237aa9072807bcfccd5ed22d30e7de1f8bb3
git remote add linux-review https://github.com/intel-lab-lkp/linux
git fetch --no-tags linux-review Siddh-Raman-Pant/drm-Remove-usage-of-deprecated-DRM_-macros/20221221-113133
git checkout 64f0237aa9072807bcfccd5ed22d30e7de1f8bb3
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 olddefconfig
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=clang make.cross W=1 O=build_dir ARCH=i386 SHELL=/bin/bash drivers/gpu/drm/

If you fix the issue, kindly add following tag where applicable
| Reported-by: kernel test robot <[email protected]>

All errors (new ones prefixed by >>):

>> drivers/gpu/drm/drm_displayid.c:18:2: error: incomplete definition of type 'struct drm_device'
drm_dbg_kms(NULL, "base revision 0x%x, length %d, %d %d\n",
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/drm/drm_print.h:506:25: note: expanded from macro 'drm_dbg_kms'
drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_KMS, \
~~~~^
include/drm/drm_print.h:414:11: note: expanded from macro 'drm_dev_dbg'
dev, cat, fmt, ##__VA_ARGS__)
^~~
include/linux/dynamic_debug.h:247:65: note: expanded from macro '_dynamic_func_call_cls'
__dynamic_func_call_cls(__UNIQUE_ID(ddebug), cls, fmt, func, ##__VA_ARGS__)
^~~~~~~~~~~
include/linux/dynamic_debug.h:223:15: note: expanded from macro '__dynamic_func_call_cls'
func(&id, ##__VA_ARGS__); \
^~~~~~~~~~~
include/drm/drm_edid.h:30:8: note: forward declaration of 'struct drm_device'
struct drm_device;
^
1 error generated.
--
>> drivers/gpu/drm/drm_edid.c:1990:15: error: use of undeclared identifier 'dev'
drm_dbg_kms(dev, "Fixing EDID header, your hardware may be failing\n");
^
1 error generated.
--
>> drivers/gpu/drm/drm_rect.c:231:3: error: incomplete definition of type 'struct drm_device'
drm_dbg_kms(NULL, "%s" DRM_RECT_FP_FMT "\n", prefix, DRM_RECT_FP_ARG(r));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/drm/drm_print.h:506:25: note: expanded from macro 'drm_dbg_kms'
drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_KMS, \
~~~~^
include/drm/drm_print.h:414:11: note: expanded from macro 'drm_dev_dbg'
dev, cat, fmt, ##__VA_ARGS__)
^~~
include/linux/dynamic_debug.h:247:65: note: expanded from macro '_dynamic_func_call_cls'
__dynamic_func_call_cls(__UNIQUE_ID(ddebug), cls, fmt, func, ##__VA_ARGS__)
^~~~~~~~~~~
include/linux/dynamic_debug.h:223:15: note: expanded from macro '__dynamic_func_call_cls'
func(&id, ##__VA_ARGS__); \
^~~~~~~~~~~
drivers/gpu/drm/drm_rect.c:231:3: note: forward declaration of 'struct drm_device'
include/drm/drm_print.h:505:15: note: expanded from macro 'drm_dbg_kms'
const struct drm_device *drm_ = (drm); \
^
drivers/gpu/drm/drm_rect.c:233:3: error: incomplete definition of type 'struct drm_device'
drm_dbg_kms(NULL, "%s" DRM_RECT_FMT "\n", prefix, DRM_RECT_ARG(r));
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
include/drm/drm_print.h:506:25: note: expanded from macro 'drm_dbg_kms'
drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_KMS, \
~~~~^
include/drm/drm_print.h:414:11: note: expanded from macro 'drm_dev_dbg'
dev, cat, fmt, ##__VA_ARGS__)
^~~
include/linux/dynamic_debug.h:247:65: note: expanded from macro '_dynamic_func_call_cls'
__dynamic_func_call_cls(__UNIQUE_ID(ddebug), cls, fmt, func, ##__VA_ARGS__)
^~~~~~~~~~~
include/linux/dynamic_debug.h:223:15: note: expanded from macro '__dynamic_func_call_cls'
func(&id, ##__VA_ARGS__); \
^~~~~~~~~~~
drivers/gpu/drm/drm_rect.c:233:3: note: forward declaration of 'struct drm_device'
include/drm/drm_print.h:505:15: note: expanded from macro 'drm_dbg_kms'
const struct drm_device *drm_ = (drm); \
^
2 errors generated.


vim +18 drivers/gpu/drm/drm_displayid.c

9
10 static int validate_displayid(const u8 *displayid, int length, int idx)
11 {
12 int i, dispid_length;
13 u8 csum = 0;
14 const struct displayid_header *base;
15
16 base = (const struct displayid_header *)&displayid[idx];
17
> 18 drm_dbg_kms(NULL, "base revision 0x%x, length %d, %d %d\n",
19 base->rev, base->bytes, base->prod_id, base->ext_count);
20
21 /* +1 for DispID checksum */
22 dispid_length = sizeof(*base) + base->bytes + 1;
23 if (dispid_length > length - idx)
24 return -EINVAL;
25
26 for (i = 0; i < dispid_length; i++)
27 csum += displayid[idx + i];
28 if (csum) {
29 pr_notice("DisplayID checksum invalid, remainder is %d\n", csum);
30 return -EINVAL;
31 }
32
33 return 0;
34 }
35

--
0-DAY CI Kernel Test Service
https://01.org/lkp


Attachments:
(No filename) (6.96 kB)
config (135.98 kB)
Download all attachments

2022-12-21 15:42:39

by Siddh Raman Pant

[permalink] [raw]
Subject: Re: [PATCH 04/10] drm/print: Fix support for NULL as first argument of drm_dbg_*

On Wed, Dec 21 2022 at 15:11:07 +0530, Jani Nikula wrote:
> On Wed, 21 Dec 2022, Siddh Raman Pant <[email protected]> wrote:
>> Comments say macros DRM_DEBUG_* are deprecated in favor of
>> drm_dbg_*(NULL, ...), but they have broken support for it,
>> as the macro will result in `(NULL) ? (NULL)->dev : NULL`.
>
> What's wrong with that?

NULL is not a struct, so the syntax is incorrect.

Note that this isn't about a dev pointer whose value is
NULL, the first argument is NULL directly. So "NULL" is
directly substituted as is. If it was a dev pointer, then
the definition of struct allowed for no error, but here
gcc will generate the following error:

error: request for member ‘dev’ in something not a structure or union

Hence, there is a need to fix them.

Thanks,
Siddh

2022-12-21 15:55:59

by Siddh Raman Pant

[permalink] [raw]
Subject: Re: [PATCH 04/10] drm/print: Fix support for NULL as first argument of drm_dbg_*

On Wed, Dec 21 2022 at 14:38:08 +0530, Thomas Zimmermann wrote:
> Hi
>
> Am 20.12.22 um 21:16 schrieb Siddh Raman Pant:
>> Comments say macros DRM_DEBUG_* are deprecated in favor of
>> drm_dbg_*(NULL, ...), but they have broken support for it,
>> as the macro will result in `(NULL) ? (NULL)->dev : NULL`.
>>
>> Thus, fix them by casting input drm to a temporary struct ptr,
>> with the same convention as in __DRM_DEFINE_DBG_RATELIMITED.
>>
>> Signed-off-by: Siddh Raman Pant <[email protected]>
>> ---
>>   include/drm/drm_print.h | 89 ++++++++++++++++++++++++++++++++---------
>>   1 file changed, 69 insertions(+), 20 deletions(-)
>>
>> diff --git a/include/drm/drm_print.h b/include/drm/drm_print.h
>> index a44fb7ef257f..53702d830291 100644
>> --- a/include/drm/drm_print.h
>> +++ b/include/drm/drm_print.h
>> @@ -486,26 +486,75 @@ void __drm_dev_dbg(struct _ddebug *desc, const struct device *dev,
>>       __drm_printk((drm), err, _ratelimited, "*ERROR* " fmt, ##__VA_ARGS__)
>>     -#define drm_dbg_core(drm, fmt, ...)                    \
>> -    drm_dev_dbg((drm) ? (drm)->dev : NULL, DRM_UT_CORE, fmt, ##__VA_ARGS__)
> ...
>> +#define drm_dbg_core(drm, fmt, ...)                \
>> +({                                \
>> +    const struct drm_device *drm_ = (drm);            \
>> +    drm_dev_dbg(drm_ ? drm_->dev : NULL, DRM_UT_CORE,    \
>> +            fmt, ##__VA_ARGS__);            \
>> +})
>
> Instead of doing this for each drm_dbg_ macro, rather add an internal helper that returns the device or NULL like this:
>
> static inline struct device *__drm_print_dev(struct drm_device *drm)
> {
>     if (drm)
>         return drm->dev;
>     return NULL;
> }
>
> and change the macros to
>
> drm_dbg_core(drm, fmt, ...)
>     drm_dev_dbg(__drm_print_dev(drm), DRM_UT_CORE, )
>
> and so on.
>
> Best regards
> Thomas

Sure, I'll send a v2.

Thanks,
Siddh

2022-12-21 16:31:49

by Siddh Raman Pant

[permalink] [raw]
Subject: Re: [PATCH 00/10] drm: Remove usage of deprecated DRM_* macros

On Wed, Dec 21 2022 at 14:46:12 +0530, Thomas Zimmermann wrote:
> Hi
>
> Am 20.12.22 um 21:16 schrieb Siddh Raman Pant:
>> This patchset aims to remove usages of deprecated DRM_* macros from the
>> files residing in drivers/gpu/drm root.
>>
>> In process, I found out that NULL as first argument of drm_dbg_* wasn't
>> working, but it was listed as the alternative in deprecation comment,
>> so I fixed that before removing usages of DRM_DEBUG_* macros.
>>
>> This patchset should be applied in order as changes might be dependent.
>>
>> Please review and let me know if any errors are there, and hopefully
>> this gets accepted.
>
> Thanks for the patchset. Overall this looks fine.
>
> But the use of pr_() functions is not optimal in my opinion. I know that
> I recommended using it, but at a closer look, I think we might want to
> reconsider that. I wouldn't like losing the '[drm]' tag, but adding them
> to each pr_() call isn't a good idea either.
>
> I think it would be nicer to replace DRM_INFO with drm_info(NULL, ).
> Depending on the device being NULL, the helpers would select dev-based
> messages or printk-based messages. It would then work like drm_dbg_().
> But it needs some additional changes.
>
> Can you first move all pr_() related changes into a new patchset? The
> trivial conversion were the device is known and not NULL can remain in
> this patchset and be merged soon. We can afterwards have a separate
> discussion for the changes that currently involve pr_().
>
> Best regards
> Thomas

Maybe I can just cope for NULL in __drm_printk and change all pr_*()
changes in this patchset to the appropriate ones.

Something like:
#define __drm_printk(drm, level, type, fmt, ...) \
({ \
drm_ = __drm_print_dev(drm); \
if (drm_) \
dev_##level##type((drm_)->dev, "[drm] " fmt, ##__VA_ARGS__); \
else \
pr_##level##type("[drm] " fmt, ##__VA_ARGS__); \
})

Thanks,
Siddh