The wrappers in include/linux/pci-dma-compat.h should go away.
The patch has been generated with the coccinelle script below and has been
hand modified to replace GFP_ with a correct flag.
It has been compile tested.
When memory is allocated in 'bt878_mem_alloc()' (bt878.c), GFP_KERNEL can
be used because it is only called from the probe function (i.e.
'bt878_probe()') and no lock is taken.
When memory is allocated in 'btcx_riscmem_alloc()' (btcx-risc.c),
GFP_KERNEL can be used because all the callers either already use
GFP_KERNEL or are called from a probe function or are called from a
.buf_prepare function.
The 4 callers are all in 'bttv-risc.c'.
- bttv_risc_packed() and bttv_risc_planar(): only called from
'videobuf_queue_ops''s '.buf_prepare' functions.
The call chains are:
.buf_prepare (in 'bttv-driver.c')
--> buffer_prepare (in 'bttv-driver.c')
--> bttv_prepare_buffer
--> bttv_buffer_risc
--> bttv_risc_packed (x8 times)
--> bttv_risc_planar (x6 times)
.buf_prepare (in 'bttv-vbi.c')
--> vbi_buffer_prepare (in 'bttv-vbi.c')
--> bttv_risc_packed (x2 times)
- bttv_risc_overlay(): already uses GFP_KERNEL
- bttv_risc_init_main(): only called from the 'bttv_probe()' probe
function and no spin_lock is taken in the between