|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen master] x86/mm: replace bogus assertion in paging_log_dirty_op()
commit 0956aa2219745a198bb6a0a99e2108a3c09b280e
Author: Jan Beulich <jbeulich@xxxxxxxx>
AuthorDate: Wed May 3 13:38:30 2023 +0200
Commit: Jan Beulich <jbeulich@xxxxxxxx>
CommitDate: Wed May 3 13:38:30 2023 +0200
x86/mm: replace bogus assertion in paging_log_dirty_op()
While I was the one to introduce it, I don't think it is correct: A
bogus continuation call issued by a tool stack domain may find another
continuation in progress. IOW we've been asserting caller controlled
state (which is reachable only via a domctl), and the early (lock-less)
check in paging_domctl() helps in a limited way only.
Signed-off-by: Jan Beulich <jbeulich@xxxxxxxx>
Acked-by: Roger Pau Monné <roger.pau@xxxxxxxxxx>
---
xen/arch/x86/mm/paging.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/xen/arch/x86/mm/paging.c b/xen/arch/x86/mm/paging.c
index b1d6bfe10e..34d833251b 100644
--- a/xen/arch/x86/mm/paging.c
+++ b/xen/arch/x86/mm/paging.c
@@ -431,8 +431,8 @@ static int paging_log_dirty_op(struct domain *d,
d->arch.paging.preempt.op != sc->op )
{
paging_unlock(d);
- ASSERT(!resuming);
- domain_unpause(d);
+ if ( !resuming )
+ domain_unpause(d);
return -EBUSY;
}
--
generated by git-patchbot for /home/xen/git/xen.git#master
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |