ccd on NATA problem - ata0: FAILURE - oversized DMA transfer attempt 73728 > 65536

Matthew Dillon dillon at
Wed Jul 18 15:26:23 PDT 2007

    This is turning out to be a small headache, but it has to be fixed
    before we can release so I'm going to slog throug it.

    It turns out that the vnode pager getpages code, the swap pager getpages
    and putpages code, and the pageout code can all make calls to 
    vn_strategy() which ignore the device I/O size limit.  It is also
    possible for filesystems to attempt to do I/O to devices in larger
    chunks then IDE can handle though UFS filesystems are not normally
    created with a 64K block size so it doesn't actually happen at the

    The only proper place to fix this is in spec_strategy().  That is, to
    make specfs break up requests which are too large into smaller pieces.
    I am looking into how best to do this right now.
					Matthew Dillon 
					<dillon at>

More information about the Bugs mailing list