if (nn->nn_persistent_error || nn->nn_sc_valid)
                wake_up(&nn->nn_sc_wq);
 
-       if (!was_err && nn->nn_persistent_error) {
+       if (was_valid && !was_err && nn->nn_persistent_error) {
                o2quo_conn_err(o2net_num_from_nn(nn));
                queue_delayed_work(o2net_wq, &nn->nn_still_up,
                                   msecs_to_jiffies(O2NET_QUORUM_DELAY_MS));
        spin_lock(&nn->nn_lock);
        if (!nn->nn_sc_valid) {
                printk(KERN_NOTICE "o2net: No connection established with "
-                      "node %u after %u.%u seconds, giving up.\n",
+                      "node %u after %u.%u seconds, check network and"
+                      " cluster configuration.\n",
                     o2net_num_from_nn(nn),
                     o2net_idle_timeout() / 1000,
                     o2net_idle_timeout() % 1000);