mirror of https://github.com/torvalds/linux.git
mm/swapfile: use plist_for_each_entry in __folio_throttle_swaprate
The loop breaks immediately after finding the first swap device and never modifies the list. Replace plist_for_each_entry_safe() with plist_for_each_entry() and remove the unused next variable. Link: https://lkml.kernel.org/r/20251127100303.783198-3-youngjun.park@lge.com Signed-off-by: Youngjun Park <youngjun.park@lge.com> Reviewed-by: Baoquan He <bhe@redhat.com> Acked-by: Kairui Song <kasong@tencent.com> Acked-by: Chris Li <chrisl@kernel.org> Cc: Barry Song <baohua@kernel.org> Cc: Kemeng Shi <shikemeng@huaweicloud.com> Cc: Nhat Pham <nphamcs@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
This commit is contained in:
parent
f9e82f99b3
commit
b60a3ef784
|
|
@ -4023,7 +4023,7 @@ static bool __has_usable_swap(void)
|
|||
|
||||
void __folio_throttle_swaprate(struct folio *folio, gfp_t gfp)
|
||||
{
|
||||
struct swap_info_struct *si, *next;
|
||||
struct swap_info_struct *si;
|
||||
|
||||
if (!(gfp & __GFP_IO))
|
||||
return;
|
||||
|
|
@ -4042,8 +4042,7 @@ void __folio_throttle_swaprate(struct folio *folio, gfp_t gfp)
|
|||
return;
|
||||
|
||||
spin_lock(&swap_avail_lock);
|
||||
plist_for_each_entry_safe(si, next, &swap_avail_head,
|
||||
avail_list) {
|
||||
plist_for_each_entry(si, &swap_avail_head, avail_list) {
|
||||
if (si->bdev) {
|
||||
blkcg_schedule_throttle(si->bdev->bd_disk, true);
|
||||
break;
|
||||
|
|
|
|||
Loading…
Reference in New Issue