Re: [PATCH -perf/perf/core 4/6] perf: Add strfilter for general purpose string filter

Masami Hiramatsu
2011-01-18T13:45:21Z

(2011/01/18 1:39), Masami Hiramatsu wrote:
> (2011/01/17 21:55), Arnaldo Carvalho de Melo wrote:
>> Em Mon, Jan 17, 2011 at 10:40:29AM -0200, Arnaldo Carvalho de Melo escreveu:
>>> Em Thu, Jan 13, 2011 at 09:46:17PM +0900, Masami Hiramatsu escreveu:
>>>> Add strfilter for general purpose string filter.
>>>> Every filter rules are descrived by glob matching pattern
>>>> and '!' prefix which means Logical NOT.
>>>> A strfilter consists of those filter rules connected
>>>> with '&' and '|'. A set of rules can be folded by using
>>>> '(' and ')'. It also accepts spaces around rules and those
>>>
>>> You're not checking strfilter__alloc results, I'm fixing this for you
>>> this time :-)
>>
>> Not really, please check strdup() result and strfilter__delete() needs
>> to traverse all the nodes, not just the ones pointed at the root, right?
>
> Would you mean that it should release all the node including
> ascendants? Hmm, I think we might just need to update its parent
> so that it doesn't get affected, because the strfilter__delete()
> doesn't know which user variable points the parent of the given node.
> E.g. If we remove "b*" from "(a* | b*)", just update it as "(a* | !*)"

Hmm, I changed my mind. I think this is more than enough.
It should be prohibited to pass the strfilter which is not
the tree root. So, I think current strfilter__delete() is enough, isn't it?

Thank you,

--
Masami HIRAMATSU
2nd Dept. Linux Technology Center
Hitachi, Ltd., Systems Development Laboratory
E-mail: masami.hiramatsu.pt@hitachi.com