Hi, 2025년 6월 18일 (수) 오후 4:56, Thomas Weißschuh <thomas.weisssc...@linutronix.de>님이 작성: > > In the past %pK was preferable to %p as it would not leak raw pointer > values into the kernel log. > Since commit ad67b74d2469 ("printk: hash addresses printed with %p") > the regular %p has been improved to avoid this issue. > Furthermore, restricted pointers ("%pK") were never meant to be used > through printk(). They can still unintentionally leak raw pointers or > acquire sleeping locks in atomic contexts. > > Switch to the regular pointer formatting which is safer and > easier to reason about.
Applied. Thanks, Inki Dae > > Signed-off-by: Thomas Weißschuh <thomas.weisssc...@linutronix.de> > --- > drivers/gpu/drm/exynos/exynos_drm_gem.c | 2 +- > drivers/gpu/drm/exynos/exynos_drm_ipp.c | 32 ++++++++++++++++---------------- > 2 files changed, 17 insertions(+), 17 deletions(-) > > diff --git a/drivers/gpu/drm/exynos/exynos_drm_gem.c > b/drivers/gpu/drm/exynos/exynos_drm_gem.c > index > 4787fee4696f8e6f9eecaacb1535765c246688c8..d44401a695e203bd36b3b6678fdeb3572a91bfda > 100644 > --- a/drivers/gpu/drm/exynos/exynos_drm_gem.c > +++ b/drivers/gpu/drm/exynos/exynos_drm_gem.c > @@ -174,7 +174,7 @@ static struct exynos_drm_gem *exynos_drm_gem_init(struct > drm_device *dev, > return ERR_PTR(ret); > } > > - DRM_DEV_DEBUG_KMS(dev->dev, "created file object = %pK\n", obj->filp); > + DRM_DEV_DEBUG_KMS(dev->dev, "created file object = %p\n", obj->filp); > > return exynos_gem; > } > diff --git a/drivers/gpu/drm/exynos/exynos_drm_ipp.c > b/drivers/gpu/drm/exynos/exynos_drm_ipp.c > index > ea9f66037600e1020da4b0a9c318ca2f2266a871..03c8490af4f45447d123a20777e5362ebd933b46 > 100644 > --- a/drivers/gpu/drm/exynos/exynos_drm_ipp.c > +++ b/drivers/gpu/drm/exynos/exynos_drm_ipp.c > @@ -271,7 +271,7 @@ static inline struct exynos_drm_ipp_task * > task->src.rect.h = task->dst.rect.h = UINT_MAX; > task->transform.rotation = DRM_MODE_ROTATE_0; > > - DRM_DEV_DEBUG_DRIVER(task->dev, "Allocated task %pK\n", task); > + DRM_DEV_DEBUG_DRIVER(task->dev, "Allocated task %p\n", task); > > return task; > } > @@ -339,7 +339,7 @@ static int exynos_drm_ipp_task_set(struct > exynos_drm_ipp_task *task, > } > > DRM_DEV_DEBUG_DRIVER(task->dev, > - "Got task %pK configuration from userspace\n", > + "Got task %p configuration from userspace\n", > task); > return 0; > } > @@ -394,7 +394,7 @@ static void exynos_drm_ipp_task_release_buf(struct > exynos_drm_ipp_buffer *buf) > static void exynos_drm_ipp_task_free(struct exynos_drm_ipp *ipp, > struct exynos_drm_ipp_task *task) > { > - DRM_DEV_DEBUG_DRIVER(task->dev, "Freeing task %pK\n", task); > + DRM_DEV_DEBUG_DRIVER(task->dev, "Freeing task %p\n", task); > > exynos_drm_ipp_task_release_buf(&task->src); > exynos_drm_ipp_task_release_buf(&task->dst); > @@ -559,7 +559,7 @@ static int exynos_drm_ipp_check_format(struct > exynos_drm_ipp_task *task, > > DRM_EXYNOS_IPP_FORMAT_DESTINATION); > if (!fmt) { > DRM_DEV_DEBUG_DRIVER(task->dev, > - "Task %pK: %s format not supported\n", > + "Task %p: %s format not supported\n", > task, buf == src ? "src" : "dst"); > return -EINVAL; > } > @@ -609,7 +609,7 @@ static int exynos_drm_ipp_task_check(struct > exynos_drm_ipp_task *task) > bool rotate = (rotation != DRM_MODE_ROTATE_0); > bool scale = false; > > - DRM_DEV_DEBUG_DRIVER(task->dev, "Checking task %pK\n", task); > + DRM_DEV_DEBUG_DRIVER(task->dev, "Checking task %p\n", task); > > if (src->rect.w == UINT_MAX) > src->rect.w = src->buf.width; > @@ -625,7 +625,7 @@ static int exynos_drm_ipp_task_check(struct > exynos_drm_ipp_task *task) > dst->rect.x + dst->rect.w > (dst->buf.width) || > dst->rect.y + dst->rect.h > (dst->buf.height)) { > DRM_DEV_DEBUG_DRIVER(task->dev, > - "Task %pK: defined area is outside > provided buffers\n", > + "Task %p: defined area is outside > provided buffers\n", > task); > return -EINVAL; > } > @@ -642,7 +642,7 @@ static int exynos_drm_ipp_task_check(struct > exynos_drm_ipp_task *task) > (!(ipp->capabilities & DRM_EXYNOS_IPP_CAP_SCALE) && scale) || > (!(ipp->capabilities & DRM_EXYNOS_IPP_CAP_CONVERT) && > src->buf.fourcc != dst->buf.fourcc)) { > - DRM_DEV_DEBUG_DRIVER(task->dev, "Task %pK: hw capabilities > exceeded\n", > + DRM_DEV_DEBUG_DRIVER(task->dev, "Task %p: hw capabilities > exceeded\n", > task); > return -EINVAL; > } > @@ -655,7 +655,7 @@ static int exynos_drm_ipp_task_check(struct > exynos_drm_ipp_task *task) > if (ret) > return ret; > > - DRM_DEV_DEBUG_DRIVER(ipp->dev, "Task %pK: all checks done.\n", > + DRM_DEV_DEBUG_DRIVER(ipp->dev, "Task %p: all checks done.\n", > task); > > return ret; > @@ -667,25 +667,25 @@ static int exynos_drm_ipp_task_setup_buffers(struct > exynos_drm_ipp_task *task, > struct exynos_drm_ipp_buffer *src = &task->src, *dst = &task->dst; > int ret = 0; > > - DRM_DEV_DEBUG_DRIVER(task->dev, "Setting buffer for task %pK\n", > + DRM_DEV_DEBUG_DRIVER(task->dev, "Setting buffer for task %p\n", > task); > > ret = exynos_drm_ipp_task_setup_buffer(src, filp); > if (ret) { > DRM_DEV_DEBUG_DRIVER(task->dev, > - "Task %pK: src buffer setup failed\n", > + "Task %p: src buffer setup failed\n", > task); > return ret; > } > ret = exynos_drm_ipp_task_setup_buffer(dst, filp); > if (ret) { > DRM_DEV_DEBUG_DRIVER(task->dev, > - "Task %pK: dst buffer setup failed\n", > + "Task %p: dst buffer setup failed\n", > task); > return ret; > } > > - DRM_DEV_DEBUG_DRIVER(task->dev, "Task %pK: buffers prepared.\n", > + DRM_DEV_DEBUG_DRIVER(task->dev, "Task %p: buffers prepared.\n", > task); > > return ret; > @@ -764,7 +764,7 @@ void exynos_drm_ipp_task_done(struct exynos_drm_ipp_task > *task, int ret) > struct exynos_drm_ipp *ipp = task->ipp; > unsigned long flags; > > - DRM_DEV_DEBUG_DRIVER(task->dev, "ipp: %d, task %pK done: %d\n", > + DRM_DEV_DEBUG_DRIVER(task->dev, "ipp: %d, task %p done: %d\n", > ipp->id, task, ret); > > spin_lock_irqsave(&ipp->lock, flags); > @@ -807,7 +807,7 @@ static void exynos_drm_ipp_next_task(struct > exynos_drm_ipp *ipp) > spin_unlock_irqrestore(&ipp->lock, flags); > > DRM_DEV_DEBUG_DRIVER(ipp->dev, > - "ipp: %d, selected task %pK to run\n", ipp->id, > + "ipp: %d, selected task %p to run\n", ipp->id, > task); > > ret = ipp->funcs->commit(ipp, task); > @@ -917,14 +917,14 @@ int exynos_drm_ipp_commit_ioctl(struct drm_device *dev, > void *data, > */ > if (arg->flags & DRM_EXYNOS_IPP_FLAG_NONBLOCK) { > DRM_DEV_DEBUG_DRIVER(ipp->dev, > - "ipp: %d, nonblocking processing task > %pK\n", > + "ipp: %d, nonblocking processing task > %p\n", > ipp->id, task); > > task->flags |= DRM_EXYNOS_IPP_TASK_ASYNC; > exynos_drm_ipp_schedule_task(task->ipp, task); > ret = 0; > } else { > - DRM_DEV_DEBUG_DRIVER(ipp->dev, "ipp: %d, processing task > %pK\n", > + DRM_DEV_DEBUG_DRIVER(ipp->dev, "ipp: %d, processing task > %p\n", > ipp->id, task); > exynos_drm_ipp_schedule_task(ipp, task); > ret = wait_event_interruptible(ipp->done_wq, > > -- > 2.49.0 > >