Chris Wilson
9da3da660d
drm/i915: Replace the array of pages with a scatterlist
...
Rather than have multiple data structures for describing our page layout
in conjunction with the array of pages, we can migrate all users over to
a scatterlist.
One major advantage, other than unifying the page tracking structures,
this offers is that we replace the vmalloc'ed array (which can be up to
a megabyte in size) with a chain of individual pages which helps reduce
memory pressure.
The disadvantage is that we then do not have a simple array to iterate,
or to access randomly. The common case for this is in the relocation
processing, which will typically fit within a single scatterlist page
and so be almost the same cost as the simple array. For iterating over
the array, the extra function call could be optimised away, but in
reality is an insignificant cost of either binding the pages, or
performing the pwrite/pread.
v2: Fix drm_clflush_sg() to not invoke wbinvd as well! And fix the
trivial compile error from rebasing.
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
2012-09-20 14:22:57 +02:00
..
agp
drm/i915: Replace the array of pages with a scatterlist
2012-09-20 14:22:57 +02:00
hw_random
omap-rng: fix use of SIMPLE_DEV_PM_OPS
2012-08-10 12:28:05 +02:00
ipmi
char/ipmi: remove local ioctl defines replaced by generic ones
2012-07-23 12:48:04 +02:00
mwave
Remove all #inclusions of asm/system.h
2012-03-28 18:30:03 +01:00
pcmcia
Remove all #inclusions of asm/system.h
2012-03-28 18:30:03 +01:00
tpm
tpm_tis / PM: Fix unused function warning for CONFIG_PM_SLEEP
2012-08-10 14:29:50 +02:00
xilinx_hwicap
xilinx_hwicap: reset XHI_MAX_RETRIES
2012-04-19 19:09:18 -07:00
apm-emulation.c
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jikos/apm
2012-04-05 17:34:30 -07:00
applicom.c
applicom.h
bfin-otp.c
bsr.c
powerpc/BSR: cleanup the error path of bsr_init
2012-07-17 10:27:38 -07:00
ds1302.c
Remove all #inclusions of asm/system.h
2012-03-28 18:30:03 +01:00
ds1620.c
dsp56k.c
dtlk.c
efirtc.c
Remove all #inclusions of asm/system.h
2012-03-28 18:30:03 +01:00
generic_nvram.c
drivers: fix up various ->llseek() implementations
2011-07-20 20:47:58 -04:00
genrtc.c
Remove all #inclusions of asm/system.h
2012-03-28 18:30:03 +01:00
hangcheck-timer.c
hpet.c
printk(): add KERN_CONT where needed in hpet and vt code
2012-04-09 10:30:39 -07:00
i8k.c
module_param: make bool parameters really bool (drivers & misc)
2012-01-13 09:32:20 +10:30
Kconfig
ramoops: Move to fs/pstore/ram.c
2012-05-16 08:06:37 -07:00
lp.c
Merge branch 'x86-x32-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2012-03-29 18:12:23 -07:00
Makefile
ramoops: Move to fs/pstore/ram.c
2012-05-16 08:06:37 -07:00
mbcs.c
Remove all #inclusions of asm/system.h
2012-03-28 18:30:03 +01:00
mbcs.h
mem.c
powerpc: Disable /dev/port interface on systems without an ISA bridge
2012-07-11 18:22:32 +10:00
misc.c
switch device_get_devnode() and ->devnode() to umode_t *
2012-01-03 22:54:55 -05:00
mmtimer.c
msm_smd_pkt.c
drivers/char/msm_smd_pkt.c: don't use IS_ERR()
2011-08-25 16:25:33 -07:00
mspec.c
[IA64] Redefine ATOMIC_INIT and ATOMIC64_INIT to drop the casts
2012-07-26 10:55:26 -07:00
nsc_gpio.c
nvram.c
Remove all #inclusions of asm/system.h
2012-03-28 18:30:03 +01:00
nwbutton.c
nwbutton.h
nwflash.c
Remove all #inclusions of asm/system.h
2012-03-28 18:30:03 +01:00
pc8736x_gpio.c
ppdev.c
drivers/char/ppdev.c: put gotten port value
2011-05-26 17:12:37 -07:00
ps3flash.c
drivers/char: Add module.h to those who were using it implicitly
2011-10-31 19:31:40 -04:00
random.c
random: mix in architectural randomness in extract_buf()
2012-07-27 22:37:20 -04:00
raw.c
switch device_get_devnode() and ->devnode() to umode_t *
2012-01-03 22:54:55 -05:00
rtc.c
Remove all #inclusions of asm/system.h
2012-03-28 18:30:03 +01:00
scx200_gpio.c
snsc.c
snsc.h
snsc_event.c
sonypi.c
sonypi: Use struct dev_pm_ops for power management
2012-07-01 13:31:14 +02:00
tb0219.c
tile-srom.c
tile-srom.c driver: minor code cleanup
2012-04-02 12:14:10 -04:00
tlclk.c
char: Fix typo in tlclk.c
2012-02-09 23:09:37 +01:00
toshiba.c
ttyprintk.c
TTY: remove re-assignments to tty_driver members
2012-03-08 11:37:58 -08:00
uv_mmtimer.c
virtio_console.c
virtio: console: tell host of open ports after resume from s3/s4
2012-05-17 12:14:33 +03:00