xfs
[Top] [All Lists]

Re: CONFIG_KIOBUF_IO broken on IDE

To: "Andi Kleen" <ak@xxxxxxx>
Subject: Re: CONFIG_KIOBUF_IO broken on IDE
From: Steve Lord <lord@xxxxxxx>
Date: Wed, 31 May 2000 15:37:03 -0500
Cc: linux-xfs@xxxxxxxxxxx
In-reply-to: Message from "Andi Kleen" <ak@suse.de> of "Wed, 31 May 2000 21:05:44 +0200." <20000531210544.A31694@gruyere.muc.suse.de>
Sender: owner-linux-xfs@xxxxxxxxxxx
> 
> I updated a XFS kernel with today's tree, created a new file system
> and tried to unpack a glibc-2.1 source rpm onto it. rpm -bp stopped
> with EIO on write after writing a few hundred files.

So far my attempts to duplicate this have failed, maybe the issue is more to
do with what rpm does than kiobuf support - it should fall back to other
methods if it is used on a device which does not support it.

I need to go dig out a source rpm and give that a whirl.

Steve

> 
> The kernel log gave:
> 
> start mounting filesystem: ide1(22,5)       
> Ending clean XFS mount for filesystem: ide1(22,5)
> blocklog end: 12
> linvfs_read_super: sb root ino/128 inode/0xc5a011a0 icnt/2 vp/0xc5a012b0
> attempt to access beyond end of device
> 16:05: rw=0, want=38781096, limit=8191984
> end_pg_buffer_io_async not uptodate 0 page 0xc119d150
> attempt to access beyond end of device
> 16:05: rw=0, want=38781096, limit=8191984
> end_pg_buffer_io_async not uptodate 0 page 0xc119d150
> attempt to access beyond end of device
> 16:05: rw=0, want=38781096, limit=8191984
> end_pg_buffer_io_async not uptodate 0 page 0xc119d150
> 
> fs/page_buf.c is version 1.102
> fs/page_buf_locking.c is version 1.24
> 
> Relevant .config: 
> 
> ONFIG_XFS_FS=m
> CONFIG_PAGE_BUF=y
> CONFIG_PAGE_BUF_LOCKING=y
> CONFIG_AVL=y
> # CONFIG_XFS_VNODE_TRACING is not set
> CONFIG_KIOBUF_IO=y
> CONFIG_AVL=y
> 
> When CONFIG_KIOBUF_IO is disabled it seems to work. Looks like the support
> for non SCSI devices (XFS is on a IDE disk) in page_buf.c is broken.
> 
> Now when trying to remove the directory tree created in the failed unpack
> above after a reboot gives funny effects too: 
> 
> rm -rf glibc-2.1
> rm: cannot remove directory `glibc-2.1/db': File exists
> rm: cannot remove directory `glibc-2.1/db2/progs': File exists
> rm: cannot remove directory `glibc-2.1/db2': File exists
> rm: cannot remove directory `glibc-2.1': File exists
> > find glibc-2.1 -ls
> 8388736    1 drwxr-xr-x   6 ak       users          46 Jun  1 04:44 glibc-2.1
> find: glibc-2.1/argp: No such file or directory
> 12583042    1 drwxr-xr-x   3 ak       users          18 Jun  1 04:43 glibc-2.
1/db
> find: glibc-2.1/db/btree: No such file or directory
> 4194458    1 drwxr-xr-x   5 ak       users          40 Jun  1 04:43 glibc-2.1
/db2
> find: glibc-2.1/db2/common: No such file or directory
> find: glibc-2.1/db2/mp: No such file or directory
> 29360271    1 drwxr-xr-x   3 ak       users          23 Jun  1 04:43 glibc-2.
1/db2/progs
> find: glibc-2.1/db2/progs/db_dump185: No such file or directory
> find: glibc-2.1/elf: No such file or directory
> 
> Looks like the disk structure is corrupted now. It gets now 
> new messages in the system log [after executing the commands above]:
> 
> ttempt to access beyond end of device
> 16:05: rw=0, want=38779324, limit=8191984
> end_pg_buffer_io_async not uptodate 0 page 0xc11e5720
> attempt to access beyond end of device
> 16:05: rw=0, want=38779324, limit=8191984
> end_pg_buffer_io_async not uptodate 0 page 0xc11e5720
> attempt to access beyond end of device
> 16:05: rw=0, want=38779324, limit=8191984
> end_pg_buffer_io_async not uptodate 0 page 0xc11e5720
> attempt to access beyond end of device
> 16:05: rw=0, want=38779324, limit=8191984
> end_pg_buffer_io_async not uptodate 0 page 0xc11e5720
> attempt to access beyond end of device
> 16:05: rw=0, want=38779324, limit=8191984
> end_pg_buffer_io_async not uptodate 0 page 0xc11e5720
> attempt to access beyond end of device
> 16:05: rw=0, want=38779324, limit=8191984
> end_pg_buffer_io_async not uptodate 0 page 0xc11e5720
> 
> The tree cannot be removed anymore.
> 
> When I recompile without CONFIG_KIOBUF_IO the scary messages do not appear
> anymore, but it is still impossible to remove the tree. The libc unpack
> works now too.
> 
> I would run fsck on it, but it seems to be impossible to umount a XFS 
> file system now (umount gives EBUSY even when lsof shows nothing) 
> 
> 
> -Andi



<Prev in Thread] Current Thread [Next in Thread>