i/o opening error for PCI access

Prasad Joshi prasadjoshi124 at gmail.com
Sun Apr 3 18:47:41 EDT 2011


On Sun, Apr 3, 2011 at 6:11 PM, Sengottuvelan S
<sengottuvelan.s at gmail.com> wrote:
> Hi All,
>
> I am trying to access /dev/mem in my user process. I could not access
> because not a privileged access. I tried to use iopl(3) call in linux 2.6,

I am not sure, but after reading the manpage, it looks like iopl will
give access to the IO ports not the files.

> but i am getting unresolved symbol for this.  Is any other way to get access
> in user process. I am not sure how to solve this. Can you someone throw some
> light on this.
>
>    if(iopl(3)){
>         fprintf(stderr, "Cannot get I/O permissions (being root helps)");
>         return -1;
>     }
>   if ((fd = open("/dev/mem", O_RDWR | O_SYNC)) < 0) {
>         fprintf(stderr, "Failed to open /dev/mem");
>         return -1;
>     }

If you look at the file permission, you will notice only root has
permission to write the /dev/mem

$ ls -l /dev/mem
crw-r----- 1 root kmem 1, 1 2011-04-03 08:42 /dev/mem

Opening it for read/write will surely fail.

Thanks and Regards,
Prasad

>
> --
> Regards,
> S. Sengottuvelan.
>
> --
> Regards,
> S. Sengottuvelan.
>
> _______________________________________________
> Kernelnewbies mailing list
> Kernelnewbies at kernelnewbies.org
> http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
>
>



More information about the Kernelnewbies mailing list