1# 2# CDDL HEADER START 3# 4# The contents of this file are subject to the terms of the 5# Common Development and Distribution License (the "License"). 6# You may not use this file except in compliance with the License. 7# 8# You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE 9# or http://www.opensolaris.org/os/licensing. 10# See the License for the specific language governing permissions 11# and limitations under the License. 12# 13# When distributing Covered Code, include this CDDL HEADER in each 14# file and include the License file at usr/src/OPENSOLARIS.LICENSE. 15# If applicable, add the following below this CDDL HEADER, with the 16# fields enclosed by brackets "[]" replaced with your own identifying 17# information: Portions Copyright [yyyy] [name of copyright owner] 18# 19# CDDL HEADER END 20# 21# Copyright 2007 Sun Microsystems, Inc. All rights reserved. 22# Use is subject to license terms. 23# 24# ident "%Z%%M% %I% %E% SMI" 25# 26# This makefile contains workaround defines to be shared 27# by Makefile.i86pc and the genunix Makefile. 28# 29 30# 31# SWAPGS May Fail To Read Correct GS Base 32# 33WORKAROUND_DEFS += -DOPTERON_ERRATUM_88 34 35# 36# Software Prefetches May Report A Page Fault 37# 38WORKAROUND_DEFS += -DOPTERON_ERRATUM_91 39 40# 41# RSM Auto-Halt Restart Returns To Incorrect RIP 42# 43WORKAROUND_DEFS += -DOPTERON_ERRATUM_93 44 45# 46# RET Instruction May Return To Incorrect EIP 47# 48WORKAROUND_DEFS += -DOPTERON_ERRATUM_95 49 50# 51# DRAM scrubber must not be enabled on a node with discontiguous cs range 52# 53WORKAROUND_DEFS += -DOPTERON_ERRATUM_99 54 55# 56# Compatibility Mode Branches Transfer to Illegal Address 57# 58WORKAROUND_DEFS += -DOPTERON_ERRATUM_100 59 60# 61# DRAM Scrubber May Cause Data Corruption When Using Node-Interleaved Memory 62# 63WORKAROUND_DEFS += -DOPTERON_ERRATUM_101 64 65# 66# CPUID Instruction May Return Incorrect Model Number in Some Processors 67# 68WORKAROUND_DEFS += -DOPTERON_ERRATUM_108 69 70# 71# Certain Reverse REP MOVS May Produce Unpredictable Behaviour 72# 73WORKAROUND_DEFS += -DOPTERON_ERRATUM_109 74 75# 76# Sequential Execution Across Non_Canonical Boundary Caused Processor Hang 77# 78WORKAROUND_DEFS += -DOPTERON_ERRATUM_121 79 80# 81# TLB Flush Filter May Cause Cohenrency Problem in Multiprocessor Systems 82# 83WORKAROUND_DEFS += -DOPTERON_ERRATUM_122 84 85# 86# Bypassed Reads May Cause Data Corruption of System Hang in Dual Core 87# Processors 88# 89# Solaris does not currently support PowerNow which is required for this 90# Erratum. Check anyway. 91# 92WORKAROUND_DEFS += -DOPTERON_ERRATUM_123 93 94# 95# Multiprocessor Systems with Four or More Cores May Deadlock Waiting for a 96# Probe Response 97# 98WORKAROUND_DEFS += -DOPTERON_ERRATUM_131 99 100# 101# TSC may drift when C1-Clock ramping enabled 102# 103WORKAROUND_DEFS += -DOPTERON_WORKAROUND_6336786 104 105# 106# Mutex primitives don't work as expected 107# 108WORKAROUND_DEFS += -DOPTERON_WORKAROUND_6323525 109 110