Results 1 to 25 of 133

Thread: Howto disable the tlb-fix with CrystalCPU

Threaded View

  1. #11
    Xtreme Addict
    Join Date
    Sep 2007
    Location
    Munich, DE
    Posts
    1,401
    I took a look on the linux tlb patch.

    This is the msr related part.

    if ((c->x86 == 0x10) && (c->x86_model < 3) && (c->x86_mask != 3)) {
    /* re-enable TLB caching if BIOS disabled it */
    rdmsrl(MSR_K8_HWCR, value);
    value &= ~(1UL << 3);
    wrmsrl(MSR_K8_HWCR, value);
    rdmsrl(0xC0011023, value);
    value &= ~(1UL << 1);
    wrmsrl(0xC0011023, value);
    /* enable OS workaround */
    e298_bug = 1;
    printk(KERN_INFO "AMD erratum 298 workaround enabled\n");
    }
    MSR_K8_HWCR is 0xC0010015, so the patch does the same to disable the bios fix.

    But it also sets bit nr 1 in the 0xc0011023 register.
    That is called the Bus Unit configuration register and the bits 47:0 are labeld as reserved in the k10 bios developers doc.

    Anyway, if the last number is 0h the patch is not applied if it's 2h the patch is applied.



    Results

    Both fixes enabled:


    Only first(tlb) fix removed:


    Only second fix removed:


    Both fixes removed:


    Note: I had two cores disabled and 10x cpu multi because of some k8 vs. k10 comparison, it's no kuma es.

    If i start AOD it is in yellow state.

    If i put it in red state both fixes are removed. If i put it in black state both are applied. The yellow state shows the same value as the red state after modifying via AOD and the same values as the black state before AOD's modification.

    Another note, actualy each core has this msr registers, i gained ~80 points applying the firts fix to all four cores instead of just the first one.
    Last edited by justapost; 01-10-2008 at 06:43 PM.

Bookmarks

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •