Am 31.01.2011 23:53, schrieb Jozsef Kadlecsik: > The module implements the hash:ip type support in four flavours: > for IPv4 or IPv6, both without and with timeout support. > > All the hash types are based on the "array hash" or ahash structure > and functions as a good compromise between minimal memory footprint > and speed. The hashing uses arrays to resolve clashes. The hash table > is resized (doubled) when searching becomes too long. Resizing can be > triggered by userspace add commands only and those are serialized by > the nfnl mutex. During resizing the set is read-locked, so the only > possible concurrent operations are the kernel side readers. Those are > protected by RCU locking. > > Because of the four flavours and the other hash types, the functions > are implemented in general forms in the ip_set_ahash.h header file > and the real functions are generated before compiling by macro expansion. > Thus the dereferencing of low-level functions and void pointer arguments > could be avoided: the low-level functions are inlined, the function > arguments are pointers of type-specific structures. Applied, thanks Jozsef. -- To unsubscribe from this list: send the line "unsubscribe netfilter-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html