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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox