lkml.org 
[lkml]   [2007]   [Apr]   [25]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    From
    SubjectRe: [PATCH 11/25] xen: Xen SMP guest support
    Date


    > #ifdef CONFIG_X86_LOCAL_APIC
    > static unsigned long xen_apic_read(unsigned long reg)

    Can't you just make them all NULL? Crashing here should be correct.



    > +#ifdef CONFIG_SMP
    > +static const struct smp_ops xen_smp_ops __initdata = {

    Why __initdata?

    > +/* VCPUs are single-cored, and have no siblings */
    > +static void set_cpu_sibling_map(int cpu)

    Can you put this somewhere generic and use it everywhere? Don't want
    duplication of this code.

    > +{
    > + struct cpuinfo_x86 *c = &cpu_data[cpu];
    > +
    > + cpu_set(cpu, cpu_sibling_map[cpu]);
    > + cpu_set(cpu, c->llc_shared_map);
    > + cpu_core_map[cpu] = cpu_sibling_map[cpu];
    > + c->booted_cores = 1;
    > +}
    > +
    > +static void remove_siblinginfo(int cpu)

    Similar.

    > +void __init xen_fill_possible_map(void)
    > +{
    > + int i, rc;
    > +
    > + for_each_possible_cpu(i)
    > + if (i != smp_processor_id())
    > + return;

    Strange check?

    > +
    > + * We need to reload %cr3 since the page tables may be going
    > + * away from under us..
    > + */
    > +static inline void leave_mm (unsigned long cpu)
    > +{
    > +#ifdef CONFIG_SMP
    > + if (per_cpu(cpu_tlbstate, cpu).state == TLBSTATE_OK)
    > + BUG();
    > + cpu_clear(cpu, per_cpu(cpu_tlbstate, cpu).active_mm->cpu_vm_mask);
    > +#endif
    > + load_cr3(swapper_pg_dir);
    > }

    Should be out of line


    -Andi
    -
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to majordomo@vger.kernel.org
    More majordomo info at http://vger.kernel.org/majordomo-info.html
    Please read the FAQ at http://www.tux.org/lkml/

    \
     
     \ /
      Last update: 2007-04-25 11:29    [W:4.237 / U:0.008 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site