Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 13 Oct 2010 18:16:07 +0200
From:      Willem Jan Withagen <wjw@digiware.nl>
To:        Borja Marcos <borjam@sarenet.es>
Cc:        fs@freebsd.org
Subject:   Re: ZFS freeze/livelock
Message-ID:  <4CB5DB47.9010904@digiware.nl>
In-Reply-To: <98AF4752-7881-4C50-8A59-243F1AD55318@sarenet.es>
References:  <4CB1DD0F.6000209@digiware.nl> <98AF4752-7881-4C50-8A59-243F1AD55318@sarenet.es>

next in thread | previous in thread | raw e-mail | index | archive | help
On 2010-10-13 13:08, Borja Marcos wrote:
>
> On Oct 10, 2010, at 5:34 PM, Willem Jan Withagen wrote:
>
>> Hi,
>>
>> Just had my FreeBSD freeze on me with what I would think is sort of
>> an livelock....
>>
>> While I was receiving zfs snapshots on my data pool.

> There is an (as far as I know) unsolved deadlock situation when
> receiving a snapshot while you read the target dataset.
>
> I found it  in a redundant server configuration. I replicate some
> datasets periodically doing an incremental send-receive. It works
> perfectly but it can deadlock if I have a process reading the
> destination dataset on the secondary server. And those things can
> happen if you have, for example, one of the nightly periodic tasks
> running.
>
> Were you doing a siimilar thing? Or are you sure there was no reading
> activity on the destination dataset?

Well I think what I did more or less fits your desciption.

But thusfar it did not happen.
And I'm (very slowly) redoing some of these steps, with all debugging 
settings in the kernel.

# Debugging for use in -current
options         KDB                     # Enable kernel debugger support.
options         DDB                     # Support DDB.
options         GDB                     # Support remote GDB.
options         INVARIANTS              # Enable calls of extra sanity 
checking
options         INVARIANT_SUPPORT       # Extra sanity checks of 
internal structures, required by INVARIANTS
options         WITNESS                 # Enable checks to detect 
deadlocks and cycles
options         WITNESS_SKIPSPIN        # Don't run witness on spinlocks 
for speed

Things are real sloooooooooow now.

--WjW



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4CB5DB47.9010904>