diff --git a/shortcut-fe/sfe_cm.c b/shortcut-fe/sfe_cm.c
index 5fa23a6..601749d 100644
--- a/shortcut-fe/sfe_cm.c
+++ b/shortcut-fe/sfe_cm.c
@@ -100,7 +100,7 @@
 
 	/*
 	 * We're only interested in IP packets.
-	 */	
+	 */
 	if (likely(htons(ETH_P_IP) == skb->protocol)) {
 		return sfe_ipv4_recv(dev, skb);
 	}
@@ -143,7 +143,7 @@
 	if (unlikely(!neigh)) {
 		rcu_read_unlock();
 		dst_release(dst);
-		return false; 
+		return false;
 	}
 
 	if (unlikely(!(neigh->nud_state & NUD_VALID))) {
@@ -695,7 +695,7 @@
 	result = nf_register_hooks(sfe_cm_ipv4_ops_post_routing, ARRAY_SIZE(sfe_cm_ipv4_ops_post_routing));
 	if (result < 0) {
 		DEBUG_ERROR("can't register nf post routing hook: %d\n", result);
-		goto exit6;
+		goto exit2;
 	}
 
 #ifdef CONFIG_NF_CONNTRACK_EVENTS
@@ -705,7 +705,7 @@
 	result = nf_conntrack_register_notifier(&init_net, &sfe_cm_conntrack_notifier);
 	if (result < 0) {
 		DEBUG_ERROR("can't register nf notifier hook: %d\n", result);
-		goto exit7;
+		goto exit3;
 	}
 #endif
 
@@ -724,11 +724,11 @@
 	return 0;
 
 #ifdef CONFIG_NF_CONNTRACK_EVENTS
-exit7:
+exit3:
 #endif
 	nf_unregister_hooks(sfe_cm_ipv4_ops_post_routing, ARRAY_SIZE(sfe_cm_ipv4_ops_post_routing));
 
-exit6:
+exit2:
 	unregister_inetaddr_notifier(&sc->inet_notifier);
 	unregister_netdevice_notifier(&sc->dev_notifier);
 	kobject_put(sc->sys_sfe_cm);
@@ -766,8 +766,6 @@
 	 */
 	sfe_ipv4_destroy_all_rules_for_dev(NULL);
 
-// XXX - this is where we need to unregister with any lower level offload services.
-
 #ifdef CONFIG_NF_CONNTRACK_EVENTS
 	nf_conntrack_unregister_notifier(&init_net, &sfe_cm_conntrack_notifier);
 
