Index: sys/arch/sparc64/sparc64/machdep.c =================================================================== RCS file: /cvsroot/src/sys/arch/sparc64/sparc64/machdep.c,v retrieving revision 1.281 diff -u -r1.281 machdep.c --- sys/arch/sparc64/sparc64/machdep.c 15 Mar 2015 10:38:58 -0000 1.281 +++ sys/arch/sparc64/sparc64/machdep.c 8 Jun 2015 20:12:37 -0000 @@ -2273,15 +2273,17 @@ } #ifdef _LP64 - /* If it's not LINEAR don't bother to map it. Use phys accesses. */ - if ((flags & BUS_SPACE_MAP_LINEAR) == 0) { - hp->_ptr = addr; - if (map_little) - hp->_asi = ASI_PHYS_NON_CACHED_LITTLE; - else - hp->_asi = ASI_PHYS_NON_CACHED; - hp->_sasi = ASI_PHYS_NON_CACHED; - return (0); + if (!CPU_ISSUN4V) { + /* If it's not LINEAR don't bother to map it. Use phys accesses. */ + if ((flags & BUS_SPACE_MAP_LINEAR) == 0) { + hp->_ptr = addr; + if (map_little) + hp->_asi = ASI_PHYS_NON_CACHED_LITTLE; + else + hp->_asi = ASI_PHYS_NON_CACHED; + hp->_sasi = ASI_PHYS_NON_CACHED; + return (0); + } } #endif