RESOLVED FIXED 90228
Do not do any logging initialization when logging is disabled
https://bugs.webkit.org/show_bug.cgi?id=90228
Summary Do not do any logging initialization when logging is disabled
Benjamin Poulain
Reported 2012-06-28 17:00:40 PDT
That takes time on start up. <rdar://problem/11746350>
Attachments
Patch (76.34 KB, patch)
2012-06-28 17:11 PDT, Benjamin Poulain
no flags
Patch (78.21 KB, patch)
2012-06-28 18:09 PDT, Benjamin Poulain
no flags
Patch (79.18 KB, patch)
2012-06-28 18:25 PDT, Benjamin Poulain
no flags
Patch (27.95 KB, patch)
2012-06-29 15:25 PDT, Benjamin Poulain
no flags
Patch (26.22 KB, patch)
2012-06-29 20:25 PDT, Benjamin Poulain
simon.fraser: review+
Benjamin Poulain
Comment 1 2012-06-28 17:11:15 PDT
Early Warning System Bot
Comment 2 2012-06-28 17:39:07 PDT
Gustavo Noronha (kov)
Comment 3 2012-06-28 17:59:02 PDT
Early Warning System Bot
Comment 4 2012-06-28 18:08:52 PDT
Benjamin Poulain
Comment 5 2012-06-28 18:09:23 PDT
Gustavo Noronha (kov)
Comment 6 2012-06-28 18:20:22 PDT
Benjamin Poulain
Comment 7 2012-06-28 18:25:40 PDT
Benjamin Poulain
Comment 8 2012-06-28 18:26:05 PDT
Looks like GTK has a strange use of WebCore logging :(
Simon Fraser (smfr)
Comment 9 2012-06-29 13:00:01 PDT
Comment on attachment 150059 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=150059&action=review > Source/WebCore/ChangeLog:8 > + Initializating of the logging channels was taking time on startup. When loggin is disabled "loggin" > Source/WebCore/ChangeLog:9 > + (and the LOG macro do nothing), we should aslo disable logging channels and initialization. do nothing -> does nothing. aslo. > Source/WebCore/ChangeLog:12 > + The biggest part of the patch is the change from !LOG_DISABLED to using ENABLE(LOGGING). > + This is done for consistency with the other ENABLE features used in WebKit. But I don't think logging is like other ENABLE features. ENABLE is used for web- or user- facing features, and doesn't normally change between release and debug builds. LOGGING is more like ASSERTS, in that it's disabled in release.
Joseph Pecoraro
Comment 10 2012-06-29 13:02:32 PDT
Comment on attachment 150059 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=150059&action=review > Source/WebCore/ChangeLog:9 > + Initializating of the logging channels was taking time on startup. When loggin is disabled > + (and the LOG macro do nothing), we should aslo disable logging channels and initialization. Nit (typo): "Initializating" => "Initializing" Nit (typo): "loggin" => "logging" Nit (typo): "macro do nothing" => "macro does nothing" Nit (typo): "aslo" => "also"
Benjamin Poulain
Comment 11 2012-06-29 15:25:52 PDT
Benjamin Poulain
Comment 12 2012-06-29 16:51:22 PDT
Comment on attachment 150263 [details] Patch I'll look into using Assertions.h directly for WebCore.exp.in.
Joseph Pecoraro
Comment 13 2012-06-29 18:30:31 PDT
Comment on attachment 150263 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=150263&action=review > Source/WebCore/WebCore.exp.in:631 > +#if !LOG_DISABLED > __ZN7WebCore36initializeLoggingChannelsIfNecessaryEv > +#endif // !LOG_DISABLED The convention seems to be adding a new block near the bottom of the file. #if !defined(LOG_DISABLED) .... #endif I assume other build systems (like Windows?) might need a similar export fix. This patch is much easier to follow =)
Benjamin Poulain
Comment 14 2012-06-29 20:25:19 PDT
Gyuyoung Kim
Comment 15 2012-07-01 23:04:43 PDT
Comment on attachment 150297 [details] Patch Looks find on EFL port case.
Benjamin Poulain
Comment 16 2012-07-02 14:48:19 PDT
Note You need to log in before you can comment on or make changes to this bug.