Messages in this thread |  | | Date | Sat, 25 Jan 97 13:51:09 EST | From | Tom Dyas <> | Subject | Re: get_user <-> scsi-idle |
| |
> the code segment, that works with 2.0.xx, is > > + if (get_user((long *) arg)) > + scsi_cmd[4] = 1; > + else > + scsi_cmd[4] = 0; > + > > could someone recomend a rewrite for 2.1.x? also, a brief description of > what is going on here would be appreciated. specifically, what is the > difference in the functioning of the old and new get_user? the code is > simply too deep for me to read.
The new exception handling code in 2.1.x gets rid of the need for verify_area. get_user and put_user can now "detect" memory access problems. Thus, the new first argument is the variable to assign the contents of the second memory location to. The return value is the status of the userspace read.
Here would be the 2.1.x version of that code:
long tmp;
if (get_user(tmp, (long *) arg)) return -EFAULT;
if (tmp) scsi_cmd[4] = 1; else scsi_cmd[4] = 0;
Tom
|  |