Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

more smp fixes #1304

Merged
merged 5 commits into from
Oct 5, 2020
Merged

more smp fixes #1304

merged 5 commits into from
Oct 5, 2020

Conversation

wjhun
Copy link
Contributor

@wjhun wjhun commented Oct 1, 2020

  • remove sloppy uses of ci->have_kernel_lock on lock acquisition; flag should instead be used for debug assertions
  • explicitly release kernel lock on calls to runloop (aside from kernel page fault)
  • clear ci->have_kernel_lock before suspending kernel context on page fault, reset on context resume
  • allow pagecache I/O completions to be served on either bhqueue or runqueue depending on origin of request
  • change vq_interrupt to enqueue to vq->sched_queue instead of bhqueue
  • fix invalid dereference of current in syscall_schedule

While stability issues remain when running with SMP (see #1302 for known issues), webg and other tests progress much further now.

wjhun added 2 commits October 1, 2020 17:05
…>have_kernel_lock on kernel context suspend/resume for kernel page faults
…epending on origin of request; pc/service.c: missing kern_unlock in kernel_shutdown_ex
@wjhun wjhun requested a review from a team October 1, 2020 21:30
@francescolavra
Copy link
Member

Looks good to me.

@wjhun wjhun merged commit 610406e into master Oct 5, 2020
@wjhun wjhun deleted the smp-fix-2 branch December 2, 2020 18:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants