Hi,<br><br>I am a newbie, trying to learn but have a few queries, nice if you could respond<br>For linux on 85xx systems...<br><br>(a) Kernel code runs in PR=0 AS=0 and PID=0, which user space application run in PR=1 AS=0 and PID 1-255.<br>
Is this correct.<br><br>(b) I am writing a small program where the application code opens invokes a ioctl call and passes a buffer pointer ( say 0x10000 in user space)<br>Now the driver code is using copy_from_user.<br>How this works internally ?<br>
<br>1. User code executes ioctl<br>2. interrupt goes to the kernel<br>3. ioctl handler in driver gets invoked<br>The buffer pointer still contains 0x10000. <br><br>How kernel code running in PR=0 accesses it and does the copy. I am not able to see a address space switch in the asm code of copy_tofrom_user.<br>
<br>Please respond<br><br>-TRX<br><br><br><br>