History log of /openbmc/linux/mm/memory.c (Results 4326 – 4350 of 4370)
Revision (<<< Hide revision tags) (Show revision tags >>>) Date Author Comments
# 2868bd28 27-Jul-2005 Roland Dreier <roland@eddore.topspincom.com>

Merge /scratch/Ksrc/linux-git/


# 1aaf18ff 27-Jul-2005 Andrew Morton <akpm@osdl.org>

[PATCH] check_user_page_readable() deadlock fix

Fix bug identifued by Richard Purdie <rpurdie@rpsys.net>.

oprofile calls check_user_page_readable() from interrupt context, so we
deadlock over vario

[PATCH] check_user_page_readable() deadlock fix

Fix bug identifued by Richard Purdie <rpurdie@rpsys.net>.

oprofile calls check_user_page_readable() from interrupt context, so we
deadlock over various VFS locks.

But check_user_page_readable() doesn't imply either a read or a write of the
page's contents. Change __follow_page() so that check_user_page_readable()
can tell __follow_page() that we're not accessing the page's contents, and use
that info to avoid the troublesome lock-takings.

Also, make follow_page() inline for the single callsite in memory.c to save a
bit of stack space.

Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

show more ...


# f7f24758 13-Jul-2005 Dave Kleikamp <shaggy@austin.ibm.com>

Merge with /home/shaggy/git/linus-clean/

Signed-off-by: Dave Kleikamp <shaggy@austin.ibm.com>


Revision tags: v2.6.13-rc3, v2.6.13-rc2
# d2f64095 02-Jul-2005 David Woodhouse <dwmw2@shinybook.infradead.org>

Merge with master.kernel.org:/pub/scm/linux/kernel/git/torvalds/linux-2.6.git


# ab997aae 30-Jun-2005 Steve French <sfrench@hera.kernel.org>

Merge with rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git


Revision tags: v2.6.13-rc1
# f45727d5 26-Jun-2005 Jeff Garzik <jgarzik@pretzel.yyz.us>

Merge /spare/repo/netdev-2.6/ branch 'ieee80211'


# 5696c194 26-Jun-2005 Jeff Garzik <jgarzik@pretzel.yyz.us>

Merge /spare/repo/linux-2.6/


# aef7b83c 26-Jun-2005 Jeff Garzik <jgarzik@pretzel.yyz.us>

Merge /spare/repo/linux-2.6/


# 7ca6448d 26-Jun-2005 Thomas Gleixner <tglx@tglx.tec.linutronix.de>

Merge with rsync://fileserver/linux
Update to Linus latest


# 2a322e4c 26-Jun-2005 Anton Altaparmakov <aia21@cantab.net>

Automatic merge with /usr/src/ntfs-2.6.git.


# 8b0ee07e 26-Jun-2005 Jeff Garzik <jgarzik@pretzel.yyz.us>

Merge upstream (approx. 2.6.12-git8) into 'janitor' branch of netdev-2.6.


# 2d15cab8 25-Jun-2005 Hugh Dickins <hugh@veritas.com>

[PATCH] mm: fix remap_pte_range BUG

Out-of-tree user of remap_pfn_range hit kernel BUG at mm/memory.c:1112! It
passes an unrounded size to remap_pfn_range, which was okay before 2.6.12,
but misses

[PATCH] mm: fix remap_pte_range BUG

Out-of-tree user of remap_pfn_range hit kernel BUG at mm/memory.c:1112! It
passes an unrounded size to remap_pfn_range, which was okay before 2.6.12,
but misses remap_pte_range's new end condition. An audit of all the other
ptwalks confirms that this is the only one so exposed.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

show more ...


# 38b22b6e 25-Jun-2005 Anton Altaparmakov <aia21@cantab.net>

Automerge with /usr/src/ntfs-2.6.git.


# 3d41088f 24-Jun-2005 Martin Waitz <tali@admingilde.org>

[PATCH] DocBook: update comments

This patch updates some comments to match code changes.

Signed-off-by: Martin Waitz <tali@admingilde.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by

[PATCH] DocBook: update comments

This patch updates some comments to match code changes.

Signed-off-by: Martin Waitz <tali@admingilde.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

show more ...


# fa5cfae3 23-Jun-2005 Steve French <sfrench@hera.kernel.org>

Merge with rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git


# d41dee36 23-Jun-2005 Andy Whitcroft <apw@shadowen.org>

[PATCH] sparsemem memory model

Sparsemem abstracts the use of discontiguous mem_maps[]. This kind of
mem_map[] is needed by discontiguous memory machines (like in the old
CONFIG_DISCONTIGMEM case)

[PATCH] sparsemem memory model

Sparsemem abstracts the use of discontiguous mem_maps[]. This kind of
mem_map[] is needed by discontiguous memory machines (like in the old
CONFIG_DISCONTIGMEM case) as well as memory hotplug systems. Sparsemem
replaces DISCONTIGMEM when enabled, and it is hoped that it can eventually
become a complete replacement.

A significant advantage over DISCONTIGMEM is that it's completely separated
from CONFIG_NUMA. When producing this patch, it became apparent in that NUMA
and DISCONTIG are often confused.

Another advantage is that sparse doesn't require each NUMA node's ranges to be
contiguous. It can handle overlapping ranges between nodes with no problems,
where DISCONTIGMEM currently throws away that memory.

Sparsemem uses an array to provide different pfn_to_page() translations for
each SECTION_SIZE area of physical memory. This is what allows the mem_map[]
to be chopped up.

In order to do quick pfn_to_page() operations, the section number of the page
is encoded in page->flags. Part of the sparsemem infrastructure enables
sharing of these bits more dynamically (at compile-time) between the
page_zone() and sparsemem operations. However, on 32-bit architectures, the
number of bits is quite limited, and may require growing the size of the
page->flags type in certain conditions. Several things might force this to
occur: a decrease in the SECTION_SIZE (if you want to hotplug smaller areas of
memory), an increase in the physical address space, or an increase in the
number of used page->flags.

One thing to note is that, once sparsemem is present, the NUMA node
information no longer needs to be stored in the page->flags. It might provide
speed increases on certain platforms and will be stored there if there is
room. But, if out of room, an alternate (theoretically slower) mechanism is
used.

This patch introduces CONFIG_FLATMEM. It is used in almost all cases where
there used to be an #ifndef DISCONTIG, because SPARSEMEM and DISCONTIGMEM
often have to compile out the same areas of code.

Signed-off-by: Andy Whitcroft <apw@shadowen.org>
Signed-off-by: Dave Hansen <haveblue@us.ibm.com>
Signed-off-by: Martin Bligh <mbligh@aracnet.com>
Signed-off-by: Adrian Bunk <bunk@stusta.de>
Signed-off-by: Yasunori Goto <y-goto@jp.fujitsu.com>
Signed-off-by: Bob Picco <bob.picco@hp.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

show more ...


# 3357d4c7 23-Jun-2005 Anton Altaparmakov <aia21@cantab.net>

Automatic merge with /usr/src/ntfs-2.6.git.


# a5324343 22-Jun-2005 Jeff Garzik <jgarzik@pretzel.yyz.us>

Merge /spare/repo/linux-2.6/


# ea0daab4 22-Jun-2005 Steve French <sfrench@us.ibm.com>

Merge with rsync://rsync.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6.git


# 1bdf7a78 22-Jun-2005 Jeremy Allison <jra@samba.org>

Merge with /pub/scm/linux/kernel/git/torvalds/linux-2.6.git


# 80bd6d7f 22-Jun-2005 Jeff Garzik <jgarzik@pretzel.yyz.us>

Merge /spare/repo/linux-2.6/


# ff40c6d3 22-Jun-2005 Jeff Garzik <jgarzik@pretzel.yyz.us>

Merge upstream kernel changes into 'C/H/S support' branch of libata.


# da04b128 22-Jun-2005 Jaroslav Kysela <perex@petra>

Merge with rsync://rsync.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git


# c475a8ab 21-Jun-2005 Hugh Dickins <hugh@veritas.com>

[PATCH] can_share_swap_page: use page_mapcount

Remember that ironic get_user_pages race? when the raised page_count on a
page swapped out led do_wp_page to decide that it had to copy on write, so
s

[PATCH] can_share_swap_page: use page_mapcount

Remember that ironic get_user_pages race? when the raised page_count on a
page swapped out led do_wp_page to decide that it had to copy on write, so
substituted a different page into userspace. 2.6.7 onwards have Andrea's
solution, where try_to_unmap_one backs out if it finds page_count raised.

Which works, but is unsatisfying (rmap.c has no other page_count heuristics),
and was found a few months ago to hang an intensive page migration test. A
year ago I was hesitant to engage page_mapcount, now it seems the right fix.

So remove the page_count hack from try_to_unmap_one; and use activate_page in
unuse_mm when dropping lock, to replace its secondary effect of helping
swapoff to make progress in that case.

Simplify can_share_swap_page (now called only on anonymous pages) to check
page_mapcount + page_swapcount == 1: still needs the page lock to stabilize
their (pessimistic) sum, but does not need swapper_space.tree_lock for that.

In do_swap_page, move swap_free and unlock_page below page_add_anon_rmap, to
keep sum on the high side, and correct when can_share_swap_page called.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

show more ...


# d296e9cd 21-Jun-2005 Hugh Dickins <hugh@veritas.com>

[PATCH] do_wp_page: cannot share file page

A small optimization to do_wp_page's check for whether to avoid copy by
reusing the page already mapped. It can never share a cached file page,
nor can it

[PATCH] do_wp_page: cannot share file page

A small optimization to do_wp_page's check for whether to avoid copy by
reusing the page already mapped. It can never share a cached file page,
nor can it share a reserved page (often the empty zero page), so it's a
waste of time to lock and unlock in those cases. Which nowadays can both
be neatly excluded by a preliminary PageAnon test.

Christoph has reported that a preliminary page_count test proved valuable
for scalability here, but PageAnon covers more common cases all at once.

Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>

show more ...


1...<<171172173174175