Re: [PATCH v1] ImgTec powerVR DRM driver: Convert to use time_before macro

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi Chen,

Thanks for the patch! Just a couple minor notes.

On 21/08/2024 10:21, Chen Yufan wrote:

Subject: [PATCH v1] ImgTec powerVR DRM driver: Convert to use time_before macro

The prefix here should be based on the source path. For us, that's "drm/imagination:".

Use time_before instead of direct subtraction for readability.

I think the real justification here is correctness. The code as it
currently exists is susceptible to overflow issues that are handled
correctly by the time_*() macros.

Signed-off-by: Chen Yufan <chenyufan@xxxxxxxx>

Please add a Fixes: tag as per [1].

---
  drivers/gpu/drm/imagination/pvr_ccb.c | 2 +-
  1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/imagination/pvr_ccb.c b/drivers/gpu/drm/imagination/pvr_ccb.c
index 4deeac7ed..b7d5f9ca3 100644
--- a/drivers/gpu/drm/imagination/pvr_ccb.c
+++ b/drivers/gpu/drm/imagination/pvr_ccb.c
@@ -321,7 +321,7 @@ static int pvr_kccb_reserve_slot_sync(struct pvr_device *pvr_dev)
  	bool reserved = false;
  	u32 retries = 0;
- while ((jiffies - start_timestamp) < (u32)RESERVE_SLOT_TIMEOUT ||
+	while (time_before(jiffies, start_timestamp + (u32)RESERVE_SLOT_TIMEOUT) ||

You might as well drop the cast here too; it only seems to have existed here
as an attempt to correclty deal with overflow.

Cheers,
Matt

[1]: https://www.kernel.org/doc/html/latest/process/submitting-patches.html#describe-your-changes

  	       retries < RESERVE_SLOT_MIN_RETRIES) {
  		reserved = pvr_kccb_try_reserve_slot(pvr_dev);
  		if (reserved)

Attachment: OpenPGP_signature.asc
Description: OpenPGP digital signature


[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux