Message ID | 20240531091643.67778-1-jiapeng.chong@linux.alibaba.com (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | mm: userfaultfd: Use swap() in double_pt_lock() | expand |
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 <abaci@linux.alibaba.com> > Closes: https://bugzilla.openanolis.cn/show_bug.cgi?id=9266 > Signed-off-by: Jiapeng Chong <jiapeng.chong@linux.alibaba.com> > --- > 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 <david@redhat.com>
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)
Use existing swap() function rather than duplicating its implementation. ./mm/userfaultfd.c:1006:13-14: WARNING opportunity for swap() Reported-by: Abaci Robot <abaci@linux.alibaba.com> Closes: https://bugzilla.openanolis.cn/show_bug.cgi?id=9266 Signed-off-by: Jiapeng Chong <jiapeng.chong@linux.alibaba.com> --- mm/userfaultfd.c | 10 ++-------- 1 file changed, 2 insertions(+), 8 deletions(-)