--- /dev/null
+--- lm_sensors-2.5.2/kernel/sensors.c~ Tue Apr 18 13:21:06 2000
++++ lm_sensors-2.5.2/kernel/sensors.c Sat Sep 16 04:13:29 2000
+@@ -293,7 +293,8 @@
+ client_tbl->procname);
+ if (buflen + curbufsize > *lenp)
+ buflen = *lenp - curbufsize;
+- copy_to_user_ret(buffer, BUF, buflen,-EFAULT);
++ if(copy_to_user(buffer, BUF, buflen))
++ return -EFAULT;
+ curbufsize += buflen;
+ (char *) buffer += buflen;
+ }
+@@ -322,16 +323,17 @@
+ child;
+ data.sysctl_id = client_tbl->ctl_name;
+ strcpy(data.name, client_tbl->procname);
+- copy_to_user_ret(oldval, &data,
++ if(copy_to_user(oldval, &data,
+ sizeof(struct
+- sensors_chips_data),
+- -EFAULT);
++ sensors_chips_data)))
++ return -EFAULT;
+ (char *) oldval +=
+ sizeof(struct sensors_chips_data);
+ nrels++;
+ }
+ oldlen = nrels * sizeof(struct sensors_chips_data);
+- put_user_ret(oldlen, oldlenp,-EFAULT);
++ if(put_user(oldlen, oldlenp))
++ return -EFAULT;
+ }
+ return ret;
+ }
+@@ -426,15 +428,18 @@
+ if (nrels * sizeof(long) < oldlen)
+ oldlen = nrels * sizeof(long);
+ oldlen = (oldlen / sizeof(long)) * sizeof(long);
+- copy_to_user_ret(oldval, results, oldlen,-EFAULT);
+- put_user_ret(oldlen, oldlenp,-EFAULT);
++ if(copy_to_user(oldval, results, oldlen))
++ return -EFAULT;
++ if(put_user(oldlen, oldlenp))
++ return -EFAULT;
+ }
+
+ if (newval && newlen) {
+ /* Note the rounding factor! */
+ newlen -= newlen % sizeof(long);
+ nrels = newlen / sizeof(long);
+- copy_from_user_ret(results, newval, newlen,-EFAULT);
++ if(copy_from_user(results, newval, newlen))
++ return -EFAULT;
+
+ /* Get the new values back to the client */
+ callback(client, SENSORS_PROC_REAL_WRITE, table->ctl_name,
+@@ -575,7 +580,8 @@
+ mag = magnitude;
+
+ if (nr != 0) {
+- put_user_ret(' ', (char *) buffer,-EFAULT);
++ if (put_user(' ', (char *) buffer))
++ return -EFAULT;
+ curbufsize++;
+ ((char *) buffer)++;
+ }
+@@ -615,14 +621,16 @@
+ /* Now copy it to the user-space buffer */
+ if (buflen + curbufsize > *bufsize)
+ buflen = *bufsize - curbufsize;
+- copy_to_user_ret(buffer, BUF, buflen,-EFAULT);
++ if(copy_to_user(buffer, BUF, buflen))
++ return -EFAULT;
+ curbufsize += buflen;
+ (char *) buffer += buflen;
+
+ nr++;
+ }
+ if (curbufsize < *bufsize) {
+- put_user_ret('\n', (char *) buffer,-EFAULT);
++ if(put_user('\n', (char *) buffer))
++ return -EFAULT;
+ curbufsize++;
+ }
+ *bufsize = curbufsize;