Page MenuHomeFreeBSD

More exception.S changes
ClosedPublic

Authored by kib on Sep 22 2015, 4:55 PM.
Tags
Referenced Files
F101287932: D3714.id8897.diff
Sun, Oct 27, 6:34 AM
Unknown Object (File)
Thu, Oct 17, 4:05 AM
Unknown Object (File)
Tue, Oct 1, 4:32 AM
Unknown Object (File)
Mon, Sep 30, 5:10 PM
Unknown Object (File)
Fri, Sep 27, 5:24 PM
Unknown Object (File)
Sep 26 2024, 5:45 AM
Unknown Object (File)
Sep 25 2024, 10:57 AM
Unknown Object (File)
Sep 25 2024, 7:21 AM
Subscribers

Details

Summary

Call ast when handling irq from userspace, otherwise we could miss reschedule. Right now arm_cpu_intr() does critical_exit() as the last action, so the impact is not serious.

Keep interrupts disabled after do_ast, otherwise we might miss reschedule if interrupt is delivered after the ast handler called.

Diff Detail

Repository
rS FreeBSD src repository - subversion
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

kib retitled this revision from to More exception.S changes.
kib updated this object.
kib edited the test plan for this revision. (Show Details)
kib added reviewers: andrew, emaste.
kib set the repository for this revision to rS FreeBSD src repository - subversion.
kib added a project: arm64.

Re-merge after r288117. Part of the previous patch was consumed by the commit.

Use full context for diff.

andrew edited edge metadata.
andrew added inline comments.
sys/arm64/arm64/exception.S
118–119 ↗(On Diff #8893)

This could be written as

and x2, x2, x3
cbz x2, 2f
This revision is now accepted and ready to land.Sep 22 2015, 5:57 PM
This revision was automatically updated to reflect the committed changes.