Messages in this thread | ![/](/images/icornerl.gif) | | Subject | RE: [PATCH cciss: fix printk format warning | Date | Fri, 27 Oct 2006 08:11:46 -0500 | From | "Cameron, Steve" <> |
| |
> Roland Dreier wrote: > > > > if (*total_size != (__u32) 0) > > > > > > Why is cciss_read_capacity casting *total_size to u32? > > > > It's not -- it's actually casting 0 to __32 -- there's no cast on the > > *total_size side of the comparison. However that just makes the cast > > look even fishier. > > > > - R. > > OK, how about this one then? > > > c->busaddr = (__u32) cmd_dma_handle; > > where cmd_dma_handle is a dma_addr_t (u32 or u64)
The command register to which that value is written is a 32 bit register. Cast it or not, only 32 bits will be used. The DMA mask used to get that memory should ensure it's 32 bit addressable.
> and then later: > > pci_free_consistent(h->pdev, sizeof(CommandList_struct), > c, (dma_addr_t) c->busaddr);
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| ![\](/images/icornerr.gif) |