patch-2.2.11 linux/include/net/pkt_cls.h

Next file: linux/include/net/sock.h
Previous file: linux/include/net/ip_masq_mod.h
Back to the patch index
Back to the overall index

diff -u --recursive --new-file v2.2.10/linux/include/net/pkt_cls.h linux/include/net/pkt_cls.h
@@ -79,9 +79,12 @@
 
 extern __inline__ unsigned long cls_set_class(unsigned long *clp, unsigned long cl)
 {
-	cl = xchg(clp, cl);
+	unsigned long old_cl; 
+
+	old_cl = *clp;
+	*clp = cl;
 	synchronize_bh();
-	return cl;
+	return old_cl;
 }
 
 extern int register_tcf_proto_ops(struct tcf_proto_ops *ops);

FUNET's LINUX-ADM group, linux-adm@nic.funet.fi
TCL-scripts by Sam Shen (who was at: slshen@lbl.gov)