Hello. After having updated to HEAD yesterday, I started seeing DMA errors accessing filesystems on ccd devices: ata0: FAILURE - oversized DMA transfer attempt 73728 > 65536
So I added db_print_backtrace() after this kprintf() (does NATA support dumping now?), and I got the following from `config -d /var/obj/foo LINT': ata_dmaload ata_begin_transaction ata_queue_request ad_strategy diskstrategy dev_dstrategy_chain spec_strategy spec_vnoperate ufs_vnoperatespec vop_strategy vn_strategy ccdstart ccdstrategy dev_dstrategy diskstrategy dev_dstrategy_chain spec_strategy spec_vnoperate ufs_vnoperatespec vop_strategy vn_strategy ufs_strategy vop_strategy vn_strategy cluster_wbuild cluster_write ffs_write vop_write vn_write dofilewrite kern_pwritev sys_write syscall2 Xint0x80_syscall ad0: setting up DMA failed ccd0: error 5 on component 0 offset -1 (ccd offset 4892262400) followed by another backtrace: ata_dmaload ata_dmaload ata_begin_transaction ata_start ata_completed taskqueue_run taskqueue_swi_run ithread_handler lwkt_exit() ad1: setting up DMA failed ccd0: error 5 on component 1 offset -1 (ccd offset 4892794880) I failed to see which function is responsible for splitting a read/write request into chunks smaller than the maximum I/O size. I'll attach my ccd.conf to this message. Regards.
ccd0 1152 none /dev/ad0s1e /dev/ad1s1e ccd1 16 CCDF_MIRROR,CCDF_UNIFORM /dev/ad0s1g /dev/ad1s1g
