Hi, >> >> For kernel 2.6.22.6 : I can see that tyoe of 2nd arg for read >> function in strucy file_operations is changed is little bit changed >> from 2.4 kernel. >> >> ssize_t (*read) (struct file *, char __user *, size_t, loff_t *); >> >> For 2.4 it used to be: >> >> ssize_t (*read) (struct file *, char *, size_t, loff_t *); >> >> So what does extra __user specify here. This is an explicit hint to the programmer, that the pointer points to a user space buffer and hence must never be used directly. Please note that the compiler does not enforce this - and it is just a HINT. I'm missing out the name, but there is a kernel utility that uses hints such as these and reports if a pointer has been used in an inappropriate way. Thanks, Rajat -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ