Re: [patches] [PATCH] [4/12] x86_64: Disable CLFLUSH support again

2007-08-09 Thread Muli Ben-Yehuda
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

2007-08-09 Thread Jan Beulich
>>> 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

2007-08-09 Thread Andi Kleen
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

2007-08-09 Thread Muli Ben-Yehuda
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

2007-08-09 Thread Jan Beulich
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

2007-08-09 Thread Andi Kleen

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

2007-08-09 Thread Andi Kleen

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

2007-08-09 Thread Jan Beulich
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

2007-08-09 Thread Muli Ben-Yehuda
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

2007-08-09 Thread Andi Kleen
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

2007-08-09 Thread Jan Beulich
 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

2007-08-09 Thread Muli Ben-Yehuda
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/