[tarantool-patches] Re: [PATCH 0/3] introduce static allocator

Vladislav Shpilevoy v.shpilevoy at tarantool.org
Tue May 14 01:57:45 MSK 2019


Pushed into the master, but with a change: tt_static_buf()
now uses static_aligned_alloc with alignment by 'intptr_t'.
So it can be used to allocate temporary arrays of any types.

Note, that I kept tt_static.h header, because small/static is
an allocator, not a string formatter. And I decided, that it
should not include string-related utils, stdio.h header etc.

On 28/04/2019 19:56, Vladislav Shpilevoy wrote:
> The patchset 1) fixes a bug about static buffers duplication in each C-file
> using them, 2) introduces static memory allocator to avoid temporary on-stack
> and BSS allocations.
> 
> Branch: http://github.com/tarantool/tarantool/tree/gerold103/small-static-alloc
> 
> Vladislav Shpilevoy (3):
>   small: introduce small/static
>   Use static_alloc() instead of 'static char[]' where possible
>   sio: optimize sio_strfaddr() for the most common case
> 
>  src/box/call.c                |   1 +
>  src/box/identifier.c          |   2 +-
>  src/box/identifier.h          |   1 -
>  src/box/iproto.cc             |   3 +-
>  src/box/memtx_engine.c        |   8 +--
>  src/box/opt_def.c             |   1 +
>  src/box/relay.cc              |   2 +-
>  src/box/session.cc            |   1 +
>  src/box/space_def.c           |   1 +
>  src/box/space_def.h           |   2 +-
>  src/box/sql/sqlLimit.h        |   2 +-
>  src/box/tuple.h               |   1 +
>  src/box/tuple_format.c        |   1 +
>  src/box/user.cc               |   1 +
>  src/box/vclock.c              |   2 +-
>  src/box/vy_log.c              |   2 +-
>  src/box/xlog.c                |  24 +++----
>  src/box/xlog.h                |   2 +-
>  src/box/xrow.c                |   2 +-
>  src/cfg.c                     |  15 ++---
>  src/httpc.c                   |   7 +-
>  src/lib/coll/coll.c           |   2 +-
>  src/lib/core/fio.c            |   2 +-
>  src/lib/core/say.c            |   1 +
>  src/lib/core/sio.c            |  24 ++++---
>  src/lib/core/tt_static.h      | 118 ++++++++++++++++++++++++++++++++++
>  src/lib/small                 |   2 +-
>  src/lib/swim/swim_io.h        |   2 +-
>  src/lib/swim/swim_proto.h     |   2 +-
>  src/lib/swim/swim_transport.h |   1 -
>  src/lib/uuid/tt_uuid.c        |   2 +-
>  src/lua/utf8.c                |   1 +
>  src/trivia/util.h             |  53 ---------------
>  33 files changed, 182 insertions(+), 109 deletions(-)
>  create mode 100644 src/lib/core/tt_static.h
> 




More information about the Tarantool-patches mailing list