On 21.01, Thomas Graf wrote: > On 01/21/15 at 11:59am, Patrick McHardy wrote: > > On 21.01, Thomas Graf wrote: > > > On 01/21/15 at 10:40am, Patrick McHardy wrote: > > > > An automatic restart handles this well. Userspace always had to > > > > expect duplicates. > > > > > > Maybe I don't understand the restart yet. How do you restart if the > > > dump was already started and the user has read part of the dump? > > > > You use the mutex to prevent concurrent resizes and dumps, for dumps > > that have left the kernel you simply reset the iterator state after > > a resize operation. > > I see, so we possibly see a lot of duplicates but we will never miss > any entries. > > So in summary we do: > > 2) We allow rhashtable users to opt in to Herbert's consistent walker > relying on the use of an additional bit. > > 2) If user supports NLM_F_DUMP_INTR we block out resizes during > message construction and set NLM_F_DUMP_INTR if a resize/rehash > interrupted us while the user read. > > 3) If (1) and (2) are not available we do (2) but restart the dump > on interruption thus causing duplicates but never missing any > entries. > > I think this offers good flexibility for new users and compatibility > for existing users. Yep, sounds good to me. -- 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