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:	Tue, 24 Apr 2007 13:10:42 -0700
From:	Andrew Morton <akpm@...ux-foundation.org>
To:	Christoph Lameter <clameter@....com>
Cc:	Hugh Dickins <hugh@...itas.com>, Nick Piggin <npiggin@...e.de>,
	linux-kernel@...r.kernel.org, pj@....com
Subject: Re: Pagecache: find_or_create_page does not call a proper page
 allocator function

On Tue, 24 Apr 2007 12:59:17 -0700 (PDT) Christoph Lameter <clameter@....com> wrote:

> On Tue, 24 Apr 2007, Andrew Morton wrote:
> 
> > No, think of the following scenario:
> > 
> > - file I/O causes a read of an ext2 file's bitmap.  The bitmap is
> >   brought into /dev/hda1's pagecache using !__GFP_HIGHMEM
> > 
> > - references are released against that page and it's now just clean
> >   reclaimable pagecache
> > 
> > - someone (say, an online filesystem checker or something) mmaps
> >   /dev/hda1 and reads that page.
> > 
> > - migration comes alnog and migrates that page into highmem
> > 
> > - file I/O causes a read of that bitmap again.  We find it in
> >   /dev/hda's pagecache.
> 
> Read of the bitmap? How would that work? Page cache lookup right?

yup.

	sb_bread
	->__bread
	  ->__getblk
	    ->__find_get_block
	      ->__find_get_block_slow
	        ->find_get_page

> >   Here's set_bh_page().
> 
> A highmem page can have buffers???

yep.  Take a 4k page which is stored in four discontiguous 1k disk blocks. The
data at page_buffers(page) is the sole way in which we track which parts of
the page belong to which blocks of the disk.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ