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]
Date:	Fri, 15 May 2009 10:24:17 -0500
From:	Eric Sandeen <sandeen@...hat.com>
To:	Theodore Tso <tytso@....edu>
CC:	Kevin Shanahan <kmshanah@...b.org.au>,
	Andreas Dilger <adilger@....com>, Alex Tomas <bzzz@....com>,
	linux-ext4@...r.kernel.org
Subject: Re: More ext4 acl/xattr corruption - 4th occurence now

Eric Sandeen wrote:
> Theodore Tso wrote:
>> On Thu, May 14, 2009 at 08:21:05PM -0500, Eric Sandeen wrote:
>>> it should lay out a 4g file in random 1m direct IOs to fragment it and
>>> get a lot of extents, then launch 2 threads, one each doing random reads
>>> and random writes of that same file.
>>>
>>> I can't make this trip it, though ...
>> If all of the blocks are in the page cache, you won't end up calling
>> ext4_get_blocks().  Try adding a shell script which runs in parallel
>> doing a "while /bin/true ; do sleep 1; echo 3 > /proc/sys/vm/drop_cache; done".
>>
>> 							- Ted
> 
> I made sure it was a big enough file, and consumed enough memory on the
> system before the test, that the entire file couldn't fit in memory.
> 
> I can try doing the dropping in the bg ... but it should have been going
> to disk already.
> 
> -Eric

in a desperate attempt to show the window, I tried this in
ext4_ext_put_in_cache():

        cex->ec_block = -1;
        cex->ec_start = -1;
        schedule_timeout_uninterruptible(HZ/2);
        cex->ec_start = start;
        cex->ec_block = block;

and this in ext4_ext_in_cache():

        if (cex->ec_block == -1 || cex->ec_start == -1)
                printk("%s got bad cache\n", __func__);

and it's not firing.

-Eric
--
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