VIP23 (VSL refactoring) design sketch
Nils Goroll
nils.goroll at uplex.de
Wed Apr 10 09:50:33 UTC 2019
my 2¢ on the VSL interface:
If we really want to go for varargs, having format string compile time checking
with v_printflike_() would be a must in order not to lower our standard, yes.
But at least for the built-in tags, I find it more appealing to auto-generate
logging functions for each SLT (not macros) with well-defined arguments, by
example of
void VSLb_ts(struct vsl_log *, const char *event, vtim_real first,
vtim_real *pprev, vtim_real now);
The generated code may or may not memcpy, but even if, why is this an issue?
And for this concept, I don't think the cache line argument holds. Most
arguments will be passed in registers.
For dynamic Tags, we might have some less efficient generic code which follows
some spec and a format string, but we might also compromise a bit and make these
not fully dynamic but rather "extensible" and run our spec2c-compiler for VSL
functions parallel to vmodtool
Nils
--
** * * UPLEX - Nils Goroll Systemoptimierung
Scheffelstraße 32
22301 Hamburg
tel +49 40 28805731
mob +49 170 2723133
fax +49 40 42949753
xmpp://slink@jabber.int.uplex.de/
http://uplex.de/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 488 bytes
Desc: OpenPGP digital signature
URL: <https://www.varnish-cache.org/lists/pipermail/varnish-dev/attachments/20190410/226cdd2e/attachment.bin>
More information about the varnish-dev
mailing list