Hello Sage Weil, The patch 85792d0dd6e7: "ceph: cope with out of order (unsafe after safe) mds reply" from May 13, 2010, leads to the following static checker warning: fs/ceph/mds_client.c:2414 handle_reply() warn: we tested 'head->safe' before and it was 'false' fs/ceph/mds_client.c 2406 /* dup? */ 2407 if ((req->r_got_unsafe && !head->safe) || 2408 (req->r_got_safe && head->safe)) { ^^^^^^^^^^^^^^^ ^^^^^^^^^^ If ->r_got_safe is set we always fail. If head->safe is set then we fail here. 2409 pr_warn("got a dup %s reply on %llu from mds%d\n", 2410 head->safe ? "safe" : "unsafe", tid, mds); 2411 mutex_unlock(&mdsc->mutex); 2412 goto out; 2413 } 2414 if (req->r_got_safe && !head->safe) { Otherwise we fail here. The only thing different is the error message. 2415 pr_warn("got unsafe after safe on %llu from mds%d\n", 2416 tid, mds); 2417 mutex_unlock(&mdsc->mutex); 2418 goto out; 2419 } regards, dan carpenter -- 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