On Mon, Sep 7, 2009 at 19:27, Florian Zumbiehl <florz@xxxxxxxx> wrote: > Hi, > >> > Hu? I see 8 call sites, and those should all be covered - maybe it's just >> > because I'm working on a somewhat old tree? >> >> The ninth site was the recursive call within create_path(). I see >> you've added unlock()s there now. I re-counted on a per-file basis >> and everything else looks covered; I probably miscounted before. > > That unlock wasn't necessary before. > >> I'm still concerned/interested about the effect on performance. But > > I guess that somebody should try it out ;-) I'm pretty sure we should not introduce any sort of global serialization locks here. We have to handle thousands events in parallel on some boxes, and most of them don't need any of theses locks. Why can't we just create the subdir and the link or node inside one and the same retry-loop? The link or node will pin the subdir and any competing remove will fail after that. We might in theory loop a while until we successfully create the dir and the node or link, but in real world setups it seems it just does not happen. That way we don't put possibly expensive stuff in the common code path. Kay -- To unsubscribe from this list: send the line "unsubscribe linux-hotplug" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html