__get_free_pages() problem on ia64

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi All,

I found a strange thing on ia64 platform. When I allocate pages using
__get_free_pages() with GFP_DMA, sometimes the physical addresses of
allocated pages fall beyond 4G.

I am working on a device driver where the device does not support
addresses above 4G and hence I have to implement bounce buffers. The
bounce buffer code works fine on other architectures. But since I get 
4G+ addresses on ia64, the code would not work. Any idea why should this
happen? And any workaround if I _NEED_ addresses below 4G. The machine
has 2G of physical memory.

The dma mask for the driver is set to 64 bits using pci_set_dma_mask().

Thanks in advance,
Adhiraj.

-
To unsubscribe from this list: send the line "unsubscribe linux-ia64" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Kernel]     [Sparc Linux]     [DCCP]     [Linux ARM]     [Yosemite News]     [Linux SCSI]     [Linux x86_64]     [Linux for Ham Radio]

  Powered by Linux