晋武帝即位后,为防止争夺帝位的宫廷政变发生,便极力培植皇族在地方上的势力,继承了两汉的封国制,大封同姓王,希望靠着自家的力量来维护朝廷对全国的统治。而晋武帝为维护司马氏江山的这一系列手段,终因缺乏对诸王限制的必要法度以及后来统治集团内部矛盾的发展,宗室诸侯王不但没有能够捍卫帝国的利益,反而将皇权势力分割,以致出现了八王之乱。
西晋经贾后专政和八王之乱的浩劫,社会经济受到严重破坏,人民大量伤亡,西晋的统治机能名存实亡,处于瘫痪状态。八王之间的混战,使得各地水利失修,吏治混乱。而战乱又往往伴随着天灾,这一时期,灾荒连年,中原与黄河地区各地人口便开始大量流亡,向南方迁移。《晋书·李特载记》中记载,这段时期关中人口有十余万流入汉川,河东、平阳、弘农、上党诸郡人民流入颍川、汝南、南阳、河南的有数万家。《晋书·杜弢传》中也记载了类似情况,益州流民流入荆、湘的也有数万家。
时人刘琨曾上书陈述:“自涉州疆,目睹困乏,流民四散,十不存二,携老扶幼,不绝于路。”以上这些所述就是当时的一大严重社会问题——“流民南迁”。
流民的大量南迁,在给南方带去北方的生产经验与先进文化的同时,也面临着一个十分现实的“吃住”问题。当时的南方经济相对北方落后,在北人南迁之初,没有足够的能力负担几十万人口的“吃住”,所以当地居民排挤流民,流民的生活处境十分尴尬。这样南渡的北人与当地居民的摩擦无法避免了。当时的巴蜀流民在荆、湘为当地百姓排挤,没有了活路,最终在李特的率领下起而暴动。
当时西北地区发生了一场大饥荒,十几万老百姓吃不上饭,饿得连地上的草都拔下来吃光了。西晋王朝的行政机构已经瘫痪,当地官员面对灾患自顾不暇,对百姓则不管不问。十几万人实在没法子活了,只好离开家乡逃到四川一带讨生活。