Hi all, here is proposed struct. struct scatterlist { dma_addr_t dma_address; unsigned long page_link; #ifdef CONFIG_DEBUG_SG unsigned long sg_magic; #endif unsigned int length; unsigned int offset; }; Is it OK now? Michal >>> struct scatterlist { >>> unsigned long page_link; >>> unsigned int offset; >>> unsigned int length; >>> dma_addr_t dma_address; >>> }; >> If unsigned long is 32-bit but dma_addr_t is 64-bit, there may be a gap >> between length and dma_address. >> > > But moving dma_address to the front only has the effect to create implicit > padding at the end of struct scatterlist, so you don't gain anything > either way. > > It's only an internal definition that can be changed at any time without > breaking applications, so I wouldn't worry about it, and better leave > it identical to the other architectures. > > The one thing that should indeed be changed is the addition of > 'unsigned long sg_magic' that is needed for CONFIG_DEBUG_SG. > > Arnd <>< -- To unsubscribe from this list: send the line "unsubscribe linux-arch" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html