diff options
author | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2009-09-11 15:36:09 +1000 |
---|---|---|
committer | Benjamin Herrenschmidt <benh@kernel.crashing.org> | 2009-09-11 16:01:15 +1000 |
commit | 1d6ed32226326a6e6cd67cd9ee4294bcbb0c9a15 (patch) | |
tree | 0baedebba58eb55661ac7a39027e48576652424a /arch/powerpc | |
parent | bc00351edd5c1b84d48c3fdca740fedfce4ae6ce (diff) | |
download | kernel_samsung_smdk4412-1d6ed32226326a6e6cd67cd9ee4294bcbb0c9a15.zip kernel_samsung_smdk4412-1d6ed32226326a6e6cd67cd9ee4294bcbb0c9a15.tar.gz kernel_samsung_smdk4412-1d6ed32226326a6e6cd67cd9ee4294bcbb0c9a15.tar.bz2 |
powerpc/iseries: Fix oops reading from /proc/iSeries/mf/*/cmdline
That code uses dma_mapping_error() with a NULL device, which is
a bad idea :-) The proper fix might be to start using some kind
of pseudo device for all these low level mappings with the
hypervisor but that will be for another day. Since it directly
calls into the low level iommu code, I see no problem in having
it directly test against DMA_ERROR_CODE instead of using the
accessors with a NULL argument for now.
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Diffstat (limited to 'arch/powerpc')
-rw-r--r-- | arch/powerpc/platforms/iseries/mf.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/platforms/iseries/mf.c b/arch/powerpc/platforms/iseries/mf.c index fef4d51..0d9343d 100644 --- a/arch/powerpc/platforms/iseries/mf.c +++ b/arch/powerpc/platforms/iseries/mf.c @@ -872,7 +872,7 @@ static int proc_mf_dump_cmdline(char *page, char **start, off_t off, count = 256 - off; dma_addr = iseries_hv_map(page, off + count, DMA_FROM_DEVICE); - if (dma_mapping_error(NULL, dma_addr)) + if (dma_addr == DMA_ERROR_CODE) return -ENOMEM; memset(page, 0, off + count); memset(&vsp_cmd, 0, sizeof(vsp_cmd)); |