# single address, backup
        if reset "single address, backup" &&
+          continue_if mptcp_lib_kallsyms_has "subflow_rebuild_header$"; then
+               pm_nl_set_limits $ns1 0 1
+               pm_nl_add_endpoint $ns1 10.0.2.1 flags signal,backup
+               pm_nl_set_limits $ns2 1 1
+               sflags=nobackup speed=slow \
+                       run_tests $ns1 $ns2 10.0.1.1
+               chk_join_nr 1 1 1
+               chk_add_nr 1 1
+               chk_prio_nr 1 0 0 1
+       fi
+
+       # single address, switch to backup
+       if reset "single address, switch to backup" &&
           continue_if mptcp_lib_kallsyms_has "subflow_rebuild_header$"; then
                pm_nl_set_limits $ns1 0 1
                pm_nl_add_endpoint $ns1 10.0.2.1 flags signal
        if reset "single address with port, backup" &&
           continue_if mptcp_lib_kallsyms_has "subflow_rebuild_header$"; then
                pm_nl_set_limits $ns1 0 1
-               pm_nl_add_endpoint $ns1 10.0.2.1 flags signal port 10100
+               pm_nl_add_endpoint $ns1 10.0.2.1 flags signal,backup port 10100
                pm_nl_set_limits $ns2 1 1
-               sflags=backup speed=slow \
+               sflags=nobackup speed=slow \
                        run_tests $ns1 $ns2 10.0.1.1
                chk_join_nr 1 1 1
                chk_add_nr 1 1
-               chk_prio_nr 1 1 0 0
+               chk_prio_nr 1 0 0 1
        fi
 
        if reset "mpc backup" &&
 
        if reset "mpc backup both sides" &&
           continue_if mptcp_lib_kallsyms_doesnt_have "T mptcp_subflow_send_ack$"; then
-               pm_nl_add_endpoint $ns1 10.0.1.1 flags subflow,backup
+               pm_nl_set_limits $ns1 0 2
+               pm_nl_set_limits $ns2 1 2
+               pm_nl_add_endpoint $ns1 10.0.1.1 flags signal,backup
                pm_nl_add_endpoint $ns2 10.0.1.2 flags subflow,backup
+
+               # 10.0.2.2 (non-backup) -> 10.0.1.1 (backup)
+               pm_nl_add_endpoint $ns2 10.0.2.2 flags subflow
+               # 10.0.1.2 (backup) -> 10.0.2.1 (non-backup)
+               pm_nl_add_endpoint $ns1 10.0.2.1 flags signal
+               ip -net "$ns2" route add 10.0.2.1 via 10.0.1.1 dev ns2eth1 # force this path
+
                speed=slow \
                        run_tests $ns1 $ns2 10.0.1.1
-               chk_join_nr 0 0 0
-               chk_prio_nr 1 1 0 0
+               chk_join_nr 2 2 2
+               chk_prio_nr 1 1 1 1
        fi
 
        if reset "mpc switch to backup" &&