Date: Sun, 13 May 2018 23:56:43 +0000 (UTC) From: Nathan Whitehorn <nwhitehorn@FreeBSD.org> To: src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: svn commit: r333594 - head/sys/powerpc/aim Message-ID: <201805132356.w4DNuhMG013080@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: nwhitehorn Date: Sun May 13 23:56:43 2018 New Revision: 333594 URL: https://svnweb.freebsd.org/changeset/base/333594 Log: Revert changes to hash table alignment in r333273, which booting on all G5 systems, pending further analysis. Modified: head/sys/powerpc/aim/moea64_native.c Modified: head/sys/powerpc/aim/moea64_native.c ============================================================================== --- head/sys/powerpc/aim/moea64_native.c Sun May 13 23:55:11 2018 (r333593) +++ head/sys/powerpc/aim/moea64_native.c Sun May 13 23:56:43 2018 (r333594) @@ -448,14 +448,18 @@ moea64_bootstrap_native(mmu_t mmup, vm_offset_t kernel moea64_part_table = (struct pate *)moea64_bootstrap_alloc(PART_SIZE, PART_SIZE); if (hw_direct_map) - moea64_part_table = - (struct pate *)PHYS_TO_DMAP((vm_offset_t)moea64_part_table); + moea64_part_table = (struct pate *)PHYS_TO_DMAP( + (vm_offset_t)moea64_part_table); } /* * PTEG table must be aligned on a 256k boundary, but can be placed - * anywhere with that alignment. + * anywhere with that alignment. Some of our hash calculations, + * however, assume that the PTEG table is aligned to its own size + * (low-order bits are zero in an OR). As such, make alignment + * bigger than strictly necessary for the time being. */ - moea64_pteg_table = (struct lpte *)moea64_bootstrap_alloc(size, 256*1024); + moea64_pteg_table = (struct lpte *)moea64_bootstrap_alloc(size, + MAX(256*1024, size)); if (hw_direct_map) moea64_pteg_table = (struct lpte *)PHYS_TO_DMAP((vm_offset_t)moea64_pteg_table);
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201805132356.w4DNuhMG013080>