* Note that a shared library must be both readable and executable due to
  * security reasons.
  *
- * Also note that we take the address to load from from the file itself.
+ * Also note that we take the address to load from the file itself.
  */
 SYSCALL_DEFINE1(uselib, const char __user *, library)
 {
                if (!valid_arg_len(bprm, len))
                        goto out;
 
-               /* We're going to work our way backwords. */
+               /* We're going to work our way backwards. */
                pos = bprm->p;
                str += len;
                bprm->p -= len;
 
        /*
         * Must be called _before_ exec_mmap() as bprm->mm is
-        * not visibile until then. This also enables the update
+        * not visible until then. This also enables the update
         * to be lockless.
         */
        retval = set_mm_exe_file(bprm->mm, bprm->file);