drm/radeon: Fix memory allocation failures in the preKMS command stream checking.
authorPauli Nieminen <suokkos@gmail.com>
Mon, 1 Feb 2010 17:11:16 +0000 (19:11 +0200)
committerDave Airlie <airlied@redhat.com>
Mon, 22 Feb 2010 23:46:20 +0000 (09:46 +1000)
commitb4fe945405e477cded91772b4fec854705443dd5
tree4fb175511947cfd9980ca74413692f96561d1512
parent7a9f0dd9c49425e2b0e39ada4757bc7a38c84873
drm/radeon: Fix memory allocation failures in the preKMS command stream checking.

Allocation of single large block of memory may fail under memory
presure. drm_buffer object can hold one large block of data in
multiple independ pages which preents alloation failures.

This patch converts all access to command stream to use drm_buffer
interface. All direct access to array has to go tough drm_buffer
functions to get correct pointer.

Outputting the command stream to ring buffer needs to be awear of
the split nature of drm_buffer. The output operation requires the
new OUT_RING_DRM_BUFFER.

Signed-off-by: Pauli Nieminen <suokkos@gmail.com>
Signed-off-by: Dave Airlie <airlied@redhat.com>
drivers/gpu/drm/radeon/r300_cmdbuf.c
drivers/gpu/drm/radeon/radeon_drv.h
drivers/gpu/drm/radeon/radeon_state.c