Re: [patches] [PATCH] [4/12] x86_64: Disable CLFLUSH support again
On Thu, Aug 09, 2007 at 02:29:58PM +0100, Jan Beulich wrote: > The issue here is not with clflush by itself, but with what pages it > is being applied to. Here, it gets used on page table pages when > flushing really is needed on what one or more page table entries in > that page table page point(ed) to. I see, thanks. Cheers, Muli - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [patches] [PATCH] [4/12] x86_64: Disable CLFLUSH support again
>>> Muli Ben-Yehuda <[EMAIL PROTECTED]> 09.08.07 15:11 >>> >On Thu, Aug 09, 2007 at 02:41:31PM +0200, Andi Kleen wrote: >> >> It turns out CLFLUSH support is still not complete; we >> flush the wrong pages. Again disable it for the release. >> Noticed by Jan Beulich. >> >> Signed-off-by: Andi Kleen <[EMAIL PROTECTED]> > >Aside from the bug Jan pointed out with the patch, we're also using >cflflush in other places (arch/i386/kernel/alternative.c and >arch/x86_64/kernel/tce.c). Is the issue with clflush support specific >to pageattr.c or should it be disabled every else too? what >specifically is the issue? The issue here is not with clflush by itself, but with what pages it is being applied to. Here, it gets used on page table pages when flushing really is needed on what one or more page table entries in that page table page point(ed) to. Jan - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] [4/12] x86_64: Disable CLFLUSH support again
On Thursday 09 August 2007 15:11:21 Muli Ben-Yehuda wrote: > Aside from the bug Jan pointed out with the patch, we're also using > cflflush in other places (arch/i386/kernel/alternative.c and > arch/x86_64/kernel/tce.c). Is the issue with clflush support specific > to pageattr.c Specific to pageattr.c -Andi - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] [4/12] x86_64: Disable CLFLUSH support again
On Thu, Aug 09, 2007 at 02:41:31PM +0200, Andi Kleen wrote: > > It turns out CLFLUSH support is still not complete; we > flush the wrong pages. Again disable it for the release. > Noticed by Jan Beulich. > > Signed-off-by: Andi Kleen <[EMAIL PROTECTED]> Aside from the bug Jan pointed out with the patch, we're also using cflflush in other places (arch/i386/kernel/alternative.c and arch/x86_64/kernel/tce.c). Is the issue with clflush support specific to pageattr.c or should it be disabled every else too? what specifically is the issue? Cheers, Muli - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [patches] [PATCH] [4/12] x86_64: Disable CLFLUSH support again
The 64-bit conditional seems wrong to me, I'd assume you mean if (1 || !cpu_has_clflush) Jan >>> Andi Kleen <[EMAIL PROTECTED]> 09.08.07 14:41 >>> It turns out CLFLUSH support is still not complete; we flush the wrong pages. Again disable it for the release. Noticed by Jan Beulich. Signed-off-by: Andi Kleen <[EMAIL PROTECTED]> --- arch/i386/mm/pageattr.c |2 +- arch/x86_64/mm/pageattr.c |3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) Index: linux/arch/i386/mm/pageattr.c === --- linux.orig/arch/i386/mm/pageattr.c +++ linux/arch/i386/mm/pageattr.c @@ -82,7 +82,7 @@ static void flush_kernel_map(void *arg) struct page *p; /* High level code is not ready for clflush yet */ - if (cpu_has_clflush) { + if (0 && cpu_has_clflush) { list_for_each_entry (p, lh, lru) cache_flush_page(p); } else if (boot_cpu_data.x86_model >= 4) Index: linux/arch/x86_64/mm/pageattr.c === --- linux.orig/arch/x86_64/mm/pageattr.c +++ linux/arch/x86_64/mm/pageattr.c @@ -75,7 +75,8 @@ static void flush_kernel_map(void *arg) /* When clflush is available always use it because it is much cheaper than WBINVD. */ - if (!cpu_has_clflush) + /* clflush is still broken. Disable for now. */ + if (0 && !cpu_has_clflush) asm volatile("wbinvd" ::: "memory"); else list_for_each_entry(pg, l, lru) { void *adr = page_address(pg); ___ patches mailing list [EMAIL PROTECTED] https://www.x86-64.org/mailman/listinfo/patches - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] [4/12] x86_64: Disable CLFLUSH support again
It turns out CLFLUSH support is still not complete; we flush the wrong pages. Again disable it for the release. Noticed by Jan Beulich. Signed-off-by: Andi Kleen <[EMAIL PROTECTED]> --- arch/i386/mm/pageattr.c |2 +- arch/x86_64/mm/pageattr.c |3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) Index: linux/arch/i386/mm/pageattr.c === --- linux.orig/arch/i386/mm/pageattr.c +++ linux/arch/i386/mm/pageattr.c @@ -82,7 +82,7 @@ static void flush_kernel_map(void *arg) struct page *p; /* High level code is not ready for clflush yet */ - if (cpu_has_clflush) { + if (0 && cpu_has_clflush) { list_for_each_entry (p, lh, lru) cache_flush_page(p); } else if (boot_cpu_data.x86_model >= 4) Index: linux/arch/x86_64/mm/pageattr.c === --- linux.orig/arch/x86_64/mm/pageattr.c +++ linux/arch/x86_64/mm/pageattr.c @@ -75,7 +75,8 @@ static void flush_kernel_map(void *arg) /* When clflush is available always use it because it is much cheaper than WBINVD. */ - if (!cpu_has_clflush) + /* clflush is still broken. Disable for now. */ + if (0 && !cpu_has_clflush) asm volatile("wbinvd" ::: "memory"); else list_for_each_entry(pg, l, lru) { void *adr = page_address(pg); - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
[PATCH] [4/12] x86_64: Disable CLFLUSH support again
It turns out CLFLUSH support is still not complete; we flush the wrong pages. Again disable it for the release. Noticed by Jan Beulich. Signed-off-by: Andi Kleen [EMAIL PROTECTED] --- arch/i386/mm/pageattr.c |2 +- arch/x86_64/mm/pageattr.c |3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) Index: linux/arch/i386/mm/pageattr.c === --- linux.orig/arch/i386/mm/pageattr.c +++ linux/arch/i386/mm/pageattr.c @@ -82,7 +82,7 @@ static void flush_kernel_map(void *arg) struct page *p; /* High level code is not ready for clflush yet */ - if (cpu_has_clflush) { + if (0 cpu_has_clflush) { list_for_each_entry (p, lh, lru) cache_flush_page(p); } else if (boot_cpu_data.x86_model = 4) Index: linux/arch/x86_64/mm/pageattr.c === --- linux.orig/arch/x86_64/mm/pageattr.c +++ linux/arch/x86_64/mm/pageattr.c @@ -75,7 +75,8 @@ static void flush_kernel_map(void *arg) /* When clflush is available always use it because it is much cheaper than WBINVD. */ - if (!cpu_has_clflush) + /* clflush is still broken. Disable for now. */ + if (0 !cpu_has_clflush) asm volatile(wbinvd ::: memory); else list_for_each_entry(pg, l, lru) { void *adr = page_address(pg); - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [patches] [PATCH] [4/12] x86_64: Disable CLFLUSH support again
The 64-bit conditional seems wrong to me, I'd assume you mean if (1 || !cpu_has_clflush) Jan Andi Kleen [EMAIL PROTECTED] 09.08.07 14:41 It turns out CLFLUSH support is still not complete; we flush the wrong pages. Again disable it for the release. Noticed by Jan Beulich. Signed-off-by: Andi Kleen [EMAIL PROTECTED] --- arch/i386/mm/pageattr.c |2 +- arch/x86_64/mm/pageattr.c |3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) Index: linux/arch/i386/mm/pageattr.c === --- linux.orig/arch/i386/mm/pageattr.c +++ linux/arch/i386/mm/pageattr.c @@ -82,7 +82,7 @@ static void flush_kernel_map(void *arg) struct page *p; /* High level code is not ready for clflush yet */ - if (cpu_has_clflush) { + if (0 cpu_has_clflush) { list_for_each_entry (p, lh, lru) cache_flush_page(p); } else if (boot_cpu_data.x86_model = 4) Index: linux/arch/x86_64/mm/pageattr.c === --- linux.orig/arch/x86_64/mm/pageattr.c +++ linux/arch/x86_64/mm/pageattr.c @@ -75,7 +75,8 @@ static void flush_kernel_map(void *arg) /* When clflush is available always use it because it is much cheaper than WBINVD. */ - if (!cpu_has_clflush) + /* clflush is still broken. Disable for now. */ + if (0 !cpu_has_clflush) asm volatile(wbinvd ::: memory); else list_for_each_entry(pg, l, lru) { void *adr = page_address(pg); ___ patches mailing list [EMAIL PROTECTED] https://www.x86-64.org/mailman/listinfo/patches - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] [4/12] x86_64: Disable CLFLUSH support again
On Thu, Aug 09, 2007 at 02:41:31PM +0200, Andi Kleen wrote: It turns out CLFLUSH support is still not complete; we flush the wrong pages. Again disable it for the release. Noticed by Jan Beulich. Signed-off-by: Andi Kleen [EMAIL PROTECTED] Aside from the bug Jan pointed out with the patch, we're also using cflflush in other places (arch/i386/kernel/alternative.c and arch/x86_64/kernel/tce.c). Is the issue with clflush support specific to pageattr.c or should it be disabled every else too? what specifically is the issue? Cheers, Muli - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [PATCH] [4/12] x86_64: Disable CLFLUSH support again
On Thursday 09 August 2007 15:11:21 Muli Ben-Yehuda wrote: Aside from the bug Jan pointed out with the patch, we're also using cflflush in other places (arch/i386/kernel/alternative.c and arch/x86_64/kernel/tce.c). Is the issue with clflush support specific to pageattr.c Specific to pageattr.c -Andi - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [patches] [PATCH] [4/12] x86_64: Disable CLFLUSH support again
Muli Ben-Yehuda [EMAIL PROTECTED] 09.08.07 15:11 On Thu, Aug 09, 2007 at 02:41:31PM +0200, Andi Kleen wrote: It turns out CLFLUSH support is still not complete; we flush the wrong pages. Again disable it for the release. Noticed by Jan Beulich. Signed-off-by: Andi Kleen [EMAIL PROTECTED] Aside from the bug Jan pointed out with the patch, we're also using cflflush in other places (arch/i386/kernel/alternative.c and arch/x86_64/kernel/tce.c). Is the issue with clflush support specific to pageattr.c or should it be disabled every else too? what specifically is the issue? The issue here is not with clflush by itself, but with what pages it is being applied to. Here, it gets used on page table pages when flushing really is needed on what one or more page table entries in that page table page point(ed) to. Jan - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Re: [patches] [PATCH] [4/12] x86_64: Disable CLFLUSH support again
On Thu, Aug 09, 2007 at 02:29:58PM +0100, Jan Beulich wrote: The issue here is not with clflush by itself, but with what pages it is being applied to. Here, it gets used on page table pages when flushing really is needed on what one or more page table entries in that page table page point(ed) to. I see, thanks. Cheers, Muli - To unsubscribe from this list: send the line unsubscribe linux-kernel in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/