函数源码

Linux Kernel

v5.5.9

Brick Technologies Co., Ltd

Source File:arch\x86\kernel\cpu\mtrr\generic.c Create Date:2022-07-27 09:06:26
首页 Copyright©Brick

631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
/**
 * set_fixed_ranges - checks & updates the fixed-range MTRRs if they
 *            differ from the saved set
 * @frs: pointer to fixed-range MTRR values, saved by get_fixed_ranges()
 */
static int set_fixed_ranges(mtrr_type *frs)
{
    unsigned long long *saved = (unsigned long long *)frs;
    bool changed = false;
    int block = -1, range;
 
    k8_check_syscfg_dram_mod_en();
 
    while (fixed_range_blocks[++block].ranges) {
        for (range = 0; range < fixed_range_blocks[block].ranges; range++)
            set_fixed_range(fixed_range_blocks[block].base_msr + range,
                    &changed, (unsigned int *)saved++);
    }
 
    return changed;
}