Replace TCB.inner.block with TCB::acquire_inner_lock
This commit is contained in:
parent
21095633d5
commit
170c458555
1 changed files with 2 additions and 2 deletions
|
@ -118,7 +118,7 @@ impl TaskControlBlock {
|
||||||
.ppn();
|
.ppn();
|
||||||
|
|
||||||
// **** hold current PCB lock
|
// **** hold current PCB lock
|
||||||
let mut inner = self.inner.lock();
|
let mut inner = self.acquire_inner_lock();
|
||||||
// substitute memory_set
|
// substitute memory_set
|
||||||
inner.memory_set = memory_set;
|
inner.memory_set = memory_set;
|
||||||
// update trap_cx ppn
|
// update trap_cx ppn
|
||||||
|
@ -140,7 +140,7 @@ impl TaskControlBlock {
|
||||||
}
|
}
|
||||||
pub fn fork(self: &Arc<TaskControlBlock>) -> Arc<TaskControlBlock> {
|
pub fn fork(self: &Arc<TaskControlBlock>) -> Arc<TaskControlBlock> {
|
||||||
// ---- hold parent PCB lock
|
// ---- hold parent PCB lock
|
||||||
let mut parent_inner = self.inner.lock();
|
let mut parent_inner = self.acquire_inner_lock();
|
||||||
// copy user space(include trap context)
|
// copy user space(include trap context)
|
||||||
let memory_set = MemorySet::from_existed_user(
|
let memory_set = MemorySet::from_existed_user(
|
||||||
&parent_inner.memory_set
|
&parent_inner.memory_set
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue