2024-05-31 09:17:09

by Jiapeng Chong

[permalink] [raw]
Subject: [PATCH] mm: userfaultfd: Use swap() in double_pt_lock()

Use existing swap() function rather than duplicating its implementation.

/mm/userfaultfd.c:1006:13-14: WARNING opportunity for swap()

Reported-by: Abaci Robot <[email protected]>
Closes: https://bugzilla.openanolis.cn/show_bug.cgi?id=9266
Signed-off-by: Jiapeng Chong <[email protected]>
---
mm/userfaultfd.c | 10 ++--------
1 file changed, 2 insertions(+), 8 deletions(-)

diff --git a/mm/userfaultfd.c b/mm/userfaultfd.c
index defa5109cc62..5e7f2801698a 100644
--- a/mm/userfaultfd.c
+++ b/mm/userfaultfd.c
@@ -995,14 +995,8 @@ void double_pt_lock(spinlock_t *ptl1,
__acquires(ptl1)
__acquires(ptl2)
{
- spinlock_t *ptl_tmp;
-
- if (ptl1 > ptl2) {
- /* exchange ptl1 and ptl2 */
- ptl_tmp = ptl1;
- ptl1 = ptl2;
- ptl2 = ptl_tmp;
- }
+ if (ptl1 > ptl2)
+ swap(ptl1, ptl2);
/* lock in virtual address order to avoid lock inversion */
spin_lock(ptl1);
if (ptl1 != ptl2)
--
2.20.1.7.g153144c



2024-05-31 10:16:07

by David Hildenbrand

[permalink] [raw]
Subject: Re: [PATCH] mm: userfaultfd: Use swap() in double_pt_lock()

On 31.05.24 11:16, Jiapeng Chong wrote:
> Use existing swap() function rather than duplicating its implementation.
>
> ./mm/userfaultfd.c:1006:13-14: WARNING opportunity for swap()
>
> Reported-by: Abaci Robot <[email protected]>
> Closes: https://bugzilla.openanolis.cn/show_bug.cgi?id=9266
> Signed-off-by: Jiapeng Chong <[email protected]>
> ---
> mm/userfaultfd.c | 10 ++--------
> 1 file changed, 2 insertions(+), 8 deletions(-)
>
> diff --git a/mm/userfaultfd.c b/mm/userfaultfd.c
> index defa5109cc62..5e7f2801698a 100644
> --- a/mm/userfaultfd.c
> +++ b/mm/userfaultfd.c
> @@ -995,14 +995,8 @@ void double_pt_lock(spinlock_t *ptl1,
> __acquires(ptl1)
> __acquires(ptl2)
> {
> - spinlock_t *ptl_tmp;
> -
> - if (ptl1 > ptl2) {
> - /* exchange ptl1 and ptl2 */
> - ptl_tmp = ptl1;
> - ptl1 = ptl2;
> - ptl2 = ptl_tmp;
> - }
> + if (ptl1 > ptl2)
> + swap(ptl1, ptl2);
> /* lock in virtual address order to avoid lock inversion */
> spin_lock(ptl1);
> if (ptl1 != ptl2)

Reviewed-by: David Hildenbrand <[email protected]>

--
Cheers,

David / dhildenb


2024-06-01 14:09:10

by Wei Yang

[permalink] [raw]
Subject: Re: [PATCH] mm: userfaultfd: Use swap() in double_pt_lock()

On Fri, May 31, 2024 at 05:16:43PM +0800, Jiapeng Chong wrote:
>Use existing swap() function rather than duplicating its implementation.
>
>/mm/userfaultfd.c:1006:13-14: WARNING opportunity for swap()
>
>Reported-by: Abaci Robot <[email protected]>
>Closes: https://bugzilla.openanolis.cn/show_bug.cgi?id=9266
>Signed-off-by: Jiapeng Chong <[email protected]>

Reviewed-by: Wei Yang <[email protected]>

--
Wei Yang
Help you, Help me