Re: svn commit: r205487 - head/sys/vm
On 22 March 2010 23:39, Kip Macy km...@freebsd.org wrote: Author: kmacy Date: Mon Mar 22 22:39:32 2010 New Revision: 205487 URL: http://svn.freebsd.org/changeset/base/205487 Log: - enable alignment on amd64 only Does this mean you have determined that aligning these structures is not as beneficial on i386 or is there something else going on? ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org
Re: svn commit: r205487 - head/sys/vm
The size change causes the initialization path to change in a way that currently causes crashes. On Mar 23, 2010 2:57 AM, Ivan Voras ivo...@freebsd.org wrote: On 22 March 2010 23:39, Kip Macy km...@freebsd.org wrote: Author: kmacy Date: Mon Mar 22 22:39... Does this mean you have determined that aligning these structures is not as beneficial on i386 or is there something else going on? ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org
Re: svn commit: r205487 - head/sys/vm
On Tuesday 23 March 2010 6:33:51 am K. Macy wrote: The size change causes the initialization path to change in a way that currently causes crashes. Are you planning on debugging it further? Does UMA_BOOTPAGES or NKPT need to be larger? On Mar 23, 2010 2:57 AM, Ivan Voras ivo...@freebsd.org wrote: On 22 March 2010 23:39, Kip Macy km...@freebsd.org wrote: Author: kmacy Date: Mon Mar 22 22:39... Does this mean you have determined that aligning these structures is not as beneficial on i386 or is there something else going on? -- John Baldwin ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org
svn commit: r205487 - head/sys/vm
Author: kmacy Date: Mon Mar 22 22:39:32 2010 New Revision: 205487 URL: http://svn.freebsd.org/changeset/base/205487 Log: - enable alignment on amd64 only - only align pcpu caches and the volatile portion of uma_zone Modified: head/sys/vm/uma_int.h Modified: head/sys/vm/uma_int.h == --- head/sys/vm/uma_int.h Mon Mar 22 22:12:27 2010(r205486) +++ head/sys/vm/uma_int.h Mon Mar 22 22:39:32 2010(r205487) @@ -162,7 +162,11 @@ struct uma_hash { /* * align field or structure to cache line */ +#if defined(__amd64__) +#define UMA_ALIGN __aligned(CACHE_LINE_SIZE) +#else #define UMA_ALIGN +#endif /* * Structures for per cpu queues. @@ -173,7 +177,7 @@ struct uma_bucket { int16_t ub_cnt; /* Count of free items. */ int16_t ub_entries; /* Max items. */ void*ub_bucket[]; /* actual allocation storage */ -} UMA_ALIGN; +}; typedef struct uma_bucket * uma_bucket_t; @@ -330,7 +334,7 @@ struct uma_zone { * This HAS to be the last item because we adjust the zone size * based on NCPU and then allocate the space for the zones. */ - struct uma_cacheuz_cpu[1] UMA_ALIGN; /* Per cpu caches */ + struct uma_cacheuz_cpu[1]; /* Per cpu caches */ }; /* ___ svn-src-all@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/svn-src-all To unsubscribe, send any mail to svn-src-all-unsubscr...@freebsd.org