Thread

Commits

  1. Switch some palloc/memset calls to palloc0

  1. pg_malloc0() instead of pg_malloc()+memset()

    Daniel Gustafsson <daniel@yesql.se> — 2019-03-25T13:18:05Z

    When reading another codepath, I happened to notice a few codepaths where we do
    pg_malloc() immediately followed by a memset( ..  0, ..), without there being a
    justification (that I can see) for not using pg_malloc0() instead. The attached
    patch changes to pg_malloc0(), and passes make check.
    
    cheers ./daniel
    
    
  2. Re: pg_malloc0() instead of pg_malloc()+memset()

    Michael Paquier <michael@paquier.xyz> — 2019-03-26T08:00:12Z

    On Mon, Mar 25, 2019 at 01:18:05PM +0000, Daniel Gustafsson wrote:
    > When reading another codepath, I happened to notice a few codepaths where we do
    > pg_malloc() immediately followed by a memset( ..  0, ..), without there being a
    > justification (that I can see) for not using pg_malloc0() instead. The attached
    > patch changes to pg_malloc0(), and passes make check.
    
    If we simplify all of them (and that's not really a big deal), I have
    spotted two extra places on top of what you noticed, one in gist.c
    where ROTATEDIST is defined and a second one in tablefunc.c. 
    
    Thoughts?
    --
    Michael
    
  3. Re: pg_malloc0() instead of pg_malloc()+memset()

    Daniel Gustafsson <daniel@yesql.se> — 2019-03-26T09:14:46Z

    On Tuesday, March 26, 2019 9:00 AM, Michael Paquier <michael@paquier.xyz> wrote:
    
    > On Mon, Mar 25, 2019 at 01:18:05PM +0000, Daniel Gustafsson wrote:
    >
    > > When reading another codepath, I happened to notice a few codepaths where we do
    > > pg_malloc() immediately followed by a memset( .. 0, ..), without there being a
    > > justification (that I can see) for not using pg_malloc0() instead. The attached
    > > patch changes to pg_malloc0(), and passes make check.
    >
    > If we simplify all of them (and that's not really a big deal), I have
    > spotted two extra places on top of what you noticed, one in gist.c
    > where ROTATEDIST is defined and a second one in tablefunc.c.
    
    Nice, I had missed them as I my eyes set on pg_malloc(). I've done another pass over
    the codebase and I can't spot any other on top of the additional ones you found where
    MemSet() in palloc0 is preferrable over memset().
    
    cheers ./daniel
    
    
    
  4. Re: pg_malloc0() instead of pg_malloc()+memset()

    Michael Paquier <michael@paquier.xyz> — 2019-03-27T03:04:14Z

    On Tue, Mar 26, 2019 at 09:14:46AM +0000, Daniel Gustafsson wrote:
    > Nice, I had missed them as I my eyes set on pg_malloc(). I've done another pass over
    > the codebase and I can't spot any other on top of the additional ones you found where
    > MemSet() in palloc0 is preferrable over memset().
    
    Same here, committed.  Just for the note, I have been just using git
    grep -A to look at the follow-up lines of any allocation calls.
    --
    Michael