All of lore.kernel.org
 help / color / mirror / Atom feed
From: okuznik@symas.com (Ondřej Kuzník)
To: cocci@systeme.lip6.fr
Subject: [Cocci] Matching format strings
Date: Tue, 4 Jul 2017 17:01:23 +0100	[thread overview]
Message-ID: <20170704160123.lilble53tmv5t5va@eos.mistotebe.net> (raw)
In-Reply-To: <WM!e764e7a6685d1e3af9c59f905772f1c4a8db9db4c655054ccb07f1b8485096c0979716269a6920eeac860b62d25a700e!@mailstronghold-2.zmailcloud.com>

On Tue, Jul 04, 2017 at 05:25:46PM +0200, Julia Lawall wrote:
> On Tue, 4 Jul 2017, Ond?ej Kuzn?k wrote:
>> Hmm, suddenly the problems with passing expressions to python I stated
>> earlier disappeared, good. Running this takes a log time on some files
>> (over 10 minutes for ./servers/slapd/back-ldap/bind.c and processing of
>> servers/slapd/back-meta/search.c has yet to finish after 30 minutes of
>> processing).
>>
>> I suppose going through all the potential combinations of snprintf/Debug
>> statements is what takes so long, any tips on what usually helps to
>> speed things up?
> 
> Some functions in those files have a lot of ifs.  Ifs are very expensive,
> because both branches have to be considered.

Do they have to be considered every time or can coccinelle sometimes
understand that taking neither branch can affect the match? (as in, can
I adjust the patch to help coccinelle somehow?).

> In the rule below at least, I don't think you need the initial
> { ... and final ... }.  That would only seem to be necessary if you have a
> lot of redeclarations of variables.

That is the case at least in servers/slapd/back-meta/search.c, where
buf is often declared just before it is used and I hoped that would
speed things up slightly.

> Also, it could help to be more specific about the type of buf.

I have tried

{
-char buf[S];
-snprintf at p1( buf, E, format1, args );
-Debug at p2( L, format2, args_before, buf, args_after );
+Debug( L, merged, args_before, args, args_after );
... when != buf
}

To see whether I can remove a lot of the simple ones quickly and then
work with a simpler file, but this one seems to take the same amount of
time once I put the "... when != buf" in.

>> Also, more importantly, the patch below this seems to remove this
>> comment:
>> https://github.com/openldap/openldap/blob/master/servers/slapd/back-asyncmeta/conn.c#L547
>>
>> [...]
>>
>> I would like to preserve the comment, is there something I can do about
>> that?
> 
> I thought that comments are only removed when they come before removed
> code, while here they come after removed code.  I can check on it.

Thanks!


-- 
Ond?ej Kuzn?k
Senior Software Engineer
Symas Corporation                       http://www.symas.com
Packaged, certified, and supported LDAP solutions powered by OpenLDAP

  parent reply	other threads:[~2017-07-04 16:01 UTC|newest]

Thread overview: 39+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-06-29 16:04 [Cocci] Matching format strings Ondřej Kuzník
2017-06-29 16:31 ` Julia Lawall
     [not found]   ` <WM!fa141e32a0b1e5356bb136cefca80be54d02a269aa1d5e1c1d01b9dd1e9da14f2f9fffdc08676c298a48132a86f2037e!@mailstronghold-1.zmailcloud.com>
2017-06-29 17:58     ` Ondřej Kuzník
2017-06-29 20:07       ` Julia Lawall
2017-06-29 23:40       ` Julia Lawall
     [not found]         ` <WM!a6114e049b67df39e40551cd95bf5d65e432ff2f8c0445b0273a6b12349ae6346924a09e4c027fdcc87febe26a5e6a4e!@mailstronghold-2.zmailcloud.com>
     [not found]           ` <20170630135727.lyjp7ayalzxf73jf@eos.mistotebe.net>
2017-07-04 13:22             ` Ondřej Kuzník
2017-07-04 13:32               ` Julia Lawall
     [not found]                 ` <WM!8666006bd8d2547072f2aaa49a217ebee942918ea85a26184b30aa0c245a807e35f125c1045776851fe6d85360d3ed76!@mailstronghold-3.zmailcloud.com>
2017-07-04 13:50                   ` Ondřej Kuzník
2017-07-04 13:53                     ` Julia Lawall
     [not found]                       ` <WM!65159de96edf810da1e56d42962da09a256f7f76b7d8eab05109b214b5dc8c18f88b6a34ac273725a5e7afd1a6bed1d7!@mailstronghold-2.zmailcloud.com>
2017-07-04 15:11                         ` Ondřej Kuzník
2017-07-04 15:25                           ` Julia Lawall
     [not found]                             ` <WM!e764e7a6685d1e3af9c59f905772f1c4a8db9db4c655054ccb07f1b8485096c0979716269a6920eeac860b62d25a700e!@mailstronghold-2.zmailcloud.com>
2017-07-04 16:01                               ` Ondřej Kuzník [this message]
2017-07-04 16:09                                 ` Julia Lawall
     [not found]                                   ` <WM!cc508729d042cf12207adee814670b88c105ae73cdaf601fdeb9c3e26fa32e7df0d4d49f847a216810550421de0d8de6!@mailstronghold-3.zmailcloud.com>
2017-07-04 16:27                                     ` Ondřej Kuzník
2017-07-04 16:40                                       ` Julia Lawall
     [not found]                                         ` <WM!eb7db9be9e260b8b332afe997cbb4412d355372680c68c06376375f785c138afeda43804b4aaff43c0242a17ff2d826f!@mailstronghold-3.zmailcloud.com>
2017-07-04 16:56                                           ` Ondřej Kuzník
2017-07-04 16:59                                             ` Julia Lawall
     [not found]                                               ` <WM!6445a14b41a047e62e6e93d9a0da969d5ea2daf83555655349684d54f3d26f5ca8795d092a053f4ee93c2a22f577a788!@mailstronghold-1.zmailcloud.com>
2017-07-04 17:46                                                 ` Ondřej Kuzník
2017-07-04 17:53                                                   ` Julia Lawall
     [not found]                                                     ` <WM!afea88a820c9c853667fab8a120e0e62e64bc1c9aacab0e42f4149cedda4906e7b85ddc1f742afe16ea78098b42a61f6!@mailstronghold-3.zmailcloud.com>
2017-07-04 19:17                                                       ` Ondřej Kuzník
2017-07-04 21:05                                                         ` Julia Lawall
2017-07-04 21:09                                                           ` Julia Lawall
2017-07-05 12:20                                                         ` Julia Lawall
     [not found]                                                           ` <WM!da212a33f363d5e8666de4eea7afef6ff657b4ba0eea72f6c914a365ab717eec189b136e17bf2c01cc76cdde89f25962!@mailstronghold-2.zmailcloud.com>
2017-07-05 16:25                                                             ` Ondřej Kuzník
2017-07-05 18:33                                                               ` Julia Lawall
2017-07-05 18:39                                                               ` Julia Lawall
2017-07-05 20:38                                                               ` Julia Lawall
     [not found]                                                                 ` <WM!3b412209b28e186e2cf1ceaaa46d40e6d1947012ed574b129f9c461a255f53e26f88920405ecdf4a7d052d70724bc64e!@mailstronghold-2.zmailcloud.com>
2017-07-10 16:12                                                                   ` Ondřej Kuzník
2017-07-10 16:18                                                                     ` Julia Lawall
     [not found]                                                                       ` <WM!18ce1dcc914ca4f9b61f6c3aaf891296df9651e3b4d79666e0682dd2ff392a761c732ee0cf4f6500e93b392f83991daf!@mailstronghold-1.zmailcloud.com>
2017-07-10 16:28                                                                         ` Ondřej Kuzník
2017-07-10 17:26                                                                           ` Julia Lawall
     [not found]                                                                             ` <WM!5b84796296144341d624902eddc2fab8cb72294094f53296fafa12642d6a73a74f5216fe1a48aa1018fdaf2162eca726!@mailstronghold-2.zmailcloud.com>
2017-07-11 13:06                                                                               ` Ondřej Kuzník
2017-07-11 13:10                                                                                 ` Julia Lawall
     [not found]                                                                                   ` <WM!c47e11010083686c9aadfde329eb4f31090053d095a60ac9df8bbc8224796e493af84b1948709a4b0a11aa0da4f34967!@mailstronghold-2.zmailcloud.com>
2017-07-11 14:25                                                                                     ` Ondřej Kuzník
2017-07-11 19:24                                                                                       ` Julia Lawall
     [not found]                                                                                         ` <WM!722e339a1005fef2c134dd9ac0ae6a397244b31d97d213bd70f018388df0843856b835981db31cfffbbceb8ea4d36bdf!@mailstronghold-2.zmailcloud.com>
2017-07-11 22:05                                                                                           ` Ondřej Kuzník
2017-07-11 22:17                                                                                             ` Ondřej Kuzník
2017-07-12  5:48                                                                                               ` Julia Lawall
2017-07-04 16:25                                 ` Julia Lawall

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=20170704160123.lilble53tmv5t5va@eos.mistotebe.net \
    --to=okuznik@symas.com \
    --cc=cocci@systeme.lip6.fr \
    /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
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.