lkml.org 
[lkml]   [2001]   [Nov]   [13]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] search_one_table()
Per Persson wrote:
>
> I found that gcc doesn't manage to do this rewrite itself. My micro-patch
> saves a few bytes. Also the code becomes a little bit cleaner (IMHO).
>
> Probably the same change could (and should) be made for the other
> architectures too.
>
> Per Persson
> per.persson@gnosjo.pp.se
>
> --- arch/i386/mm/extable.c.orig Mon Nov 12 00:13:52 2001
> +++ arch/i386/mm/extable.c Tue Nov 13 17:39:42 2001
> @@ -19,7 +19,7 @@
> const struct exception_table_entry *mid;
> long diff;
>
> - mid = (last - first) / 2 + first;
> + mid = (last + first) / 2
> diff = mid->insn - value;
> if (diff == 0)
> return mid->fixup;
>

This change will not work because of lost high bits due to overflow.
Remember that kernel addresses are in the 0xc0000000-0xffffffff range.

--

Brian Gerst
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:13    [W:0.024 / U:2.296 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site