>From: Takayuki Sasaki <sasaki@xxxxxxxxxxxxxxxxxx>
>Hi,
>
>Takayuki Sasaki <sasaki@xxxxxxxxxxxxxxxxxx> wrote:
>
>> migin daemon in sample_hsm started with the patch which I
>> posted, but if I try to read the migrated file then it
>> stalled. It was caused by
>> linux-2.4-xfs/cmd/xfstests/dmapi/src/sample_hsm/wbee which was
>> dispatched by migin dumped core.
>
>In the above situation, I killed the stalled command ( cp ) and
>migin by pressing Ctrl + c to find out what is wrong. Then,
>unmount the XFS file system, the following console messages
>appeared:
>
> XFS unmount got error 16
> linvfs_put_super: vfsp/0xc2acb38c left dangling!
> VFS: Busy inodes after unmount. Self-destruct in 5 seconds. Have a nice day
>...
Do you have a trace from the wbee core dump?
You should also know that memory-mapped I/O is not going to trigger DMAPI
read/write events, yet--I've been experimenting with a fix for that for a
while now. Apparently your cp didn't do memory-mapped I/O in this case, else
it wouldn't have blocked. Something to keep in mind.
Is your stagedir on the same filesystem that migin is monitoring? They should
be different filesystems.
Here's some other handy debugging info...
Just prior to the unmount, cat all the files under /proc/fs/xfs/dmapi_d and
include their contents in your bug report. There is a file called "summary"
which will tell you if there are any active sessions. There is a directory
called "sessions" which will have file names that look like pointer
addrs--each file name corresponds to an active session and will dump many of
the values from the dm_session_t for that session. There is a directory
called "fsreg" which will have similar file names, but these correspond to
each mounted dmapi filesystem and will dump the dm_fsreg_t for that
filesystem.
For example, here's a dm_fsreg_t:
# cat /proc/fs/xfs/dmapi_d/fsreg/0xc7fca1a0
fsrp=0xc7fca1a0
fr_next=0x00000000
fr_vfsp=0xc74e6320
fr_tevp=0x00000000
fr_fsid=?
fr_msg=0xc246c1e0
fr_msgsize=98
fr_state=mounted
fr_dispq=?
fr_dispcnt=0
fr_evt_dispq.eq_head=0x00000000
fr_evt_dispq.eq_tail=0x00000000
fr_evt_dispq.eq_count=0
fr_queue=?
fr_lock=?
fr_hdlcnt=0
fr_vfscnt=0
fr_unmount=0
fr_rattr=
fr_sessp[14]=0xc631fa00
fr_sessp[20]=0xc631fa00
Thanks,
Dean
|