diff options
| author | nakayama <nakayama@NetBSD.org> | 2008-04-14 16:14:20 +0000 |
|---|---|---|
| committer | nakayama <nakayama@NetBSD.org> | 2008-04-14 16:14:20 +0000 |
| commit | 3c342df23b51eb5ebd57a15b12c3f0d953b0cf66 (patch) | |
| tree | 843cbb7d59b94dbc47b723f4e726de20cd230c59 /sys/dev/raidframe | |
| parent | adc446d581585d658f61ed9587c852738b598ea2 (diff) | |
Add workaround for BB_ERRATA_1 on writing to TICK_CMPR register in
next_tick(). If writing to TICK_CMPR fails, we lose hardclock interrupt
on secondary CPUs.
About BB_ERRATA_1 from comment in OpenSolaris:
/*
* Writes to the TICK_COMPARE register sometimes fail on blackbird modules.
* The failure occurs only when the following instruction decodes to wr or
* wrpr. The workaround is to immediately follow writes to TICK_COMPARE
* with a read, thus stalling the pipe and keeping following instructions
* from causing data corruption. Aligning to a quadword will ensure these
* two instructions are not split due to i$ misses.
*/
Diffstat (limited to 'sys/dev/raidframe')
0 files changed, 0 insertions, 0 deletions
