From: "sergos@tarantool.org" <sergos@tarantool.org> To: Mons Anderson <mons@cpan.org> Cc: tarantool-patches@dev.tarantool.org Subject: Re: [Tarantool-patches] [PATCH 00/43] Unhide symbols Date: Wed, 15 Apr 2020 13:50:44 +0300 [thread overview] Message-ID: <2207FBB1-CFB8-4F68-BDED-8A2F4509B652@tarantool.org> (raw) In-Reply-To: <CAOgz_5-oGRRPMU2a_hvOOO=Z3p3_tdNF5+avn9TKywBVpweGeA@mail.gmail.com> > On 15 Apr 2020, at 13:40, Mons Anderson <mons@cpan.org> wrote: > > On Tue, Apr 14, 2020 at 11:41 PM Konstantin Osipov > <kostja.osipov@gmail.com> wrote: >> >> * Timur Safin <tsafin@tarantool.org> [20/04/14 21:01]: >>> : Mons will be happy simply if we switch back to default gcc linking >>> : options, -fvisibility=default, which is basically dropping >>> : -exported_symbols_list. > > We've been discussing this with team. It is sufficient for me. > But you can't just drop exported_symbols_list without replacing it > with something else to guarantee presence of internal ffi functions > This could be done with approach from @cyrillos, AFAIU. These functions should be annotated in the code, rather than collected in a separate list. If a function is not present in the tarantool binary - e.g. dropped as not used from static library - it should not be available anyways. Will it work you, Mons? >> >> This is unrelated. 1.5 didn't have plugin api and no ffi exports >> and mons was hacking into it. >> >> In fact he wasn't hacking into functions at all, he was hacking >> into global state, such as cord_ptr->fiber, and it was not (and I >> believe is not) removed from the visibility list by linker. >> >> In short: >> When trying to understand how this "feature" worked before, look >> at 1.5, not 1.6+. > > You are wrong. It works in 1.6 and was broken by mejedi in the middle > of 1.7 and unfortunately left unseen > For ex, I’m using in 1.6: > > ffi.cdef[[ uint32_t sc_version; ]] > > Things like that stop working after that patch. > > > -- > Best wishes, > Vladimir V. Perepelitsa aka Mons Anderson > <inthrax@gmail.com>, <mons@cpan.org> > http://github.com/Mons
next prev parent reply other threads:[~2020-04-15 10:50 UTC|newest] Thread overview: 76+ messages / expand[flat|nested] mbox.gz Atom feed top 2020-04-12 0:12 Vladislav Shpilevoy 2020-04-12 0:12 ` [Tarantool-patches] [PATCH 01/43] cmake: remove double usage of some source files Vladislav Shpilevoy 2020-04-12 0:12 ` [Tarantool-patches] [PATCH 10/43] build: export src/lib/core/fiber.c symbols Vladislav Shpilevoy 2020-04-12 0:12 ` [Tarantool-patches] [PATCH 11/43] build: export src/lua/init.c symbols Vladislav Shpilevoy 2020-04-12 0:12 ` [Tarantool-patches] [PATCH 12/43] build: export src/lib/core/port.c symbols Vladislav Shpilevoy 2020-04-12 0:12 ` [Tarantool-patches] [PATCH 13/43] build: export src/lib/csv/csv.c symbols Vladislav Shpilevoy 2020-04-12 0:12 ` [Tarantool-patches] [PATCH 14/43] build: export src/title.c symbols Vladislav Shpilevoy 2020-04-12 0:12 ` [Tarantool-patches] [PATCH 15/43] build: export src/lua/tnt_iconv.c symbols Vladislav Shpilevoy 2020-04-12 0:12 ` [Tarantool-patches] [PATCH 16/43] build: export src/lib/core/exception.cc symbols Vladislav Shpilevoy 2020-04-12 0:12 ` [Tarantool-patches] [PATCH 17/43] build: export src/lib/uuid/tt_uuid.c symbols Vladislav Shpilevoy 2020-04-12 0:12 ` [Tarantool-patches] [PATCH 18/43] build: export src/lib/core/say.c symbols Vladislav Shpilevoy 2020-04-12 0:12 ` [Tarantool-patches] [PATCH 19/43] build: export src/lib/uri/uri.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 02/43] cmake: remove dynamic-list linker option Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 20/43] build: export third_party/PMurHash.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 21/43] build: export src/crc32.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 22/43] build: export src/lua/msgpack.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 23/43] build: export src/main.cc symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 24/43] build: export src/box/space.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 25/43] build: export src/box/schema.cc symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 26/43] build: export src/lib/crypto/crypto.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 27/43] build: export src/lua/buffer.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 28/43] build: export src/lib/swim/swim.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 29/43] build: export src/lib/core/fiber_cond.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 03/43] build: export src/lib/core/clock.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 30/43] build: export src/lib/core/coio.cc symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 31/43] build: export src/lua/utils.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 32/43] build: export src/box/lua/tuple.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 33/43] build: export src/lua/error.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 34/43] build: export src/box/txn.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 35/43] build: export src/box/key_def.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 36/43] build: export src/box/tuple.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 37/43] build: export src/box/index.cc symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 38/43] build: export src/box/box.cc symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 39/43] build: export src/box/error.cc symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 04/43] build: export src/scramble.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 40/43] build: export src/lib/core/diag.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 41/43] build: export src/lib/core/latch.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 42/43] build: export src/lua/string.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 43/43] build: export public Lua symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 05/43] build: export src/lua/socket.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 06/43] build: export third_party/base64.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 07/43] build: export src/lua/digest.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 08/43] build: export src/lib/salad/guava.c symbols Vladislav Shpilevoy 2020-04-12 0:13 ` [Tarantool-patches] [PATCH 09/43] build: export src/lib/core/random.c symbols Vladislav Shpilevoy 2020-04-14 18:14 ` Timur Safin 2020-04-12 11:34 ` [Tarantool-patches] [PATCH 00/43] Unhide symbols Konstantin Osipov 2020-04-12 14:05 ` Vladislav Shpilevoy 2020-04-13 9:40 ` Konstantin Osipov 2020-04-13 9:42 ` Konstantin Osipov 2020-04-13 13:53 ` Vladislav Shpilevoy 2020-04-13 14:15 ` Konstantin Osipov 2020-04-13 14:21 ` Vladislav Shpilevoy 2020-04-13 19:49 ` Sergey Ostanevich 2020-04-13 21:01 ` Vladislav Shpilevoy 2020-04-13 21:38 ` Konstantin Osipov 2020-04-14 18:01 ` Timur Safin 2020-04-14 18:26 ` Timur Safin 2020-04-14 20:41 ` 'Konstantin Osipov' 2020-04-15 10:28 ` Mons Anderson 2020-04-15 10:40 ` Mons Anderson 2020-04-15 10:50 ` sergos [this message] 2020-04-15 21:58 ` Vladislav Shpilevoy 2020-04-16 12:13 ` Cyrill Gorcunov 2020-04-16 20:30 ` Vladislav Shpilevoy 2020-04-17 7:48 ` Timur Safin 2020-04-17 8:29 ` Cyrill Gorcunov 2020-04-15 11:27 ` Konstantin Osipov 2020-04-12 14:25 ` Vladislav Shpilevoy 2020-04-12 20:18 ` Vladislav Shpilevoy 2020-04-13 14:26 ` Vladislav Shpilevoy 2020-04-13 16:44 ` Cyrill Gorcunov 2020-04-13 17:57 ` Vladislav Shpilevoy 2020-04-13 18:17 ` Cyrill Gorcunov 2020-04-14 1:15 ` Vladislav Shpilevoy 2020-04-14 1:27 ` [Tarantool-patches] [PATCH 44/43] build: export src/box/lua/console.c symbols Vladislav Shpilevoy 2020-04-15 23:15 ` [Tarantool-patches] [PATCH 00/43] Unhide symbols Vladislav Shpilevoy
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=2207FBB1-CFB8-4F68-BDED-8A2F4509B652@tarantool.org \ --to=sergos@tarantool.org \ --cc=mons@cpan.org \ --cc=tarantool-patches@dev.tarantool.org \ --subject='Re: [Tarantool-patches] [PATCH 00/43] Unhide symbols' \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: link
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox