* [patch] zoned-2.3.28-K4
@ 1999-11-17 19:46 Ingo Molnar
1999-11-19 3:57 ` Linus Torvalds
0 siblings, 1 reply; 2+ messages in thread
From: Ingo Molnar @ 1999-11-17 19:46 UTC (permalink / raw)
To: MM mailing list, linux-kernel; +Cc: Linus Torvalds
the latest patchset is at:
http://www.redhat.com/~mingo/zoned-2.3.28-K4
-- mingo
Changes in zoned-2.3.28-K4:
- Russell King's task reference counter fix
- Petr Vandrovec's ncpfs-in-highmem patch
Changes in zoned-2.3.28-K2:
- fixed stupid oom bug reported by Jeff and others, introduced in J5
- fixed memory balancing
- show_free_areas() bug fixed.
- (includes Russell King's procfs fix)
Changes in zoned-2.3.28-J5:
- further page_alloc.c cleanups/speedups.
- Alan and Rogier convinced me to optimize the 'top level zone is empty'
case a bit more.
- show_free_areas() works again.
- some more include file fixes
Changes in zoned-2.3.28-H2:
- fixed NFS to work out of high memory - tested with moderate load. All
NFS caches (directory, symlink, data, etc.) are in high memory.
- modules fix ...
- page->virtual is filled out for non-highmem pages too, this is a
nice speedup in certain cases.
- fixed a bug in highmem support which might cause user-datapage
corruption in certain cases.
Changes in zoned-2.3.28-G5:
- this one should actually compile if modules support is turned on ...
Changes in zoned-2.3.28-G4:
- implemented 'zone chains' zonelist_t and gfp_mask indexed zonelists[]
speedups (Linus' idea) to handle fallback zones. This should enable
advanced NUMA-style allocations as well. [fallback to different CPUs is
possible via changing build_zonelists().]
- <=16MB RAM boxes should boot just fine now.
- added page->zone for easier deallocation and generic cleanliness. This
also helps NUMA.
- cleaned up the page-allocator namespace, there are only two 'core'
page-allocation functions left: __alloc_pages() and __free_pages_ok().
- modules should compile again.
- we are now inlining the 'put_page_testzero()' part of __free_page_ok.
This is subtle as page->count for reserved pages is now 'rotating' -
this is fine though and lets us to put the rare PageReserved() branch
into __free_page_ok().
- cleaned up pgtable.h, split into lowlevel and highlevel parts, this
fixes dependencies in mm.h & misc.c.
- serial.c didnt clear freshly allocated bootmem - as a result now all
bootmem allocations are explicitly cleared, it's not performance
critical anyway.
- fixed code,data,initmem reporting.
- fixed boot task's swapper_pg_dir clearing
-- mingo
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://humbolt.geo.uu.nl/Linux-MM/
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: [patch] zoned-2.3.28-K4
1999-11-17 19:46 [patch] zoned-2.3.28-K4 Ingo Molnar
@ 1999-11-19 3:57 ` Linus Torvalds
0 siblings, 0 replies; 2+ messages in thread
From: Linus Torvalds @ 1999-11-19 3:57 UTC (permalink / raw)
To: Ingo Molnar; +Cc: MM mailing list, linux-kernel
[ Ok, back from comdex, looking through my horrible backlog of email.. ]
On Wed, 17 Nov 1999, Ingo Molnar wrote:
>
> the latest patchset is at:
>
> http://www.redhat.com/~mingo/zoned-2.3.28-K4
Ugh. I don't like some of this:
- the "task->refcount" thing is just silly, considering that any
architecture that uses pages for task allocation would have been better
off just using the memory management refcount like we used to.
Why not do this by just doing a per-architecture "get_task_struct()"
and "put_task_struct()", to go with the already existing "alloc" and
"free" functionality?
Thus, on the 99% of all machines where the page allocator already does
the work for us, we'd just have
#define get_task_struct(tsk) \
atomic_inc(&mem_map[MAP_NR(tsk)].count)
#define put_task_struct(tsk) \
free_task_struct(tsk)
which is just obviously right and cleans up the need to have that silly
refcount. Then ARM can just have a refcount in its own definition of
get_task_struct() and friends in task->thread.refcount..
- I don't see the reason for renaming page_address() to page_vaddr()?
- "flush_cache_all()" etc in "pgalloc.h"? Senseless. I can see pgalloc.h
containing the page table allocation routines. But why did you move the
other stuff there? Looks like a cut-and-paste bug to me. Why a new
header file at all?
Would you mind explaining or re-doing?
Linus
--
To unsubscribe, send a message with 'unsubscribe linux-mm' in
the body to majordomo@kvack.org. For more info on Linux MM,
see: http://humbolt.geo.uu.nl/Linux-MM/
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~1999-11-19 3:57 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
1999-11-17 19:46 [patch] zoned-2.3.28-K4 Ingo Molnar
1999-11-19 3:57 ` Linus Torvalds
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox