年学习《春秋》《司马法》，举孝廉，官至广汉属国都尉。汉顺帝时冯绲为御史中丞，督使徐州、扬州二州，镇压徐凤、马勉、张婴。汉桓帝时为车骑将军，率军十万镇压武陵蛮，历任陇西郡太守、辽东郡太守、京兆尹、司隶校尉、廷尉、太常。延熹五年，湖南蛮夷起兵，荆州刺史、南郡太守逃跑，他被任命为车骑将军，讨平蛮夷。后任将作大匠、河南尹、廷尉。一度得罪单超的弟弟山阳郡太守单迁，因此免官输左校，拜屯骑校尉、廷尉，卒于官。