android_kernel_motorola_sm6225/drivers
Alan Hourihane 88d51967f5 [PATCH] AGP performance fixes
AGP allocation/deallocation is suffering major performance issues due to
the nature of global_flush_tlb() being called on every change_page_attr()
call.

For small allocations this isn't really seen, but when you start allocating
50000 pages of AGP space, for say, texture memory, then things can take
seconds to complete.

In some cases the situation is doubled or even quadrupled in the time due
to SMP, or a deallocation, then a new reallocation.  I've had a case of
upto 20 seconds wait time to deallocate and reallocate AGP space.

This patch fixes the problem by making it the caller's responsibility to
call global_flush_tlb(), and so removes it from every instance of mapping a
page into AGP space until the time that all change_page_attr() changes are
done.

Signed-off-by: Dave Jones <davej@redhat.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
2005-11-08 13:43:54 -08:00
..
acorn [ARM] Turn ARM RiscPC PCF8583 i2c RTC driver into a proper module 2005-10-30 19:07:59 +00:00
acpi [PATCH] kfree cleanup: misc remaining drivers 2005-11-07 07:54:05 -08:00
atm [PATCH] gfp flags annotations - part 1 2005-10-08 15:00:57 -07:00
base [PATCH] fix remaining missing includes 2005-11-07 07:53:41 -08:00
block powermac: Use a spinlock in swim3.c (floppy driver) instead of cli 2005-11-08 12:15:36 +11:00
bluetooth [Bluetooth]: Add endian annotations to the core 2005-11-08 09:57:21 -08:00
cdrom [PATCH] drivers/cdrom: kmalloc + memset -> kzalloc conversion 2005-11-07 07:53:59 -08:00
char [PATCH] AGP performance fixes 2005-11-08 13:43:54 -08:00
connector [PATCH] Process Events Connector 2005-11-07 07:53:35 -08:00
cpufreq Merge master.kernel.org:/pub/scm/linux/kernel/git/davej/cpufreq 2005-11-07 13:28:20 -08:00
crypto [PATCH] CONFIG_IA32 2005-10-30 17:37:10 -08:00
dio [PATCH] drivers/dio: kmalloc + memset -> kzalloc conversion 2005-11-07 07:53:59 -08:00
eisa [PATCH] drivers/eisa: kmalloc + memset -> kzalloc conversion 2005-11-07 07:53:59 -08:00
fc4 [PATCH] kfree cleanup: misc remaining drivers 2005-11-07 07:54:05 -08:00
firmware [PATCH] drivers/firmware: kmalloc + memset -> kzalloc conversion 2005-11-07 07:54:00 -08:00
hwmon [PATCH] max1619 fix 2005-11-07 07:54:09 -08:00
i2c [PATCH] kfree cleanup: misc remaining drivers 2005-11-07 07:54:05 -08:00
ide [PATCH] ppc: Fix PowerBook HD led on ARCH=powerpc 2005-11-08 11:19:51 +11:00
ieee1394 [PATCH] ieee1394: fix-up schedule_timeout() usage 2005-11-07 07:53:57 -08:00
infiniband [PATCH] kfree cleanup: misc remaining drivers 2005-11-07 07:54:05 -08:00
input Merge master.kernel.org:/pub/scm/linux/kernel/git/dtor/input 2005-11-07 10:30:33 -08:00
isdn [PATCH] kfree cleanup: drivers/isdn 2005-11-07 07:54:02 -08:00
macintosh macintosh: Always export pmu_[un]register_sleep_notifier if CONFIG_PM set 2005-11-08 12:14:50 +11:00
mca [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
md [PATCH] drivers/md: fix-up schedule_timeout() usage 2005-11-07 07:53:57 -08:00
media Merge branch 'upstream' of git://ftp.linux-mips.org/pub/scm/upstream-linus 2005-11-07 11:15:23 -08:00
message [PATCH] message: fix-up schedule_timeout() usage 2005-11-07 07:53:57 -08:00
mfd [PATCH] fix remaining missing includes 2005-11-07 07:53:41 -08:00
misc Create platform_device.h to contain all the platform device details. 2005-10-29 19:07:23 +01:00
mmc Merge master.kernel.org:/home/rmk/linux-2.6-mmc 2005-11-07 13:32:52 -08:00
mtd Merge master.kernel.org:/pub/scm/linux/kernel/git/tglx/mtd-2.6 2005-11-07 10:24:08 -08:00
net [IRDA] donauboe: locking fix 2005-11-08 09:41:13 -08:00
nubus
oprofile [PATCH] clean up inline static vs static inline 2005-07-27 16:26:20 -07:00
parisc Auto-update from upstream 2005-10-28 12:18:07 -04:00
parport [PATCH] kfree cleanup: misc remaining drivers 2005-11-07 07:54:05 -08:00
pci [PATCH] kfree cleanup: misc remaining drivers 2005-11-07 07:54:05 -08:00
pcmcia [PATCH] kfree cleanup: misc remaining drivers 2005-11-07 07:54:05 -08:00
pnp [PATCH] drivers/pnp/: cleanups 2005-11-07 07:54:09 -08:00
rapidio [PATCH] rapidio: message interface updates 2005-11-07 07:53:47 -08:00
s390 [PATCH] kfree cleanup: drivers/s390 2005-11-07 07:54:03 -08:00
sbus [SPARC]: Missing compat_ioctl hookup in openprom driver. 2005-11-08 10:00:13 -08:00
scsi [PATCH] kfree cleanup: drivers/scsi 2005-11-07 07:54:01 -08:00
serial [SUNSU]: Do not mark sunsu_console_setup() __init 2005-11-07 14:10:21 -08:00
sh [PATCH] superhyway: multiple block support and VCR rework 2005-11-07 07:53:28 -08:00
sn [PATCH] ioc4: PCI bus speed detection 2005-06-21 18:46:32 -07:00
tc Add .gitignore files for Turbochannel 2005-11-07 18:05:37 +00:00
telephony [PATCH] telephony: fix-up schedule_timeout() usage 2005-09-10 10:06:39 -07:00
usb [USB]: Make early handoff a final fixup instead of a header one. 2005-11-04 11:17:24 -08:00
video [SPARC]: Remove bogus register programming in cg6 driver. 2005-11-07 14:09:44 -08:00
w1 [PATCH] kfree cleanup: misc remaining drivers 2005-11-07 07:54:05 -08:00
zorro [PATCH] fix missing includes 2005-10-30 17:37:32 -08:00
Kconfig [NET]: Add netlink connector. 2005-09-11 19:15:07 -07:00
Makefile [PATCH] RapidIO support: core base 2005-11-07 07:53:46 -08:00