Messages in this thread | | | Date | Thu, 11 Nov 1999 12:08:25 +0100 (CET) | From | Ingo Molnar <> | Subject | Re: kiobuf using kernel pages |
| |
On Thu, 11 Nov 1999, Keith Owens wrote:
> Trying to port the SGI lcrash code to 2.3.26 ix86. It compiles, runs, > traps the oops, starts writing the dump to swap, dies with -EFAULT in > sd_raw_rw. My guess is because the buffer address is c2c00000, i.e. I > am trying to do I/O directly from kernel pages, not from user space. > sd_raw_rw() calls map_user_kiobuf() which is perfect for user space > callers, no good for kernel callers. How do I get around this?
yes, map_user_kiobuf() works only on user addresses. You'll have to add a map_kernel_kiobuf() function - which is probably super-simple as it doesnt have to do any security checks and doesnt have to sync with the VM data structures. You also might want to add an alloc_kernel_koibuf(), free_kernel_kiobuf(), to let the kiobuf code allocate/free pages for you.
-- mingo
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |