Re: PROBLEM: nfs I/O errors with sqlite applications

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi guys,

On 2015-10-13, Nick Bowler <nbowler@xxxxxxxxxx> wrote:
> On 2015-10-13, Jeff Layton <jlayton@xxxxxxxxxxxxxxx> wrote:
>> On Mon, 12 Oct 2015 23:01:36 -0400
>> Nick Bowler <nbowler@xxxxxxxxxx> wrote:
>>> On 2015-10-12 15:46 -0400, J. Bruce Fields wrote:
>>> > On Mon, Oct 12, 2015 at 03:25:38PM -0400, bfields wrote:
>>> > > On Mon, Oct 12, 2015 at 12:48:56PM -0400, Nick Bowler wrote:
[...]
>>> > > > the failing syscall seems to be:
>>> > > >
>>> > > >   fcntl(7, F_SETLK, {type=F_RDLCK, whence=SEEK_SET,
>>> > > > start=1073741824, len=1}) = -1 EIO (Input/output error)
>>> > > >
>>> > > > When the issue occurs, the client dmesg log is full of messages of
>>> > > > the form:
>>> > > >
>>> > > >   [3441972.381211] NFS: v4 server returned a bad sequence-id error
>>> > > > on an unconfirmed sequence ffff88007612ae20!
>>> > > >
>>> > > > There are no unusual messages on the server.
>>> [...]
>> Ok, makes sense. The log shows that it occurred in a fcntl call, so
>> it's probably this from lookup_or_create_lock_state:
>>
>>         lo = find_lockowner_str(cl, &lock->lk_new_owner);
>>         if (!lo) {
>>                 strhashval = ownerstr_hashval(&lock->lk_new_owner);
>>                 lo = alloc_init_lock_stateowner(strhashval, cl, ost,
>> lock);
>>                 if (lo == NULL)
>>                         return nfserr_jukebox;
>>         } else {
>>                 /* with an existing lockowner, seqids must be the same */
>>                 status = nfserr_bad_seqid;
>>                 if (!cstate->minorversion &&
>>                     lock->lk_new_lock_seqid != lo->lo_owner.so_seqid)
>>                         goto out;
>>         }
>>
>> ...so we found an existing lockowner, but the seqid in the call is
>> wrong. It seems like the client ought to try to recover in this case,
>> but I don't see where it handles BAD_SEQID errors in the locking code.
[...]
>> In any case, the question now is whether this is a client or server
>> bug. What would tell us that is a network capture of the NFS traffic
>> between client and server at the time that this occurs. Would it be
>> possible to collect one? If so, then let Bruce and I know and we can
>> figure out a way to share it privately.

Hi guys,

Unfortunately I did not manage to perform a network capture last time
due to power loss.  I did not hit this issue again until yesterday (~9
months later), this time after 45 days of uptime.

Kernel versions now are: 4.5.1 on the server, and 4.4.3 on the client.

Since it's now in a failing state again (this situation persists until
a reboot of the client), I captured with strace and tcpdump (on both
client and server) when attempting to start gmpc, the result is quite
small (just 30 packets).  Will that be helpful?

Thanks,
  Nick
--
To unsubscribe from this list: send the line "unsubscribe linux-nfs" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux