fbcon: fix situation where fbcon gets deinitialised and can't reinit.
[firefly-linux-kernel-4.4.55.git] / drivers / video / console / fbcon.c
index 9c092b8d64e6a5d0a205a71002afa5f917adf20b..c58393402da2ef466bd8de0edce08dae0ea53aac 100644 (file)
@@ -823,10 +823,10 @@ static int set_con2fb_map(int unit, int newidx, int user)
        if (oldidx == newidx)
                return 0;
 
-       if (!info || fbcon_has_exited)
+       if (!info)
                return -EINVAL;
 
-       if (!err && !search_for_mapped_con()) {
+       if (!search_for_mapped_con() || !con_is_bound(&fb_con)) {
                info_idx = newidx;
                return fbcon_takeover(0);
        }