Re: [pnfs]pnfs4_write_done problem

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

 



On Jul. 20, 2010, 13:38 +0300, quanli gui <gqlxj1987@xxxxxxxxx> wrote:
> Debug information in the Client:
> <4>pnfs_writepages: Writing ino:1130497 16@0
> <4>get_lock_alloc_layout Begin
> <4>get_lock_alloc_layout Return caef842c
> <4>pnfs_has_layout:Begin
> <4>pnfs_has_layout:Return lseg ce196060 take_ref 1 ref 2 valid 1
> <4>pnfs_update_layout: Using cached lseg ce196060 for 16@0 iomode 2)
> <4>pnfs_update_layout end (err:0) state 0x0 lseg ce196060
> <4>pnfs_writepages: Calling layout driver (how 0) write with 1 pages
> <4>--> filelayout_write_pagelist ino 1130497 nr_pages 1 pgbase 0 req
> 16@0 sync 0
> <4>filelayout_write_pagelist ino 1130497 16@0 DS:c0a80005:2049
> 192.168.0.5.8.1
> <4>--> pnfs4_proc_write_setup ds_nfs_client c5d90000
> <4>--> nfs4_setup_sequence clp c5d90000 session c5d90600 sr_slotid 128
> <4>--> nfs41_setup_sequence
> <4>--> nfs4_find_slot used_slots=0000 highest_used=-1 max_slots=16
> <4><-- nfs4_find_slot used_slots=0001 highest_used=0 slotid=0 
> <4><-- nfs41_setup_sequence slotid=0 seqid=1
> <4><-- nfs4_setup_sequence status=0
> <4>pnfs_writeback_done: Begin (status -10008)

This seems to be the culprit.
The DS is returning NFS4ERR_DELAY.

This could be the server grace period.
Does this happen only right after the system start?

If you wait for 2 minutes after the server starts and then
run the test do you see this delay?

Benny

> <4>put_lseg: lseg ce196060 ref 2 valid 1
> <4>pnfs4_write_done DS write
> <4><-- pnfs4_write_done status= -11
> //wait long time
> <4>pnfs4_write_done DS write
> <4><-- pnfs4_write_done status= -11
> <4>pnfs4_write_done DS write
> <4><-- pnfs4_write_done status= -11
> <4>pnfs4_write_done DS write
> <4><-- pnfs4_write_done status= -11
> //pnfs4_write_done status wait long time
> <4>--> nfs4_setup_sequence clp c5da3c00 session ce185000 sr_slotid 128
> <4>--> nfs41_setup_sequence
> <4>--> nfs4_find_slot used_slots=0000 highest_used=-1 max_slots=16
> <4><-- nfs4_find_slot used_slots=0001 highest_used=0 slotid=0 
> <4><-- nfs41_setup_sequence slotid=0 seqid=20
> <4><-- nfs4_setup_sequence status=0
> <4>nfs4_free_slot: free_slotid 0 highest_used_slotid -1
> <4>nfs41_sequence_call_done rpc_cred cef74c80
> <4><-- nfs41_sequence_call_done
> <4>pnfs4_write_done DS write
> <4>pnfs_update_last_write: Wrote 16@0 bpos 0, epos: 15
> <4>pnfs_need_layoutcommit: has_layout=1 layoutcommit_ctx=(null) ctx=c5d95400
> <4>pnfs_need_layoutcommit: Set layoutcommit_ctx=c5d95400
> <4>nfs4_free_slot: free_slotid 0 highest_used_slotid -1
> <4>--> pnfs_update_layout_commit inode caef846c layout range: 0@0
> 
> The process should have no problem, because after this first write,
> other write only not wait long time. Thanks for giving me some answers.
> 
> 2010/7/20 Benny Halevy <bhalevy@xxxxxxxxxxx <mailto:bhalevy@xxxxxxxxxxx>>
> 
>     Gui, There could be many reasons for what you see
>     but you must provide more debug information otherwise
>     we'll just keep guessing.
> 
>     Thanks for reporting and helping to track this!
> 
>     Benny
> 
>     On Jul. 20, 2010, 10:05 +0300, quanli gui <gqlxj1987@xxxxxxxxx
>     <mailto:gqlxj1987@xxxxxxxxx>> wrote:
>     > When pnfs firstly write, the pnfs would stay at the function
>     > pnfs4_write_done(), and show that
>     > pnfs4_write_done DS write
>     > <-- pnfs4_write_done status=-11
>     > This two message would shows many times. At the same time, the
>     data not
>     > write completely to the DS. This write we would wait long time to
>     > complete. But after the first write, for other writes we don't have to
>     > wait, as the same as the fact. Why for the first write, we must
>     wait too
>     > long time? And staying at the function pnfs4_write_done() means what?
>     > Please give me some answers.
> 
> 
--
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