1011년(현종 2)에 거란의 침입으로 왕이 나주로 피난갈 때 호종하였다. 1039년(정종 5)에 도병마부사로 있으면서 동북면 정변진(靜邊鎭: 지금의 함경남도 영흥 부근)에 성을 쌓아 여진에 대한 방비를 굳게 하였다.
뒤에 호부상서를 거쳐 1047년(문종 1)에 서북면행영병마사(西北面行營兵馬使)가 되었다. 1050년 동북면병마사로 있을 때 상신하여 진명(鎭溟: 지금의 함경남도 덕원 부근)에 침입한 해적을 무찌른 병마녹사(兵馬錄事) 문양렬(文揚烈)의 전공을 포상하게 하였다.
1053년에 참지정사(參知政事)가 되었고, 겸사도(兼司徒)·상서우복야(尙書右僕射)를 거쳐 1055년에 내사시랑평장사 상주국(內史侍郎平章事上柱國)이 되었다. 1063년에 검교태위 문하시중(檢校太尉門下侍中)이 되어 치사하였다.