diff options
author | Bernd Schmidt <bernds_cb1@t-online.de> | 2009-01-07 10:14:39 -0500 |
---|---|---|
committer | Bryan Wu <cooloney@kernel.org> | 2009-01-07 10:14:39 -0500 |
commit | b13120d23bf4b066a36a9414514f992eb3907e4b (patch) | |
tree | bacb6eb61c652fd7cf69ad69abff472fc5a2215e /arch | |
parent | 7ad883a94df143dcef5d83fde424b2ec27833c71 (diff) |
Blackfin arch: fix bug - crashes in tcp_v4_send_reset
Michael says that some bugs are crashes in tcp_v4_send_reset.
There's a missing clobber of "CC" in our checksum assembly
statement; fixing this makes the generated code look much saner.
Signed-off-by: Bernd Schmidt <bernds_cb1@t-online.de>
Signed-off-by: Bryan Wu <cooloney@kernel.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/blackfin/include/asm/checksum.h | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/arch/blackfin/include/asm/checksum.h b/arch/blackfin/include/asm/checksum.h index 6f6af2b8e9e0..f67289a0d8d2 100644 --- a/arch/blackfin/include/asm/checksum.h +++ b/arch/blackfin/include/asm/checksum.h | |||
@@ -78,7 +78,8 @@ csum_tcpudp_nofold(__be32 saddr, __be32 daddr, unsigned short len, | |||
78 | "%0 = %0 + %4;\n\t" | 78 | "%0 = %0 + %4;\n\t" |
79 | "NOP;\n\t" | 79 | "NOP;\n\t" |
80 | : "=d" (sum) | 80 | : "=d" (sum) |
81 | : "d" (daddr), "d" (saddr), "d" ((ntohs(len)<<16)+proto*256), "d" (1), "0"(sum)); | 81 | : "d" (daddr), "d" (saddr), "d" ((ntohs(len)<<16)+proto*256), "d" (1), "0"(sum) |
82 | : "CC"); | ||
82 | 83 | ||
83 | return (sum); | 84 | return (sum); |
84 | } | 85 | } |