17c478bd9Sstevel@tonic-gate# 27c478bd9Sstevel@tonic-gate# CDDL HEADER START 37c478bd9Sstevel@tonic-gate# 47c478bd9Sstevel@tonic-gate# The contents of this file are subject to the terms of the 5ee88d2b9Skchow# Common Development and Distribution License (the "License"). 6ee88d2b9Skchow# You may not use this file except in compliance with the License. 77c478bd9Sstevel@tonic-gate# 87c478bd9Sstevel@tonic-gate# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 97c478bd9Sstevel@tonic-gate# or http://www.opensolaris.org/os/licensing. 107c478bd9Sstevel@tonic-gate# See the License for the specific language governing permissions 117c478bd9Sstevel@tonic-gate# and limitations under the License. 127c478bd9Sstevel@tonic-gate# 137c478bd9Sstevel@tonic-gate# When distributing Covered Code, include this CDDL HEADER in each 147c478bd9Sstevel@tonic-gate# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 157c478bd9Sstevel@tonic-gate# If applicable, add the following below this CDDL HEADER, with the 167c478bd9Sstevel@tonic-gate# fields enclosed by brackets "[]" replaced with your own identifying 177c478bd9Sstevel@tonic-gate# information: Portions Copyright [yyyy] [name of copyright owner] 187c478bd9Sstevel@tonic-gate# 197c478bd9Sstevel@tonic-gate# CDDL HEADER END 207c478bd9Sstevel@tonic-gate# 21512cf780Skchow# Copyright 2008 Sun Microsystems, Inc. All rights reserved. 227c478bd9Sstevel@tonic-gate# Use is subject to license terms. 237c478bd9Sstevel@tonic-gate# 247c478bd9Sstevel@tonic-gate# This makefile contains workaround defines to be shared 257c478bd9Sstevel@tonic-gate# by Makefile.i86pc and the genunix Makefile. 267c478bd9Sstevel@tonic-gate# 277c478bd9Sstevel@tonic-gate 287c478bd9Sstevel@tonic-gate# 297c478bd9Sstevel@tonic-gate# SWAPGS May Fail To Read Correct GS Base 307c478bd9Sstevel@tonic-gate# 317c478bd9Sstevel@tonic-gateWORKAROUND_DEFS += -DOPTERON_ERRATUM_88 327c478bd9Sstevel@tonic-gate 337c478bd9Sstevel@tonic-gate# 347c478bd9Sstevel@tonic-gate# Software Prefetches May Report A Page Fault 357c478bd9Sstevel@tonic-gate# 367c478bd9Sstevel@tonic-gateWORKAROUND_DEFS += -DOPTERON_ERRATUM_91 377c478bd9Sstevel@tonic-gate 387c478bd9Sstevel@tonic-gate# 397c478bd9Sstevel@tonic-gate# RSM Auto-Halt Restart Returns To Incorrect RIP 407c478bd9Sstevel@tonic-gate# 417c478bd9Sstevel@tonic-gateWORKAROUND_DEFS += -DOPTERON_ERRATUM_93 427c478bd9Sstevel@tonic-gate 437c478bd9Sstevel@tonic-gate# 447c478bd9Sstevel@tonic-gate# RET Instruction May Return To Incorrect EIP 457c478bd9Sstevel@tonic-gate# 467c478bd9Sstevel@tonic-gateWORKAROUND_DEFS += -DOPTERON_ERRATUM_95 477c478bd9Sstevel@tonic-gate 487c478bd9Sstevel@tonic-gate# 498a40a695Sgavinm# DRAM scrubber must not be enabled on a node with discontiguous cs range 508a40a695Sgavinm# 518a40a695SgavinmWORKAROUND_DEFS += -DOPTERON_ERRATUM_99 528a40a695Sgavinm 538a40a695Sgavinm# 547c478bd9Sstevel@tonic-gate# Compatibility Mode Branches Transfer to Illegal Address 557c478bd9Sstevel@tonic-gate# 567c478bd9Sstevel@tonic-gateWORKAROUND_DEFS += -DOPTERON_ERRATUM_100 577c478bd9Sstevel@tonic-gate 587c478bd9Sstevel@tonic-gate# 597aec1d6eScindi# DRAM Scrubber May Cause Data Corruption When Using Node-Interleaved Memory 607aec1d6eScindi# 617aec1d6eScindiWORKAROUND_DEFS += -DOPTERON_ERRATUM_101 627aec1d6eScindi 637aec1d6eScindi# 647c478bd9Sstevel@tonic-gate# CPUID Instruction May Return Incorrect Model Number in Some Processors 657c478bd9Sstevel@tonic-gate# 667c478bd9Sstevel@tonic-gateWORKAROUND_DEFS += -DOPTERON_ERRATUM_108 677c478bd9Sstevel@tonic-gate 687c478bd9Sstevel@tonic-gate# 697c478bd9Sstevel@tonic-gate# Certain Reverse REP MOVS May Produce Unpredictable Behaviour 707c478bd9Sstevel@tonic-gate# 717c478bd9Sstevel@tonic-gateWORKAROUND_DEFS += -DOPTERON_ERRATUM_109 727c478bd9Sstevel@tonic-gate 737c478bd9Sstevel@tonic-gate# 747c478bd9Sstevel@tonic-gate# Sequential Execution Across Non_Canonical Boundary Caused Processor Hang 757c478bd9Sstevel@tonic-gate# 767c478bd9Sstevel@tonic-gateWORKAROUND_DEFS += -DOPTERON_ERRATUM_121 777c478bd9Sstevel@tonic-gate 787c478bd9Sstevel@tonic-gate# 797c478bd9Sstevel@tonic-gate# TLB Flush Filter May Cause Cohenrency Problem in Multiprocessor Systems 807c478bd9Sstevel@tonic-gate# 817c478bd9Sstevel@tonic-gateWORKAROUND_DEFS += -DOPTERON_ERRATUM_122 827c478bd9Sstevel@tonic-gate 837c478bd9Sstevel@tonic-gate# 847c478bd9Sstevel@tonic-gate# Bypassed Reads May Cause Data Corruption of System Hang in Dual Core 857c478bd9Sstevel@tonic-gate# Processors 867c478bd9Sstevel@tonic-gate# 87403c216aSkchow# Solaris does not currently support PowerNow which is required for this 88ae115bc7Smrj# Erratum. Check anyway. 89403c216aSkchow# 90ae115bc7SmrjWORKAROUND_DEFS += -DOPTERON_ERRATUM_123 912201b277Skucharsk 922201b277Skucharsk# 932201b277Skucharsk# Multiprocessor Systems with Four or More Cores May Deadlock Waiting for a 942201b277Skucharsk# Probe Response 952201b277Skucharsk# 962201b277SkucharskWORKAROUND_DEFS += -DOPTERON_ERRATUM_131 97ef50d8c0Sesaxe 98ef50d8c0Sesaxe# 99ef50d8c0Sesaxe# TSC may drift when C1-Clock ramping enabled 100ef50d8c0Sesaxe# 101ef50d8c0SesaxeWORKAROUND_DEFS += -DOPTERON_WORKAROUND_6336786 102ee88d2b9Skchow 103ee88d2b9Skchow# 104*ee6ee36aSPatrick Mooney# Potential Violation of Read Ordering Rules Between Semaphore Operations and 105*ee6ee36aSPatrick Mooney# Unlocked Read-Modify-Write Instructions 106ee88d2b9Skchow# 107*ee6ee36aSPatrick MooneyWORKAROUND_DEFS += -DOPTERON_ERRATUM_147 108ee88d2b9Skchow 109bb86c342Sgavinm# 110bb86c342Sgavinm# Some Registered DIMMs incompatible with address parity feature 111bb86c342Sgavinm# 112bb86c342SgavinmWORKAROUND_DEFS += -DOPTERON_ERRATUM_172 113512cf780Skchow 114512cf780Skchow# 115512cf780Skchow# L2 Eviction May Occur During Processor Operation To Set 116512cf780Skchow# Accessed or Dirty Bit. 117512cf780Skchow# 118512cf780SkchowWORKAROUND_DEFS += -DOPTERON_ERRATUM_298 1195e54b56dSHans Rosenfeld 1205e54b56dSHans Rosenfeld# 1215e54b56dSHans Rosenfeld# Processor May Incorrectly Update Stack Pointer 1225e54b56dSHans Rosenfeld# 1235e54b56dSHans RosenfeldWORKAROUND_DEFS += -DOPTERON_ERRATUM_721 124