Page MenuHomeFreeBSD

Merge booke and aim interrupt.c files.
ClosedPublic

Authored by jhibbits on Jul 4 2015, 9:25 PM.
Tags
None
Referenced Files
Unknown Object (File)
Thu, Oct 31, 11:15 AM
Unknown Object (File)
Oct 15 2024, 12:59 AM
Unknown Object (File)
Oct 1 2024, 3:13 PM
Unknown Object (File)
Sep 17 2024, 9:38 PM
Unknown Object (File)
Sep 15 2024, 11:51 PM
Unknown Object (File)
Sep 8 2024, 12:50 PM
Unknown Object (File)
Sep 8 2024, 1:02 AM
Unknown Object (File)
Sep 7 2024, 4:35 PM
Subscribers

Details

Summary

Both booke and AIM interrupt.c files contain nearly identical code. This merges
the two files, to reduce duplication.

Diff Detail

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

Event Timeline

jhibbits retitled this revision from to Merge booke and aim interrupt.c files..
jhibbits updated this object.
jhibbits edited the test plan for this revision. (Show Details)
jhibbits added reviewers: PowerPC, marcel.
marcel requested changes to this revision.Jul 5 2015, 3:55 PM
marcel edited edge metadata.

I like the unification, but...

In powerpc_extr_interrupt(), we clear WE (as in: framep->srr1 &= ~PSL_WE), so that when an interrupt wakes us from doze or nap we don't fall back to sleep after the interrupt,but instead we stay awake. If there's nothing to do, then the scheduler will have us go back to sleep. There's no such code in powerpc_interrupt(), which means that doze/nap will be broken by this change.
In powerpc_decr_interrupt() we do the same.

You could add this to trap_subr.S by having int_external_input and powerpc_decr_interrupt branch to a new label that clears PSL_WE before going to trapexit.

Other than that: LGTM.

This revision now requires changes to proceed.Jul 5 2015, 3:55 PM

Thanks for the review, I completely missed that bit. I'll have a new patch tested and ready soon.

jhibbits edited edge metadata.

Address Marcel's comments. Now it clears PSL_WE before returning from extint
and decr interrupts.

marcel edited edge metadata.
This revision is now accepted and ready to land.Jul 6 2015, 4:34 AM
This revision was automatically updated to reflect the committed changes.