|
|
| version 1.20, 2004/03/09 21:39:59 | version 1.21, 2004/03/29 16:22:23 |
|---|---|
| Line 73 ata_dmaalloc(struct ata_device *atadev, | Line 73 ata_dmaalloc(struct ata_device *atadev, |
| return(0); | return(0); |
| KKASSERT(ch->dma_mpipe.max_count != 0); | KKASSERT(ch->dma_mpipe.max_count != 0); |
| atadev->dmastate.dmatab = mpipe_alloc(&ch->dma_mpipe, flags); | if (flags & M_RNOWAIT) |
| KKASSERT(((uintptr_t)atadev->dmastate.dmatab & PAGE_MASK) == 0); | atadev->dmastate.dmatab = mpipe_alloc_nowait(&ch->dma_mpipe); |
| else | |
| atadev->dmastate.dmatab = mpipe_alloc_waitok(&ch->dma_mpipe); | |
| if (atadev->dmastate.dmatab != NULL) | if (atadev->dmastate.dmatab != NULL) { |
| KKASSERT(((uintptr_t)atadev->dmastate.dmatab & PAGE_MASK) == 0); | |
| return(0); | return(0); |
| } | |
| return(ENOBUFS); | return(ENOBUFS); |
| } | } |