Re: Real-Time Preemption, -RT-2.6.12-final-V0.7.50-38

Michal Schmidt
2005-06-30T20:41:15Z

[-- Attachment #1: Type: text/plain, Size: 98 bytes --]

Here are some more fixes for -RT-2.6.12-final-V0.7.50-38 needed to
compile it on x86_64.

Michal

[-- Attachment #2: rt-amd64-PER_CPU_LOCKED.diff --]
[-- Type: text/plain, Size: 1203 bytes --]

diff -Nurp -X dontdiff.new linux-RT/arch/x86_64/mm/init.c linux-RT.mich/arch/x86_64/mm/init.c
--- linux-RT/arch/x86_64/mm/init.c 2005-06-30 21:22:33.000000000 +0200
+++ linux-RT.mich/arch/x86_64/mm/init.c 2005-06-30 22:28:16.000000000 +0200
@@ -47,7 +47,7 @@ extern int swiotlb;

extern char _stext[];

-DEFINE_PER_CPU(struct mmu_gather, mmu_gathers);
+DEFINE_PER_CPU_LOCKED(struct mmu_gather, mmu_gathers);

/*
* NOTE: pagetable_init alloc all the fixmap pagetables contiguous on the
diff -Nurp -X dontdiff.new linux-RT/include/asm-x86_64/percpu.h linux-RT.mich/include/asm-x86_64/percpu.h
--- linux-RT/include/asm-x86_64/percpu.h 2005-06-30 21:44:37.000000000 +0200
+++ linux-RT.mich/include/asm-x86_64/percpu.h 2005-06-30 22:26:10.000000000 +0200
@@ -63,6 +63,9 @@ extern void setup_per_cpu_areas(void);
#endif /* SMP */

#define DECLARE_PER_CPU(type, name) extern __typeof__(type) per_cpu__##name
+#define DECLARE_PER_CPU_LOCKED(type, name) \
+ extern spinlock_t per_cpu_lock__##name##_locked; \
+ extern __typeof__(type) per_cpu__##name##_locked

#define EXPORT_PER_CPU_SYMBOL(var) EXPORT_SYMBOL(per_cpu__##var)
#define EXPORT_PER_CPU_SYMBOL_GPL(var) EXPORT_SYMBOL_GPL(per_cpu__##var)