lkml.org 
[lkml]   [2005]   [Nov]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    /
    Date
    From
    SubjectRe: PATCH: Fix poor pointer math in devinet_sysctl_register
    Jordan Crouse writes:
    > This patch fixes pointer math that under certain circumstances, results
    > in really bad pointers. This was encountered on a system compiled for i486, so
    > other compilers may differ, but I don't think it hurts anyone.
    >
    > Signed-off-by: Jordan Crouse <jordan.crouse@amd.com>
    > ---
    >
    > net/ipv4/devinet.c | 2 +-
    > 1 files changed, 1 insertions(+), 1 deletions(-)
    >
    > diff --git a/net/ipv4/devinet.c b/net/ipv4/devinet.c
    > index 4ec4b2c..7585fce 100644
    > --- a/net/ipv4/devinet.c
    > +++ b/net/ipv4/devinet.c
    > @@ -1454,7 +1454,7 @@ static void devinet_sysctl_register(stru
    > return;
    > memcpy(t, &devinet_sysctl, sizeof(*t));
    > for (i = 0; i < ARRAY_SIZE(t->devinet_vars) - 1; i++) {
    > - t->devinet_vars[i].data += (char *)p - (char *)&ipv4_devconf;
    > + t->devinet_vars[i].data += (int)((char *)p - (char *)&ipv4_devconf);
    > t->devinet_vars[i].de = NULL;
    > }

    This is the same code which broke due to a known gcc-4.0.0 bug:
    <http://gcc.gnu.org/bugzilla/show_bug.cgi?id=21173>. If you're
    indeed using gcc-4.0.0, then it's time to upgrade.

    /Mikael
    -
    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-11-17 11:58    [W:0.020 / U:4.784 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site