From 2213f95a5239d5d00ef2065a8f1777b6b2084f8c Mon Sep 17 00:00:00 2001 From: alc Date: Sun, 6 Mar 2005 20:09:00 +0000 Subject: The m_ext reference counts are potentially shared and modified asynchronously by different threads. Thus, declare as volatile the reference count that is accessed through m_ext's pointer, ref_cnt. Revert the previous change, revision 1.144, that casts as volatile a single dereference of ref_cnt. Reviewed by: bmilekic, dwhite Problem reported by: kris MFC after: 3 days --- sys/sys/mbuf.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'sys/sys/mbuf.h') diff --git a/sys/sys/mbuf.h b/sys/sys/mbuf.h index 1621fa7..0703916 100644 --- a/sys/sys/mbuf.h +++ b/sys/sys/mbuf.h @@ -122,7 +122,7 @@ struct m_ext { (void *, void *); void *ext_args; /* optional argument pointer */ u_int ext_size; /* size of buffer, for ext_free */ - u_int *ref_cnt; /* pointer to ref count info */ + volatile u_int *ref_cnt; /* pointer to ref count info */ int ext_type; /* type of external storage */ }; -- cgit v1.1