陵郡太守。州兵朱盖叛乱，攻打零陵城，他率领军民拼死抵抗，后来得到中郎将度尚相助，平定叛乱。任将作大匠，为汉桓帝修宣陵，所省巨万以上。迁南阳郡太守，为权贵所谤，征诣廷尉抵罪。遇赦，归家。征拜廷尉。熹平元年（172年），太后窦妙在幽禁中逝世，中常侍曹节、王甫欲用贵人礼殡。而在他和太尉李咸的力争下，最终汉灵帝听从他们的意见，将太后合葬于宣陵。熹平六年（177年）担任司空，不久因为地震免官。拜光禄大夫，复为廷尉、太常。光和元年（178年），迁太尉，数月，以日食免。复拜光禄大夫。光和二年（179年），改任永乐