[PATCH] virt/coco/sev-guest: Convert to use time_after macro

Zehao Zhang posted 1 patch 2 years, 7 months ago
drivers/virt/coco/sev-guest/sev-guest.c | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
[PATCH] virt/coco/sev-guest: Convert to use time_after macro
Posted by Zehao Zhang 2 years, 7 months ago
Use time_after macro instead of opening it for readability.

time_after(a,b) returns true if the time a is after time b.

The macro deals with the time wrapper correctly. If the timer wrap
changes in future, there will be no need to alter the driver code.

Signed-off-by: Zehao Zhang <zhangzehao@vivo.com>
---
 drivers/virt/coco/sev-guest/sev-guest.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/virt/coco/sev-guest/sev-guest.c b/drivers/virt/coco/sev-guest/sev-guest.c
index 97dbe715e96a..f17302117c18 100644
--- a/drivers/virt/coco/sev-guest/sev-guest.c
+++ b/drivers/virt/coco/sev-guest/sev-guest.c
@@ -21,6 +21,7 @@
 #include <linux/psp-sev.h>
 #include <uapi/linux/sev-guest.h>
 #include <uapi/linux/psp-sev.h>
+#include <linux/jiffies.h>
 
 #include <asm/svm.h>
 #include <asm/sev.h>
@@ -383,7 +384,7 @@ static int __handle_guest_request(struct snp_guest_dev *snp_dev, u64 exit_code,
 	 * message sequence number on a different message.
 	 */
 	case -EAGAIN:
-		if (jiffies - req_start > SNP_REQ_MAX_RETRY_DURATION) {
+		if (time_after(jiffies, req_start + SNP_REQ_MAX_RETRY_DURATION)) {
 			rc = -ETIMEDOUT;
 			break;
 		}
-- 
2.35.3
Re: [PATCH] virt/coco/sev-guest: Convert to use time_after macro
Posted by Tom Lendacky 2 years, 7 months ago
On 7/6/23 22:06, Zehao Zhang wrote:
> Use time_after macro instead of opening it for readability.
> 
> time_after(a,b) returns true if the time a is after time b.
> 
> The macro deals with the time wrapper correctly. If the timer wrap
> changes in future, there will be no need to alter the driver code.
> 
> Signed-off-by: Zehao Zhang <zhangzehao@vivo.com>

Reviewed-by: Tom Lendacky <thomas.lendacky@amd.com>

> ---
>   drivers/virt/coco/sev-guest/sev-guest.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/virt/coco/sev-guest/sev-guest.c b/drivers/virt/coco/sev-guest/sev-guest.c
> index 97dbe715e96a..f17302117c18 100644
> --- a/drivers/virt/coco/sev-guest/sev-guest.c
> +++ b/drivers/virt/coco/sev-guest/sev-guest.c
> @@ -21,6 +21,7 @@
>   #include <linux/psp-sev.h>
>   #include <uapi/linux/sev-guest.h>
>   #include <uapi/linux/psp-sev.h>
> +#include <linux/jiffies.h>
>   
>   #include <asm/svm.h>
>   #include <asm/sev.h>
> @@ -383,7 +384,7 @@ static int __handle_guest_request(struct snp_guest_dev *snp_dev, u64 exit_code,
>   	 * message sequence number on a different message.
>   	 */
>   	case -EAGAIN:
> -		if (jiffies - req_start > SNP_REQ_MAX_RETRY_DURATION) {
> +		if (time_after(jiffies, req_start + SNP_REQ_MAX_RETRY_DURATION)) {
>   			rc = -ETIMEDOUT;
>   			break;
>   		}