[ This branch follows from the "osd op tracking" thread: http://comments.gmane.org/gmane.comp.file-systems.ceph.devel/4940] I pushed this branch yesterday and just updated it with some suggestions from Sage. It implements basic op tracking for the OSD, essentially as described in the previous thread. Converting everything to pass the new OpRequest instead of Message pointers was tedious but actually worked out nicely in terms of existing queues and stuff, so I'm feeling pretty comfortable with it. It is not yet a complete solution (for instance, there's no automatic logging of all operations and how long they spent in each step), but it will catch "stuck" operations and provides a sane infrastructure for every logging desire that I could come up with. Still to do before merging: 1) clean up "mark" calls. I initially tried to step each request through as many "states" as possible, but I think we don't want to mark stuff that doesn't go into the PG as having reached it (eg, the PG create/delete ops). 2) admin socket interface — we want to be able to dump operations currently in flight (optionally, those older than x time) 3) merge master — it probably isn't an automatic merge anymore. 4) More testing. I've run this through thrashing a number of times and it's working out, but I'm nervous about the number of lines changed even if they were mostly mechanical. If you have other comments, let me know! -Greg -- To unsubscribe from this list: send the line "unsubscribe ceph-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html