From: Thomas Zimmermann <tzimmermann@suse.de>
To: Sam Ravnborg <sam@ravnborg.org>
Cc: dri-devel@lists.freedesktop.org
Subject: Re: [PATCH 85/86] drm: move drm_timeout_abs_to_jiffies to drm_util
Date: Tue, 24 Jan 2023 12:25:44 +0100 [thread overview]
Message-ID: <428629ec-ab0c-db11-56e7-9377c8d73bab@suse.de> (raw)
In-Reply-To: <Y87yKPS1UfwL9xp4@ravnborg.org>
[-- Attachment #1.1: Type: text/plain, Size: 4493 bytes --]
Hi
Am 23.01.23 um 21:46 schrieb Sam Ravnborg:
> Hi Thomas,
>
> On Mon, Jan 23, 2023 at 09:57:13AM +0100, Thomas Zimmermann wrote:
>> Hi Sam,
>>
>> please see my comment below.
>>
>> Am 21.01.23 um 21:09 schrieb Sam Ravnborg via B4 Submission Endpoint:
>>> From: Sam Ravnborg <sam@ravnborg.org>
>>>
>>> drm_timeout_abs_to_jiffies() was implmented in drm_syncobj where
>>> it really did not belong. Create a drm_util file and move the
>>> implementation. Likewise move the prototype and update all users.
>>>
>>> Suggested-by: Daniel Vetter <daniel@ffwll.ch>
>>> [https://lore.kernel.org/dri-devel/20190527185311.GS21222@phenom.ffwll.local/]
>>> Cc: Daniel Vetter <daniel@ffwll.ch>
>>> Signed-off-by: Sam Ravnborg <sam@ravnborg.org>
>>> ---
>>> drivers/accel/ivpu/ivpu_gem.c | 2 +-
>>> drivers/gpu/drm/Makefile | 1 +
>>> drivers/gpu/drm/drm_syncobj.c | 34 ----------------------------
>>> drivers/gpu/drm/drm_util.c | 40 +++++++++++++++++++++++++++++++++
>>> drivers/gpu/drm/lima/lima_gem.c | 2 +-
>>> drivers/gpu/drm/panfrost/panfrost_drv.c | 2 +-
>>> drivers/gpu/drm/tegra/uapi.c | 2 +-
>>> include/drm/drm_util.h | 1 +
>>> include/drm/drm_utils.h | 2 --
>>> 9 files changed, 46 insertions(+), 40 deletions(-)
>>>
>>> diff --git a/drivers/accel/ivpu/ivpu_gem.c b/drivers/accel/ivpu/ivpu_gem.c
>>> index d1f923971b4c..55aa94ba6c10 100644
>>> --- a/drivers/accel/ivpu/ivpu_gem.c
>>> +++ b/drivers/accel/ivpu/ivpu_gem.c
>>> @@ -12,7 +12,7 @@
>>> #include <drm/drm_cache.h>
>>> #include <drm/drm_debugfs.h>
>>> #include <drm/drm_file.h>
>>> -#include <drm/drm_utils.h>
>>> +#include <drm/drm_util.h>
>>> #include "ivpu_drv.h"
>>> #include "ivpu_gem.h"
>>> diff --git a/drivers/gpu/drm/Makefile b/drivers/gpu/drm/Makefile
>>> index ab4460fcd63f..561b93d19685 100644
>>> --- a/drivers/gpu/drm/Makefile
>>> +++ b/drivers/gpu/drm/Makefile
>>> @@ -42,6 +42,7 @@ drm-y := \
>>> drm_syncobj.o \
>>> drm_sysfs.o \
>>> drm_trace_points.o \
>>> + drm_util.o \
>>> drm_vblank.o \
>>> drm_vblank_work.o \
>>> drm_vma_manager.o \
>>> diff --git a/drivers/gpu/drm/drm_syncobj.c b/drivers/gpu/drm/drm_syncobj.c
>>> index 0c2be8360525..35f5416c5cfe 100644
>>> --- a/drivers/gpu/drm/drm_syncobj.c
>>> +++ b/drivers/gpu/drm/drm_syncobj.c
>>> @@ -197,7 +197,6 @@
>>> #include <drm/drm_gem.h>
>>> #include <drm/drm_print.h>
>>> #include <drm/drm_syncobj.h>
>>> -#include <drm/drm_utils.h>
>>> #include "drm_internal.h"
>>> @@ -1114,39 +1113,6 @@ static signed long drm_syncobj_array_wait_timeout(struct drm_syncobj **syncobjs,
>>> return timeout;
>>> }
>>> -/**
>>> - * drm_timeout_abs_to_jiffies - calculate jiffies timeout from absolute value
>>> - *
>>> - * @timeout_nsec: timeout nsec component in ns, 0 for poll
>>> - *
>>> - * Calculate the timeout in jiffies from an absolute time in sec/nsec.
>>> - */
>>> -signed long drm_timeout_abs_to_jiffies(int64_t timeout_nsec)
>
> Thanks for the critical look at this!
>
>>
>> This function converts an absolute timeout in nsec to a relative timeout in
>> jiffies. (?)
>>
>> It appears to me as if this helper should not exist. It uses a mixture of
>> different time interfaces; combined with hardcoded policy for 0 and
>> MAX_SCHEDULE_TIMEOUT.
>>
>> There are only 3 callers of this helper. I think we should consider inlining
>> it in each.
>>
>> As part of this, maybe the use of ktime could go away. Convert nsecs to
>> jiffies and do the rest of the computation in jiffies.
>
> I blindly copied the existing function and did not consider the
> implementation. Looking for a helper that do what we needs here turned
> up empty. I also looked at your suggestion to do:
> nsec in absolute => jiffies in absolute => jiffies in relative
> But did not find something that is better than what we have.
>
> I will leave it for now, and focus on the other parts of the patchset.
> In the vain hope someone else takes a look.
No problem. You can add
Reviewed-by: Thomas Zimmermann <tzimmermann@suse.de>
to patches 85 and 86 as well.
Best regards
Thomas
>
> Sam
--
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
[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 840 bytes --]
next prev parent reply other threads:[~2023-01-24 11:25 UTC|newest]
Thread overview: 98+ messages / expand[flat|nested] mbox.gz Atom feed top
2023-01-21 20:07 [PATCH 00/86] drm: Header file maintenance Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 01/86] drm/komeda: Direct include headers from drm_print Sam Ravnborg via B4 Submission Endpoint
2023-01-23 7:57 ` Thomas Zimmermann
2023-01-21 20:07 ` [PATCH 02/86] drm/bridge: ite-it6505: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 03/86] drm/bridge: panel: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 04/86] drm/msm: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 05/86] drm/nouveau: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 06/86] drm/omapdrm: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 07/86] drm/radeon: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 08/86] drm/ttm: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 09/86] drm/scheduler: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 10/86] drm/armada: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 11/86] drm/sti: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 12/86] drm/vc4: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 13/86] drm/drm_print: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 14/86] drm/vmwgfx: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 15/86] drm/i915: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 16/86] drm/drm_print: Minimize include footprint Sam Ravnborg via B4 Submission Endpoint
2023-01-21 23:19 ` kernel test robot
2023-01-22 20:58 ` Sam Ravnborg
2023-01-24 15:51 ` kernel test robot
2023-01-21 20:07 ` [PATCH 17/86] drm/xlnx: Direct include headers from drm_atomic_helper Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 18/86] drm/amd: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 19/86] drm/komeda: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 20/86] drm/arm/hdlcd: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:07 ` [PATCH 21/86] drm/arm/malidp: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 22/86] drm/armada: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 23/86] drm/aspeed: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 24/86] drm/ast: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 25/86] drm/atmel-hlcdc: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 26/86] drm/bridge: adv7511: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 27/86] drm/bridge: analogix: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 28/86] drm/bridge: chipone: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 29/86] drm/bridge: chrontel: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 30/86] drm/bridge: display-connector: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 31/86] drm/bridge: fsl-ldb: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 32/86] drm/bridge: ite: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 33/86] drm/bridge: lontium: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 34/86] drm/bridge: lvds-codec: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 35/86] drm/bridge: megachips: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 36/86] drm/bridge: nxp: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 37/86] drm/bridge: panel: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 38/86] drm/bridge: sii902x: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 39/86] drm/bridge: simple-bridge: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 40/86] drm/bridge: synopsys: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 41/86] drm/bridge: tc358767: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 42/86] drm/bridge: ti: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 43/86] drm/display: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 44/86] drm: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 45/86] drm/exynos: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 46/86] drm/fsl-dcu: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 47/86] drm/gud: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 48/86] drm/hisilicon: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 49/86] drm/hyperv: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 50/86] drm/i2c: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 51/86] drm/i915: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 52/86] drm/imx: " Sam Ravnborg via B4 Submission Endpoint
2023-01-23 9:26 ` Philipp Zabel
2023-01-21 20:08 ` [PATCH 53/86] drm/ingenic: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 54/86] drm/kmb: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 55/86] drm/logicvc: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 56/86] drm/mcde: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 57/86] drm/mediatek: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 58/86] drm/meson: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 59/86] drm/mgag200: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 60/86] drm/msm: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 61/86] drm/mxsfb: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 62/86] drm/nouveau: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 63/86] drm/omapdrm: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 64/86] drm/qxl: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 65/86] drm/rcar-du: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 66/86] drm/rockchip: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 67/86] drm/solomon: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 68/86] drm/sprd: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 69/86] drm/sti: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 70/86] drm/stm: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 71/86] drm/sun4i: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 72/86] drm/tegra: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 73/86] drm/tests: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 74/86] drm/tidss: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 75/86] drm/tilcdc: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 76/86] drm/tiny: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 77/86] drm/udl: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 78/86] drm/vboxvideo: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 79/86] drm/vc4: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 80/86] drm/virtio: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:08 ` [PATCH 81/86] drm/vkms: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:09 ` [PATCH 82/86] drm/vmwgfx: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:09 ` [PATCH 83/86] drm/xen: " Sam Ravnborg via B4 Submission Endpoint
2023-01-21 20:09 ` [PATCH 84/86] drm/drm_atomic_helper: Minimize include footprint Sam Ravnborg via B4 Submission Endpoint
2023-01-23 7:59 ` Thomas Zimmermann
2023-01-21 20:09 ` [PATCH 85/86] drm: move drm_timeout_abs_to_jiffies to drm_util Sam Ravnborg via B4 Submission Endpoint
2023-01-23 8:57 ` Thomas Zimmermann
2023-01-23 20:46 ` Sam Ravnborg
2023-01-24 11:25 ` Thomas Zimmermann [this message]
2023-01-21 20:09 ` [PATCH 86/86] drm: Move drm_get_panel_orientation_quirk prototype to drm_panel Sam Ravnborg via B4 Submission Endpoint
2023-01-23 9:00 ` [PATCH 00/86] drm: Header file maintenance Thomas Zimmermann
2023-01-23 20:22 ` Sam Ravnborg
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=428629ec-ab0c-db11-56e7-9377c8d73bab@suse.de \
--to=tzimmermann@suse.de \
--cc=dri-devel@lists.freedesktop.org \
--cc=sam@ravnborg.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox