John, Unfortunately not, as we is still need 4 additional instructions or some sort of memory barrier [ like mb() in Tru64 :) ] . Regards, Christoph -- Christoph Hoffmann On Aug 18, 2011, at 7:10 PM, John Baldwin wrote: > On Thursday, August 18, 2011 12:30:24 pm Christoph Hoffmann wrote: >> Hello John, >> >> Thank you very much indeed for the hints. >> >> I am under the impression that we are facing a problem with synchronisation >> of CPU local caches. I also wasn't able to find any problem with memory >> allocation. >> >> This box is equipped with: >> >> 1 Processor(s) detected, 4 total cores enabled, Hyperthreading is enabled >> Proc 1: Intel(R) Xeon(R) CPU E5630 _at_ 2.53GHz >> QPI Speed: 5.8 GT/s >> >> Changing the order of execution in zfsboot.c main() function to >> >> […] >> int >> main(void) >> { >> […] >> bios_getmem(); >> >> if (high_heap_size > 0) { >> […] >> bootinfo.bi_version = BOOTINFO_VERSION; >> bootinfo.bi_size = sizeof(bootinfo); >> bootinfo.bi_basemem = bios_basemem / 1024; >> bootinfo.bi_extmem = bios_extmem / 1024; >> bootinfo.bi_memsizes_valid++; >> /* bootinfo.bi_bios_dev = dsk->drive; */ >> bootinfo.bi_bios_dev = *(uint8_t *)PTOV(ARGS); > > What if you leave the order as-is but just change this one line to use > PTOV(ARGS) directly here instead of 'dsk->drive'? > > -- > John Baldwin > _______________________________________________ > freebsd-current_at_freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-current > To unsubscribe, send any mail to "freebsd-current-unsubscribe_at_freebsd.org"Received on Thu Aug 18 2011 - 15:49:25 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:40:16 UTC