From: Thiemo Seufer <ths@networkno.de>
To: Ralf Baechle <ralf@linux-mips.org>
Cc: linux-mips@linux-mips.org
Subject: Re: CVS Update@linux-mips.org: linux
Date: Fri, 3 Jun 2005 12:21:40 +0200 [thread overview]
Message-ID: <20050603102140.GA1610@hattusa.textio> (raw)
In-Reply-To: <20050603092205.GA4573@linux-mips.org>
Ralf Baechle wrote:
> On Fri, Jun 03, 2005 at 03:21:13AM +0100, ths@linux-mips.org wrote:
>
> > Log message:
> > Fix R4[04]00 hazards breakage.
> >
> > diff -urN linux/arch/mips/mm/tlbex-r4k.S linux/arch/mips/mm/tlbex-r4k.S
> > --- linux/arch/mips/mm/Attic/tlbex-r4k.S 2004/11/25 22:18:38 1.2.2.19
> > +++ linux/arch/mips/mm/Attic/tlbex-r4k.S 2005/06/03 02:21:06 1.2.2.20
> > @@ -186,6 +186,7 @@
> > P_MTC0 k1, CP0_ENTRYLO1 # load it
> > mtc0_tlbw_hazard
> > tlbwr # write random tlb entry
> > + nop
> > tlbw_eret_hazard
>
> I did previously object to a similar patch
I didn't know that, IIRC a similiar patch went in 2.6 before the synthesized
TLB handlers were done.
> - why not fix tlbw_eret_hazard instead.
Like this?
Thiemo
Index: arch/mips/mm/tlbex-r4k.S
===================================================================
RCS file: /home/cvs/linux/arch/mips/mm/Attic/tlbex-r4k.S,v
retrieving revision 1.2.2.20
diff -u -p -r1.2.2.20 tlbex-r4k.S
--- arch/mips/mm/tlbex-r4k.S 3 Jun 2005 02:21:06 -0000 1.2.2.20
+++ arch/mips/mm/tlbex-r4k.S 3 Jun 2005 10:16:28 -0000
@@ -186,7 +186,6 @@
P_MTC0 k1, CP0_ENTRYLO1 # load it
mtc0_tlbw_hazard
tlbwr # write random tlb entry
- nop
tlbw_eret_hazard
eret
END(except_vec0_r4000)
@@ -468,7 +467,6 @@ invalid_tlbl:
PTE_RELOAD(k1, k0)
mtc0_tlbw_hazard
tlbwi
- nop
tlbw_eret_hazard
.set mips3
eret
@@ -493,7 +491,6 @@ nopage_tlbl:
PTE_RELOAD(k1, k0)
mtc0_tlbw_hazard
tlbwi
- nop
tlbw_eret_hazard
.set mips3
eret
@@ -523,7 +520,6 @@ nopage_tlbs:
PTE_RELOAD(k1, k0)
mtc0_tlbw_hazard
tlbwi
- nop
tlbw_eret_hazard
.set mips3
eret
Index: arch/mips64/mm/tlbex-r4k.S
===================================================================
RCS file: /home/cvs/linux/arch/mips64/mm/Attic/tlbex-r4k.S,v
retrieving revision 1.1.2.20
diff -u -p -r1.1.2.20 tlbex-r4k.S
--- arch/mips64/mm/tlbex-r4k.S 3 Jun 2005 02:21:07 -0000 1.1.2.20
+++ arch/mips64/mm/tlbex-r4k.S 3 Jun 2005 10:16:28 -0000
@@ -125,6 +125,33 @@ LEAF(except_vec1_r4k)
nop
END(except_vec1_r4k)
+ __FINIT
+
+ .align 5
+LEAF(handle_vec1_r4k)
+ .set noat
+ LOAD_PTE2 k1 k0 9f
+ ld k0, 0(k1) # get even pte
+ ld k1, 8(k1) # get odd pte
+ PTE_RELOAD k0 k1
+ mtc0_tlbw_hazard
+ tlbwr
+ tlbw_eret_hazard
+ eret
+
+9: # handle the vmalloc range
+ LOAD_KPTE2 k1 k0 invalid_vmalloc_address
+ ld k0, 0(k1) # get even pte
+ ld k1, 8(k1) # get odd pte
+ PTE_RELOAD k0 k1
+ mtc0_tlbw_hazard
+ tlbwr
+ tlbw_eret_hazard
+ eret
+END(handle_vec1_r4k)
+
+ __INIT
+
LEAF(except_vec1_sb1)
#if BCM1250_M3_WAR
dmfc0 k0, CP0_BADVADDR
@@ -134,18 +161,17 @@ LEAF(except_vec1_sb1)
bnez k0, 1f
#endif
.set noat
- dla k0, handle_vec1_r4k
+ dla k0, handle_vec1_sb1
jr k0
nop
1: eret
- nop
END(except_vec1_sb1)
__FINIT
.align 5
-LEAF(handle_vec1_r4k)
+LEAF(handle_vec1_sb1)
.set noat
LOAD_PTE2 k1 k0 9f
ld k0, 0(k1) # get even pte
@@ -153,7 +179,6 @@ LEAF(handle_vec1_r4k)
PTE_RELOAD k0 k1
mtc0_tlbw_hazard
tlbwr
-1: tlbw_eret_hazard
eret
9: # handle the vmalloc range
@@ -163,10 +188,8 @@ LEAF(handle_vec1_r4k)
PTE_RELOAD k0 k1
mtc0_tlbw_hazard
tlbwr
- nop
-1: tlbw_eret_hazard
eret
-END(handle_vec1_r4k)
+END(handle_vec1_sb1)
__INIT
@@ -194,7 +217,6 @@ LEAF(handle_vec1_r10k)
PTE_RELOAD k0 k1
mtc0_tlbw_hazard
tlbwr
- tlbw_eret_hazard
eret
9: # handle the vmalloc range
@@ -204,7 +226,6 @@ LEAF(handle_vec1_r10k)
PTE_RELOAD k0 k1
mtc0_tlbw_hazard
tlbwr
- tlbw_eret_hazard
eret
END(handle_vec1_r10k)
Index: include/asm-mips/hazards.h
===================================================================
RCS file: /home/cvs/linux/include/asm-mips/hazards.h,v
retrieving revision 1.1.2.3
diff -u -p -r1.1.2.3 hazards.h
--- include/asm-mips/hazards.h 3 Jun 2005 02:21:07 -0000 1.1.2.3
+++ include/asm-mips/hazards.h 3 Jun 2005 10:16:28 -0000
@@ -46,6 +46,7 @@
#define mtc0_tlbw_hazard \
b . + 8
#define tlbw_eret_hazard
+ nop
#endif
/*
Index: include/asm-mips64/hazards.h
===================================================================
RCS file: /home/cvs/linux/include/asm-mips64/Attic/hazards.h,v
retrieving revision 1.1.2.3
diff -u -p -r1.1.2.3 hazards.h
--- include/asm-mips64/hazards.h 3 Jun 2005 02:21:07 -0000 1.1.2.3
+++ include/asm-mips64/hazards.h 3 Jun 2005 10:16:28 -0000
@@ -46,6 +46,7 @@
#define mtc0_tlbw_hazard \
b . + 8
#define tlbw_eret_hazard
+ nop
#endif
/*
next prev parent reply other threads:[~2005-06-03 10:22 UTC|newest]
Thread overview: 100+ messages / expand[flat|nested] mbox.gz Atom feed top
[not found] <20050603022113Z8226140-1340+8064@linux-mips.org>
2005-06-03 9:22 ` CVS Update@linux-mips.org: linux Ralf Baechle
2005-06-03 10:21 ` Thiemo Seufer [this message]
2005-06-03 10:55 ` Ralf Baechle
2005-06-03 11:12 ` Geert Uytterhoeven
2005-06-03 11:30 ` Ralf Baechle
2005-06-03 11:37 ` Geert Uytterhoeven
[not found] <20050921213950Z8225559-3678+10018@linux-mips.org>
2005-09-22 9:28 ` Matej Kupljen
[not found] <20050920002016Z8225531-3678+9789@linux-mips.org>
2005-09-20 8:19 ` Jerry
2005-09-20 14:53 ` Pete Popov
[not found] <20050902095417Z8224772-3678+8160@linux-mips.org>
2005-09-02 11:35 ` Maciej W. Rozycki
2005-09-02 12:01 ` Thiemo Seufer
2005-09-02 13:30 ` Maciej W. Rozycki
[not found] <20050901085634Z8225385-3678+8053@linux-mips.org>
2005-09-01 11:18 ` Ralf Baechle
2005-09-01 11:31 ` Ralf Baechle
[not found] <20050820142723Z8225252-3678+7060@linux-mips.org>
2005-08-22 9:18 ` Maciej W. Rozycki
2005-08-22 10:26 ` Ralf Baechle
2005-08-22 11:49 ` Maciej W. Rozycki
[not found] <20050727214818Z8225782-3678+4592@linux-mips.org>
2005-07-28 10:19 ` Maciej W. Rozycki
[not found] <20050725213607Z8225534-3678+4335@linux-mips.org>
[not found] ` <57480.194.171.252.10 0.1122478386.squirrel@mail.kpsws.com>
2005-07-27 15:33 ` Niels Sterrenburg
2005-07-27 15:37 ` Geert Uytterhoeven
2005-07-27 16:37 ` Maciej W. Rozycki
2005-07-27 17:24 ` Ralf Baechle
2005-07-27 18:03 ` Maciej W. Rozycki
2005-07-27 19:28 ` Ralf Baechle
2005-07-28 7:36 ` Geert Uytterhoeven
2005-07-28 10:13 ` Maciej W. Rozycki
2005-07-28 13:46 ` Ralf Baechle
2005-07-28 11:23 ` Niels Sterrenburg
[not found] <20050721153359Z8225218-3678+3745@linux-mips.org>
2005-07-22 4:30 ` Ralf Baechle
2005-07-22 12:10 ` Thiemo Seufer
2005-07-22 13:06 ` Ralf Baechle
2005-07-22 13:24 ` Maciej W. Rozycki
2005-07-22 14:00 ` Ralf Baechle
2005-07-22 14:18 ` Thiemo Seufer
2005-07-26 11:12 ` Maciej W. Rozycki
2005-07-22 14:16 ` Thiemo Seufer
[not found] <20050721153639Z8225221-3678+3748@linux-mips.org>
2005-07-21 21:53 ` Ralf Baechle
[not found] <20050714174806Z8226711-3678+3079@linux-mips.org>
2005-07-15 15:16 ` Yoichi Yuasa
2005-07-15 18:07 ` Ralf Baechle
2005-07-15 23:23 ` Pete Popov
2005-07-15 23:23 ` Pete Popov
[not found] <20050714001711Z8226701-3678+2977@linux-mips.org>
2005-07-14 15:35 ` Maciej W. Rozycki
2005-07-14 15:51 ` Pete Popov
2005-07-14 15:59 ` Maciej W. Rozycki
2005-07-14 16:01 ` Pete Popov
[not found] <20050712145438Z8226641-3678+2759@linux-mips.org>
2005-07-12 15:30 ` Maciej W. Rozycki
[not found] <20050711170613Z8226486-3678+2546@linux-mips.org>
2005-07-11 17:31 ` Ralf Baechle
2005-07-11 17:44 ` Maciej W. Rozycki
2005-07-11 17:53 ` Ralf Baechle
2005-07-11 18:05 ` Maciej W. Rozycki
2005-07-11 19:25 ` Thiemo Seufer
2005-07-12 11:16 ` Maciej W. Rozycki
[not found] <20050711083532Z8226446-3678+2437@linux-mips.org>
2005-07-11 8:45 ` Ralf Baechle
[not found] <20050708091711Z8226352-3678+1954@linux-mips.org>
2005-07-08 12:02 ` Ralf Baechle
2005-07-08 12:12 ` Maciej W. Rozycki
2005-07-08 13:43 ` Richard Sandiford
2005-07-08 13:55 ` Ralf Baechle
[not found] <20050707091937Z8226163-3678+1737@linux-mips.org>
2005-07-07 11:32 ` Maciej W. Rozycki
2005-07-07 12:12 ` Thiemo Seufer
2005-07-07 12:19 ` Maciej W. Rozycki
2005-07-07 12:22 ` Thiemo Seufer
2005-07-07 13:01 ` Maciej W. Rozycki
2005-07-07 13:51 ` Thiemo Seufer
2005-07-07 16:29 ` Ralf Baechle DL5RB
2005-07-07 16:42 ` Maciej W. Rozycki
2005-07-08 13:42 ` Richard Sandiford
2005-07-08 15:05 ` Maciej W. Rozycki
2005-07-08 15:39 ` Richard Sandiford
2005-07-08 15:59 ` Maciej W. Rozycki
[not found] <20050618135450Z8225248-1340+9141@linux-mips.org>
2005-06-20 10:27 ` Maciej W. Rozycki
[not found] <20050605035727Z8225003-1340+8177@linux-mips.org>
2005-06-06 12:16 ` Ralf Baechle
[not found] <20050506143118Z8225421-1340+6642@linux-mips.org>
2005-05-06 14:51 ` Maciej W. Rozycki
2005-05-06 18:41 ` Maciej W. Rozycki
[not found] <20050412140045Z8224988-1340+5602@linux-mips.org>
2005-04-12 16:57 ` Christoph Hellwig
2005-04-12 17:48 ` Thiemo Seufer
[not found] <20050401175340Z8226142-1340+5040@linux-mips.org>
2005-04-02 10:11 ` Thiemo Seufer
2005-04-04 11:26 ` Maciej W. Rozycki
[not found] <20050304151343Z8225933-1340+3959@linux-mips.org>
2005-03-16 18:51 ` Maciej W. Rozycki
[not found] <20050225133831Z8225462-1340+3675@linux-mips.org>
2005-02-25 16:50 ` Maciej W. Rozycki
[not found] <20050225131124Z8225457-1340+3673@linux-mips.org>
2005-02-25 16:48 ` Maciej W. Rozycki
[not found] <20050214035304Z8225242-1340+3175@linux-mips.org>
2005-02-14 15:34 ` Ralf Baechle
2005-02-14 15:41 ` sjhill
2005-02-14 16:06 ` Maciej W. Rozycki
2005-02-14 18:34 ` Ralf Baechle
[not found] <20050213213130Z8225210-1340+3164@linux-mips.org>
2005-02-13 21:33 ` Maciej W. Rozycki
[not found] <20050115013112Z8225557-1340+1316@linux-mips.org>
2005-01-19 4:42 ` Yoichi Yuasa
2005-01-19 5:04 ` Maciej W. Rozycki
2005-01-19 5:31 ` Yoichi Yuasa
2005-01-19 5:35 ` Maciej W. Rozycki
2005-01-19 6:21 ` Yoichi Yuasa
2005-03-07 16:44 ` Yoichi Yuasa
2005-03-17 15:47 ` Yoichi Yuasa
2005-03-20 22:14 ` Ralf Baechle
[not found] <20050109193411Z8225245-1340+894@linux-mips.org>
2005-01-09 20:55 ` Geert Uytterhoeven
2005-01-09 21:15 ` Ralf Baechle
[not found] <20050108180025Z8225397-1340+834@linux-mips.org>
2005-01-08 20:25 ` Ilya A. Volynets-Evenbakh
2005-01-08 22:07 ` Ralf Baechle
[not found] <20050107191947Z8225432-1341+49@linux-mips.org>
2005-01-07 20:43 ` Ilya A. Volynets-Evenbakh
2005-01-08 0:56 ` Thiemo Seufer
[not found] <20041228080623Z8224908-1340+368@linux-mips.org>
2005-01-01 13:40 ` Geert Uytterhoeven
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20050603102140.GA1610@hattusa.textio \
--to=ths@networkno.de \
--cc=linux-mips@linux-mips.org \
--cc=ralf@linux-mips.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.