> > > > int foo __attribute__((require_context(bar,1,99999,"rdwr"))) > > Ah. Makes sense as well, though now you can't do something like "require > context count two and decrement by one", can you? Or do you just do that > by combining the various attributes? Right, by combining a context and a require_context attribute. > > Anyhow, I don't really care which patch gets chosen. > Nor do I really care. I just hope that there is some reaction from Josh that indicates how he wishes to continue with that toppic... I am also ready to do further work in this area. > Though, how can you actually track multiple contexts within a single > function if you have just a "struct expression *context_expr" for each > basic block? I guess I should just try your code :) > In the check_context() I build a expression_list of all the context expressions that are of interest for that entrypoint. Then check_bb_context() is called for each of these expressions that describe a locking primitive. -Phil -- : Dipl-Ing Philipp Reisner Tel +43-1-8178292-50 : : LINBIT Information Technologies GmbH Fax +43-1-8178292-82 : : Vivenotgasse 48, 1120 Vienna, Austria http://www.linbit.com : -- To unsubscribe from this list: send the line "unsubscribe linux-sparse" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html