lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20140625144435.GB25238@quack.suse.cz>
Date:	Wed, 25 Jun 2014 16:44:35 +0200
From:	Jan Kara <jack@...e.cz>
To:	Matthew Wilcox <willy@...ux.intel.com>
Cc:	Jan Kara <jack@...e.cz>, linux-ext4@...r.kernel.org,
	linux-fsdevel@...r.kernel.org
Subject: Re: Livelock when running xfstests generic/127 on ext4 with 3.15

On Wed 25-06-14 10:17:56, Matthew Wilcox wrote:
> On Wed, Jun 25, 2014 at 03:12:24PM +0200, Jan Kara wrote:
> > > $ sudo cat /proc/4795/stack 
> > > [<ffffffff8120bee9>] writeback_inodes_sb_nr+0xa9/0xe0
> > > [<ffffffff8120bfae>] try_to_writeback_inodes_sb_nr+0x5e/0x80
> > > [<ffffffff8120bff5>] try_to_writeback_inodes_sb+0x25/0x30
> > > [<ffffffffa01bae2a>] ext4_nonda_switch+0x8a/0x90 [ext4]
> > > [<ffffffffa01c49a5>] ext4_page_mkwrite+0x265/0x440 [ext4]
> >   Hum, apparently you are running out of space on the test partition. And
> > that is known to make ext4 extraordinarily slow...
> 
> Okay ... but why is it so much worse in 3.15 than 3.14?
  Is it really a difference between kernels? Didn't just the partition get
more full? If it is really just a kernel difference I don't have a good
explanation... Bisecting that down would be useful...

> And does ext4 think of "running out of space" as a percentage
> free, or an absolute number of blocks remaining?  From the code in
> ext4_nonda_switch(), it seems to be the former, although maybe excessive
> fragmentation has caused ext4 to think it's running out of space?
  We start forcing writeback (and waiting for it) when the amount of free
space is less than twice the amount of delayed-allocated blocks which are
not yet written out.

								Honza

> > > My setup is a 1GB ram disk:
> > > 
> > > modprobe brd rd_size=1048576 rd_nr=2
> > > 
> > > local.config:
> > > 
> > > TEST_DEV=/dev/ram0
> > > TEST_DIR=/mnt/ram0
> > > SCRATCH_DEV=/dev/ram1
> > > SCRATCH_MNT=/mnt/ram1
> > > 
> > > 
> > > Hardware is an Intel(R) Core(TM) i7-4770 CPU @ 3.40GHz with 4GB RAM,
> > > in case it matters.  But I think what matters is that I'm running it on
> > > a "tiny" 1GB filesystem, since this code is only invoked whenever the
> > > number of dirty clusters is large relative to the number of free clusters.
> > > 
> > > df shows:
> > > /dev/ram1         999320     1284    929224   1% /mnt/ram1
> > > /dev/ram0         999320   646088    284420  70% /mnt/ram0
> > > 
> > > So it's not *unreasonably* full.
> > > --
> > > To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
> > > the body of a message to majordomo@...r.kernel.org
> > > More majordomo info at  http://vger.kernel.org/majordomo-info.html
> > -- 
> > Jan Kara <jack@...e.cz>
> > SUSE Labs, CR
-- 
Jan Kara <jack@...e.cz>
SUSE Labs, CR
--
To unsubscribe from this list: send the line "unsubscribe linux-ext4" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ