司马虓遣将田徽攻打司马楙，当时晋惠帝还洛阳，司马楙诣阙朝见。晋怀帝即位，改封司马楙竟陵王，拜光禄大夫。司马越为豫州牧，留下世子司马毗及党羽何伦访察朝廷宫省。司马楙建议皇帝讨伐司马越，没有成功。皇帝归罪于司马楙，司马楙逃出京城。司马越死后，他才敢出来，永嘉五年六月丁酉（311年7月13日），汉赵攻克洛阳，俘虏晋怀帝，六月戊戌（311年月14日），刘曜杀太子司马诠、吴孝王司马晏、竟陵王司马楙，百官士大夫和平民死亡三万多人，史称永嘉之乱。