From 82d6fe991c6425b7839a229ec96357be200cb783 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=86=B7=E9=92=A6=E8=A1=97?= <15390014138@163.com> Date: Wed, 3 Feb 2021 15:43:39 +0800 Subject: [PATCH] update kernel/base/vm/los_vm_phys.c. --- kernel/base/vm/los_vm_phys.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/kernel/base/vm/los_vm_phys.c b/kernel/base/vm/los_vm_phys.c index 0ee98d05..88f505a5 100644 --- a/kernel/base/vm/los_vm_phys.c +++ b/kernel/base/vm/los_vm_phys.c @@ -339,8 +339,7 @@ VOID OsVmPhysPagesFree(LosVmPage *page, UINT8 order) VOID OsVmPhysPagesFreeContiguous(LosVmPage *page, size_t nPages) { paddr_t pa; - UINT32 order; - size_t count; + UINT32 order; size_t n; while (TRUE) { @@ -355,10 +354,11 @@ VOID OsVmPhysPagesFreeContiguous(LosVmPage *page, size_t nPages) page += n; } - for (count = 0; count < nPages; count += n) { + while (nPages > 0) { order = LOS_HighBitGet(nPages); n = VM_ORDER_TO_PAGES(order); OsVmPhysPagesFree(page, order); + nPages -= n; page += n; } }