From: Denis Vlasenko <vda@ilport.com.ua>
To: Adrian Bunk <bunk@stusta.de>
Cc: Alexander Nyberg <alexn@telia.com>,
linux-kernel@vger.kernel.org, reiserfs-dev@namesys.com
Subject: Re: RFC: i386: kill !4KSTACKS
Date: Wed, 8 Jun 2005 15:13:09 +0300 [thread overview]
Message-ID: <200506081513.09828.vda@ilport.com.ua> (raw)
In-Reply-To: <20050608111200.GG3641@stusta.de>
[-- Attachment #1: Type: text/plain, Size: 393 bytes --]
On Wednesday 08 June 2005 14:12, Adrian Bunk wrote:
> On Wed, Jun 08, 2005 at 01:39:56PM +0300, Denis Vlasenko wrote:
> >...
> > NB: gcc 3.4.3 can use excessive stack in degenerate cases, so please
> > include gcc version in your reports.
>
> But this can't occur in the kernel.
It can. I saw the OOPS myself.
One of the functions in crypto/wp512.c was compiled with 3k+ stack usage.
--
vda
[-- Attachment #2: 2.wp.patch --]
[-- Type: text/x-diff, Size: 10881 bytes --]
diff -urpN linux-2.6.12-rc2.1.be_le/crypto/wp512.c linux-2.6.12-rc2.2.wp/crypto/wp512.c
--- linux-2.6.12-rc2.1.be_le/crypto/wp512.c Thu Apr 21 23:21:24 2005
+++ linux-2.6.12-rc2.2.wp/crypto/wp512.c Thu Apr 21 23:42:36 2005
@@ -793,80 +793,90 @@ static void wp512_process_buffer(struct
state[6] = block[6] ^ (K[6] = wctx->hash[6]);
state[7] = block[7] ^ (K[7] = wctx->hash[7]);
+#if 1
+ #define X(a) a ^=
+ #define XEND ;
+#else
+/* gcc -O2 (3.4.3) optimizer bug:
+** this will cause excessive spills (~3K stack used)
+** See http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21141 */
+ #define X(a) ^
+ #define XEND
+#endif
for (r = 1; r <= WHIRLPOOL_ROUNDS; r++) {
- L[0] = C0[(int)(K[0] >> 56) ] ^
- C1[(int)(K[7] >> 48) & 0xff] ^
- C2[(int)(K[6] >> 40) & 0xff] ^
- C3[(int)(K[5] >> 32) & 0xff] ^
- C4[(int)(K[4] >> 24) & 0xff] ^
- C5[(int)(K[3] >> 16) & 0xff] ^
- C6[(int)(K[2] >> 8) & 0xff] ^
- C7[(int)(K[1] ) & 0xff] ^
- rc[r];
-
- L[1] = C0[(int)(K[1] >> 56) ] ^
- C1[(int)(K[0] >> 48) & 0xff] ^
- C2[(int)(K[7] >> 40) & 0xff] ^
- C3[(int)(K[6] >> 32) & 0xff] ^
- C4[(int)(K[5] >> 24) & 0xff] ^
- C5[(int)(K[4] >> 16) & 0xff] ^
- C6[(int)(K[3] >> 8) & 0xff] ^
- C7[(int)(K[2] ) & 0xff];
-
- L[2] = C0[(int)(K[2] >> 56) ] ^
- C1[(int)(K[1] >> 48) & 0xff] ^
- C2[(int)(K[0] >> 40) & 0xff] ^
- C3[(int)(K[7] >> 32) & 0xff] ^
- C4[(int)(K[6] >> 24) & 0xff] ^
- C5[(int)(K[5] >> 16) & 0xff] ^
- C6[(int)(K[4] >> 8) & 0xff] ^
- C7[(int)(K[3] ) & 0xff];
-
- L[3] = C0[(int)(K[3] >> 56) ] ^
- C1[(int)(K[2] >> 48) & 0xff] ^
- C2[(int)(K[1] >> 40) & 0xff] ^
- C3[(int)(K[0] >> 32) & 0xff] ^
- C4[(int)(K[7] >> 24) & 0xff] ^
- C5[(int)(K[6] >> 16) & 0xff] ^
- C6[(int)(K[5] >> 8) & 0xff] ^
- C7[(int)(K[4] ) & 0xff];
-
- L[4] = C0[(int)(K[4] >> 56) ] ^
- C1[(int)(K[3] >> 48) & 0xff] ^
- C2[(int)(K[2] >> 40) & 0xff] ^
- C3[(int)(K[1] >> 32) & 0xff] ^
- C4[(int)(K[0] >> 24) & 0xff] ^
- C5[(int)(K[7] >> 16) & 0xff] ^
- C6[(int)(K[6] >> 8) & 0xff] ^
- C7[(int)(K[5] ) & 0xff];
-
- L[5] = C0[(int)(K[5] >> 56) ] ^
- C1[(int)(K[4] >> 48) & 0xff] ^
- C2[(int)(K[3] >> 40) & 0xff] ^
- C3[(int)(K[2] >> 32) & 0xff] ^
- C4[(int)(K[1] >> 24) & 0xff] ^
- C5[(int)(K[0] >> 16) & 0xff] ^
- C6[(int)(K[7] >> 8) & 0xff] ^
- C7[(int)(K[6] ) & 0xff];
-
- L[6] = C0[(int)(K[6] >> 56) ] ^
- C1[(int)(K[5] >> 48) & 0xff] ^
- C2[(int)(K[4] >> 40) & 0xff] ^
- C3[(int)(K[3] >> 32) & 0xff] ^
- C4[(int)(K[2] >> 24) & 0xff] ^
- C5[(int)(K[1] >> 16) & 0xff] ^
- C6[(int)(K[0] >> 8) & 0xff] ^
- C7[(int)(K[7] ) & 0xff];
-
- L[7] = C0[(int)(K[7] >> 56) ] ^
- C1[(int)(K[6] >> 48) & 0xff] ^
- C2[(int)(K[5] >> 40) & 0xff] ^
- C3[(int)(K[4] >> 32) & 0xff] ^
- C4[(int)(K[3] >> 24) & 0xff] ^
- C5[(int)(K[2] >> 16) & 0xff] ^
- C6[(int)(K[1] >> 8) & 0xff] ^
- C7[(int)(K[0] ) & 0xff];
+ L[0] = C0[BYTE7(K[0])] XEND
+ X(L[0]) C1[BYTE6(K[7])] XEND
+ X(L[0]) C2[BYTE5(K[6])] XEND
+ X(L[0]) C3[BYTE4(K[5])] XEND
+ X(L[0]) C4[BYTE3(K[4])] XEND
+ X(L[0]) C5[BYTE2(K[3])] XEND
+ X(L[0]) C6[BYTE1(K[2])] XEND
+ X(L[0]) C7[BYTE0(K[1])] XEND
+ X(L[0]) rc[r];
+
+ L[1] = C0[BYTE7(K[1])] XEND
+ X(L[1]) C1[BYTE6(K[0])] XEND
+ X(L[1]) C2[BYTE5(K[7])] XEND
+ X(L[1]) C3[BYTE4(K[6])] XEND
+ X(L[1]) C4[BYTE3(K[5])] XEND
+ X(L[1]) C5[BYTE2(K[4])] XEND
+ X(L[1]) C6[BYTE1(K[3])] XEND
+ X(L[1]) C7[BYTE0(K[2])];
+
+ L[2] = C0[BYTE7(K[2])] XEND
+ X(L[2]) C1[BYTE6(K[1])] XEND
+ X(L[2]) C2[BYTE5(K[0])] XEND
+ X(L[2]) C3[BYTE4(K[7])] XEND
+ X(L[2]) C4[BYTE3(K[6])] XEND
+ X(L[2]) C5[BYTE2(K[5])] XEND
+ X(L[2]) C6[BYTE1(K[4])] XEND
+ X(L[2]) C7[BYTE0(K[3])];
+
+ L[3] = C0[BYTE7(K[3])] XEND
+ X(L[3]) C1[BYTE6(K[2])] XEND
+ X(L[3]) C2[BYTE5(K[1])] XEND
+ X(L[3]) C3[BYTE4(K[0])] XEND
+ X(L[3]) C4[BYTE3(K[7])] XEND
+ X(L[3]) C5[BYTE2(K[6])] XEND
+ X(L[3]) C6[BYTE1(K[5])] XEND
+ X(L[3]) C7[BYTE0(K[4])];
+
+ L[4] = C0[BYTE7(K[4])] XEND
+ X(L[4]) C1[BYTE6(K[3])] XEND
+ X(L[4]) C2[BYTE5(K[2])] XEND
+ X(L[4]) C3[BYTE4(K[1])] XEND
+ X(L[4]) C4[BYTE3(K[0])] XEND
+ X(L[4]) C5[BYTE2(K[7])] XEND
+ X(L[4]) C6[BYTE1(K[6])] XEND
+ X(L[4]) C7[BYTE0(K[5])];
+
+ L[5] = C0[BYTE7(K[5])] XEND
+ X(L[5]) C1[BYTE6(K[4])] XEND
+ X(L[5]) C2[BYTE5(K[3])] XEND
+ X(L[5]) C3[BYTE4(K[2])] XEND
+ X(L[5]) C4[BYTE3(K[1])] XEND
+ X(L[5]) C5[BYTE2(K[0])] XEND
+ X(L[5]) C6[BYTE1(K[7])] XEND
+ X(L[5]) C7[BYTE0(K[6])];
+
+ L[6] = C0[BYTE7(K[6])] XEND
+ X(L[6]) C1[BYTE6(K[5])] XEND
+ X(L[6]) C2[BYTE5(K[4])] XEND
+ X(L[6]) C3[BYTE4(K[3])] XEND
+ X(L[6]) C4[BYTE3(K[2])] XEND
+ X(L[6]) C5[BYTE2(K[1])] XEND
+ X(L[6]) C6[BYTE1(K[0])] XEND
+ X(L[6]) C7[BYTE0(K[7])];
+
+ L[7] = C0[BYTE7(K[7])] XEND
+ X(L[7]) C1[BYTE6(K[6])] XEND
+ X(L[7]) C2[BYTE5(K[5])] XEND
+ X(L[7]) C3[BYTE4(K[4])] XEND
+ X(L[7]) C4[BYTE3(K[3])] XEND
+ X(L[7]) C5[BYTE2(K[2])] XEND
+ X(L[7]) C6[BYTE1(K[1])] XEND
+ X(L[7]) C7[BYTE0(K[0])];
K[0] = L[0];
K[1] = L[1];
@@ -877,85 +887,85 @@ static void wp512_process_buffer(struct
K[6] = L[6];
K[7] = L[7];
- L[0] = C0[(int)(state[0] >> 56) ] ^
- C1[(int)(state[7] >> 48) & 0xff] ^
- C2[(int)(state[6] >> 40) & 0xff] ^
- C3[(int)(state[5] >> 32) & 0xff] ^
- C4[(int)(state[4] >> 24) & 0xff] ^
- C5[(int)(state[3] >> 16) & 0xff] ^
- C6[(int)(state[2] >> 8) & 0xff] ^
- C7[(int)(state[1] ) & 0xff] ^
- K[0];
-
- L[1] = C0[(int)(state[1] >> 56) ] ^
- C1[(int)(state[0] >> 48) & 0xff] ^
- C2[(int)(state[7] >> 40) & 0xff] ^
- C3[(int)(state[6] >> 32) & 0xff] ^
- C4[(int)(state[5] >> 24) & 0xff] ^
- C5[(int)(state[4] >> 16) & 0xff] ^
- C6[(int)(state[3] >> 8) & 0xff] ^
- C7[(int)(state[2] ) & 0xff] ^
- K[1];
-
- L[2] = C0[(int)(state[2] >> 56) ] ^
- C1[(int)(state[1] >> 48) & 0xff] ^
- C2[(int)(state[0] >> 40) & 0xff] ^
- C3[(int)(state[7] >> 32) & 0xff] ^
- C4[(int)(state[6] >> 24) & 0xff] ^
- C5[(int)(state[5] >> 16) & 0xff] ^
- C6[(int)(state[4] >> 8) & 0xff] ^
- C7[(int)(state[3] ) & 0xff] ^
- K[2];
-
- L[3] = C0[(int)(state[3] >> 56) ] ^
- C1[(int)(state[2] >> 48) & 0xff] ^
- C2[(int)(state[1] >> 40) & 0xff] ^
- C3[(int)(state[0] >> 32) & 0xff] ^
- C4[(int)(state[7] >> 24) & 0xff] ^
- C5[(int)(state[6] >> 16) & 0xff] ^
- C6[(int)(state[5] >> 8) & 0xff] ^
- C7[(int)(state[4] ) & 0xff] ^
- K[3];
-
- L[4] = C0[(int)(state[4] >> 56) ] ^
- C1[(int)(state[3] >> 48) & 0xff] ^
- C2[(int)(state[2] >> 40) & 0xff] ^
- C3[(int)(state[1] >> 32) & 0xff] ^
- C4[(int)(state[0] >> 24) & 0xff] ^
- C5[(int)(state[7] >> 16) & 0xff] ^
- C6[(int)(state[6] >> 8) & 0xff] ^
- C7[(int)(state[5] ) & 0xff] ^
- K[4];
-
- L[5] = C0[(int)(state[5] >> 56) ] ^
- C1[(int)(state[4] >> 48) & 0xff] ^
- C2[(int)(state[3] >> 40) & 0xff] ^
- C3[(int)(state[2] >> 32) & 0xff] ^
- C4[(int)(state[1] >> 24) & 0xff] ^
- C5[(int)(state[0] >> 16) & 0xff] ^
- C6[(int)(state[7] >> 8) & 0xff] ^
- C7[(int)(state[6] ) & 0xff] ^
- K[5];
-
- L[6] = C0[(int)(state[6] >> 56) ] ^
- C1[(int)(state[5] >> 48) & 0xff] ^
- C2[(int)(state[4] >> 40) & 0xff] ^
- C3[(int)(state[3] >> 32) & 0xff] ^
- C4[(int)(state[2] >> 24) & 0xff] ^
- C5[(int)(state[1] >> 16) & 0xff] ^
- C6[(int)(state[0] >> 8) & 0xff] ^
- C7[(int)(state[7] ) & 0xff] ^
- K[6];
-
- L[7] = C0[(int)(state[7] >> 56) ] ^
- C1[(int)(state[6] >> 48) & 0xff] ^
- C2[(int)(state[5] >> 40) & 0xff] ^
- C3[(int)(state[4] >> 32) & 0xff] ^
- C4[(int)(state[3] >> 24) & 0xff] ^
- C5[(int)(state[2] >> 16) & 0xff] ^
- C6[(int)(state[1] >> 8) & 0xff] ^
- C7[(int)(state[0] ) & 0xff] ^
- K[7];
+ L[0] = C0[BYTE7(state[0])] XEND
+ X(L[0]) C1[BYTE6(state[7])] XEND
+ X(L[0]) C2[BYTE5(state[6])] XEND
+ X(L[0]) C3[BYTE4(state[5])] XEND
+ X(L[0]) C4[BYTE3(state[4])] XEND
+ X(L[0]) C5[BYTE2(state[3])] XEND
+ X(L[0]) C6[BYTE1(state[2])] XEND
+ X(L[0]) C7[BYTE0(state[1])] XEND
+ X(L[0]) K[0];
+
+ L[1] = C0[BYTE7(state[1])] XEND
+ X(L[1]) C1[BYTE6(state[0])] XEND
+ X(L[1]) C2[BYTE5(state[7])] XEND
+ X(L[1]) C3[BYTE4(state[6])] XEND
+ X(L[1]) C4[BYTE3(state[5])] XEND
+ X(L[1]) C5[BYTE2(state[4])] XEND
+ X(L[1]) C6[BYTE1(state[3])] XEND
+ X(L[1]) C7[BYTE0(state[2])] XEND
+ X(L[1]) K[1];
+
+ L[2] = C0[BYTE7(state[2])] XEND
+ X(L[2]) C1[BYTE6(state[1])] XEND
+ X(L[2]) C2[BYTE5(state[0])] XEND
+ X(L[2]) C3[BYTE4(state[7])] XEND
+ X(L[2]) C4[BYTE3(state[6])] XEND
+ X(L[2]) C5[BYTE2(state[5])] XEND
+ X(L[2]) C6[BYTE1(state[4])] XEND
+ X(L[2]) C7[BYTE0(state[3])] XEND
+ X(L[2]) K[2];
+
+ L[3] = C0[BYTE7(state[3])] XEND
+ X(L[3]) C1[BYTE6(state[2])] XEND
+ X(L[3]) C2[BYTE5(state[1])] XEND
+ X(L[3]) C3[BYTE4(state[0])] XEND
+ X(L[3]) C4[BYTE3(state[7])] XEND
+ X(L[3]) C5[BYTE2(state[6])] XEND
+ X(L[3]) C6[BYTE1(state[5])] XEND
+ X(L[3]) C7[BYTE0(state[4])] XEND
+ X(L[3]) K[3];
+
+ L[4] = C0[BYTE7(state[4])] XEND
+ X(L[4]) C1[BYTE6(state[3])] XEND
+ X(L[4]) C2[BYTE5(state[2])] XEND
+ X(L[4]) C3[BYTE4(state[1])] XEND
+ X(L[4]) C4[BYTE3(state[0])] XEND
+ X(L[4]) C5[BYTE2(state[7])] XEND
+ X(L[4]) C6[BYTE1(state[6])] XEND
+ X(L[4]) C7[BYTE0(state[5])] XEND
+ X(L[4]) K[4];
+
+ L[5] = C0[BYTE7(state[5])] XEND
+ X(L[5]) C1[BYTE6(state[4])] XEND
+ X(L[5]) C2[BYTE5(state[3])] XEND
+ X(L[5]) C3[BYTE4(state[2])] XEND
+ X(L[5]) C4[BYTE3(state[1])] XEND
+ X(L[5]) C5[BYTE2(state[0])] XEND
+ X(L[5]) C6[BYTE1(state[7])] XEND
+ X(L[5]) C7[BYTE0(state[6])] XEND
+ X(L[5]) K[5];
+
+ L[6] = C0[BYTE7(state[6])] XEND
+ X(L[6]) C1[BYTE6(state[5])] XEND
+ X(L[6]) C2[BYTE5(state[4])] XEND
+ X(L[6]) C3[BYTE4(state[3])] XEND
+ X(L[6]) C4[BYTE3(state[2])] XEND
+ X(L[6]) C5[BYTE2(state[1])] XEND
+ X(L[6]) C6[BYTE1(state[0])] XEND
+ X(L[6]) C7[BYTE0(state[7])] XEND
+ X(L[6]) K[6];
+
+ L[7] = C0[BYTE7(state[7])] XEND
+ X(L[7]) C1[BYTE6(state[6])] XEND
+ X(L[7]) C2[BYTE5(state[5])] XEND
+ X(L[7]) C3[BYTE4(state[4])] XEND
+ X(L[7]) C4[BYTE3(state[3])] XEND
+ X(L[7]) C5[BYTE2(state[2])] XEND
+ X(L[7]) C6[BYTE1(state[1])] XEND
+ X(L[7]) C7[BYTE0(state[0])] XEND
+ X(L[7]) K[7];
state[0] = L[0];
state[1] = L[1];
@@ -979,7 +989,7 @@ static void wp512_process_buffer(struct
wctx->hash[7] ^= state[7] ^ block[7];
}
-static void wp512_init (void *ctx) {
+static void wp512_init(void *ctx) {
int i;
struct wp512_ctx *wctx = ctx;
next prev parent reply other threads:[~2005-06-08 12:13 UTC|newest]
Thread overview: 118+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-06-07 21:27 Adrian Bunk
2005-06-07 21:47 ` Alexander Nyberg
2005-06-08 10:03 ` Jörn Engel
2005-06-08 10:39 ` Denis Vlasenko
2005-06-08 11:12 ` Adrian Bunk
2005-06-08 12:13 ` Denis Vlasenko [this message]
2005-07-04 18:22 ` Adrian Bunk
2005-07-05 6:14 ` Denis Vlasenko
2005-07-05 13:46 ` Horst von Brand
2005-06-08 1:52 ` Ian Kent
2005-06-08 10:42 ` Denis Vlasenko
2005-06-08 14:28 ` raven
2005-06-08 12:00 ` Vladimir Saveliev
2005-06-10 15:18 ` Vladimir Saveliev
2005-06-08 12:35 Ian Kumlien
2005-06-08 13:14 ` Denis Vlasenko
2005-09-02 0:39 Adrian Bunk
2005-09-02 5:33 ` Chris Wedgwood
2005-09-02 6:29 ` Nathan Scott
2005-09-02 6:40 ` Neil Brown
2005-09-13 8:05 ` Alexander Nyberg
2005-10-01 22:50 ` Adrian Bunk
2005-10-02 20:35 ` Nathan Scott
2005-09-02 6:55 ` Vladimir V. Saveliev
2005-09-02 21:58 ` Hans Reiser
2005-09-04 3:48 ` Lee Revell
2005-09-04 7:36 ` Stefan Smietanowski
2005-09-04 8:23 ` Lee Revell
2005-09-04 19:39 ` Adrian Bunk
2005-09-04 12:12 ` Guillaume Chazarain
2005-09-04 13:26 ` Sander
[not found] <4IcUz-7H2-27@gated-at.bofh.it>
[not found] ` <4J2gx-3zf-3@gated-at.bofh.it>
[not found] ` <4J5R1-cH-21@gated-at.bofh.it>
[not found] ` <4J6ao-L9-21@gated-at.bofh.it>
[not found] ` <4J6jZ-Xg-11@gated-at.bofh.it>
[not found] ` <4J8vt-43Y-13@gated-at.bofh.it>
2005-09-02 6:08 ` Alex Davis
2005-09-04 12:49 ` Denis Vlasenko
2005-09-04 13:30 ` Ed Tomlinson
2005-09-04 14:49 ` Alan Cox
2005-09-04 16:44 ` Paul Misner
2005-09-04 17:07 ` Pekka Enberg
2005-09-04 17:12 ` Bas Westerbaan
2005-09-04 19:22 ` Horst von Brand
2005-09-04 19:33 ` Adrian Bunk
2005-09-04 20:13 ` Bas Westerbaan
2005-09-04 20:37 ` Dave Jones
2005-09-07 16:38 ` Bill Davidsen
2005-09-07 17:53 ` Mike Galbraith
2005-09-08 19:05 ` Bill Davidsen
2005-09-05 22:32 ` Thorild Selen
2005-09-05 23:06 ` Kyle Moffett
2005-09-04 14:51 Alex Davis
2005-09-04 17:11 ` Stefan Smietanowski
2005-09-04 17:11 ` Dr. David Alan Gilbert
2005-09-04 17:19 ` Alan Cox
2005-09-06 4:37 ` Andi Kleen
2005-09-06 6:39 ` Denis Vlasenko
2005-09-06 7:13 ` Andi Kleen
2005-09-06 7:32 ` Nick Piggin
2005-09-06 7:50 ` Andi Kleen
2005-09-06 13:29 ` Diego Calleja
2005-09-06 13:25 ` Giridhar Pemmasani
2005-09-06 17:05 ` Jan Kiszka
2005-09-06 17:23 ` Giridhar Pemmasani
2005-09-06 18:42 ` linux-os (Dick Johnson)
2005-09-06 18:46 ` viro
2005-09-06 19:42 ` Jan Kiszka
2005-09-06 20:21 ` linux-os (Dick Johnson)
2005-09-07 17:46 ` Bill Davidsen
2005-09-07 17:54 ` Jan Kiszka
2005-09-07 19:52 ` Daniel Phillips
2005-09-07 20:17 ` Daniel Phillips
2005-09-07 20:29 ` Jan Kiszka
2005-09-07 20:28 ` Jan Kiszka
2005-09-07 21:57 ` Giridhar Pemmasani
2005-09-07 23:25 ` Jan Kiszka
2005-09-08 1:06 ` Giridhar Pemmasani
2005-09-08 19:43 ` Bill Davidsen
2005-09-06 22:19 ` Daniel Phillips
2005-09-06 22:21 ` Andi Kleen
2005-09-06 22:36 ` Daniel Phillips
2005-09-06 23:40 ` Steven Rostedt
2005-09-06 22:28 ` Roland Dreier
2005-09-07 0:04 ` Daniel Phillips
2005-09-06 22:42 ` Giridhar Pemmasani
2005-09-07 1:59 ` Mark Lord
2005-09-07 3:46 ` Lee Revell
2005-09-07 4:16 ` Daniel Phillips
2005-09-07 5:48 ` Daniel Phillips
2005-09-07 16:43 ` Bill Davidsen
2005-09-08 0:44 ` Alex Davis
[not found] <4I7UM-M1-1@gated-at.bofh.it>
[not found] ` <4ITG4-8nH-1@gated-at.bofh.it>
[not found] ` <4J1DC-2NU-1@gated-at.bofh.it>
2005-09-04 17:33 ` Robert Hancock
2005-09-05 1:30 Alex Davis
2005-09-05 1:41 ` Adrian Bunk
2005-09-05 1:56 ` dean gaudet
2005-09-05 2:00 Alex Davis
2005-09-05 2:07 ` Sean
2005-09-05 2:29 ` Alex Davis
2005-09-05 3:00 ` Sean
2005-09-05 3:41 ` Alex Davis
2005-09-05 3:51 ` Sean
2005-09-05 4:03 ` Alex Davis
2005-09-05 4:12 ` Sean
2005-09-05 4:36 ` Willy Tarreau
2005-09-05 4:47 ` Sean
2005-09-05 5:01 ` Willy Tarreau
2005-09-05 5:31 ` Sean
2005-09-05 6:04 ` Willy Tarreau
2005-09-05 6:20 ` Sean
2005-09-05 6:29 ` Pekka Enberg
2005-09-05 15:29 ` Horst von Brand
2005-09-08 20:18 ` Bill Davidsen
2005-09-08 22:51 ` Sean
2005-09-05 6:41 ` Sander
2005-09-05 8:01 ` Willy Tarreau
2005-09-08 20:01 ` Bill Davidsen
2005-09-08 20:24 ` Christopher Friesen
2005-09-05 3:54 ` Kyle Moffett
2005-09-05 4:26 ` Dave Jones
2005-09-05 4:48 ` Willy Tarreau
2005-09-06 17:04 ` Benjamin LaHaise
2005-09-06 10:29 Chuck Ebbert
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=200506081513.09828.vda@ilport.com.ua \
--to=vda@ilport.com.ua \
--cc=alexn@telia.com \
--cc=bunk@stusta.de \
--cc=linux-kernel@vger.kernel.org \
--cc=reiserfs-dev@namesys.com \
/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
all inboxes | Powered by JetHome®