获任命为散骑常侍，后迁任尚书。及后又出任安南将军、都督豫州诸军事、持节，镇守许昌，后进任征南将军。永安元年（304年），河间王司马颙和成都王司马颖的联军攻陷长沙王司马乂镇守的首都洛阳，掌握了朝政。又废太子司马覃，表司马颖为皇太弟。及后东海王司马越与晋惠帝一同亲征司马颖但失败，晋惠帝更在战乱中被司马颖军被掳，送往邺城。建武元年（304年），王浚与东瀛公司马腾联手，杀司马颖任命的幽州刺史和演，并起兵讨伐司马颖。王凌得胜后司马颖带晋惠帝逃回洛阳。司马虓与东平王司马楙及镇东将军周馥等人上表要求晋惠帝交关右地区给