Re: memory-related bugs - Mailing list pgsql-hackers

From Tom Lane
Subject Re: memory-related bugs
Date
Msg-id 12299.1315515369@sss.pgh.pa.us
Whole thread Raw
In response to Re: memory-related bugs  (Daniel Farina <daniel@heroku.com>)
Responses Re: memory-related bugs
List pgsql-hackers
Daniel Farina <daniel@heroku.com> writes:
> On Tue, Sep 6, 2011 at 12:00 PM, Tom Lane <tgl@sss.pgh.pa.us> wrote:
>> I'm still of the opinion that there's no real need to avoid memcpy with
>> identical source and destination, so I didn't apply this first patch.

> I am leery of memcpy with overlapping regions.  I know that it can
> cause an infinite loop on ssse3 architectures, having to do with some
> backwards-iteration it does:
> https://bugs.launchpad.net/ubuntu/+source/apache2/+bug/609290

The linked page offers no support for your claim of an infinite loop,
and in any case it's discussing a case involving *overlapping* regions,
not *identical* regions.

The reason why this concern is irrelevant for identical regions is that
no matter what order the memcpy routine copies the bytes in, it's
necessarily storing the exact same data into each byte that was there
before.  The only way that strange results could be produced is if the
routine transiently set some byte to a value other than its final value,
which would mean that it must be intending to store to that location
more than once, which would be silly and inefficient.

So I'm not going to believe that there's a problem here without a lot
more rigorous evidence than anyone has offered.
        regards, tom lane


pgsql-hackers by date:

Previous
From: Peter Geoghegan
Date:
Subject: Re: Large C files
Next
From: Magnus Hagander
Date:
Subject: Re: Protecting against multiple instances per cluster