diff options
| author | Peter Wemm <peter@FreeBSD.org> | 1996-03-10 23:25:17 +0000 |
|---|---|---|
| committer | Peter Wemm <peter@FreeBSD.org> | 1996-03-10 23:25:17 +0000 |
| commit | 0946c36c96b60bd1cef4f5537f394828eacc37a7 (patch) | |
| tree | aee2e747f4afb43c337cfaa13e2dca7dc51b7c1f | |
| parent | 874308f7c299c763e804b02a488e94dc50b28169 (diff) | |
Notes
| -rw-r--r-- | sys/compat/linux/linux_misc.c | 6 | ||||
| -rw-r--r-- | sys/i386/linux/imgact_linux.c | 12 | ||||
| -rw-r--r-- | sys/i386/linux/linux_misc.c | 6 |
3 files changed, 13 insertions, 11 deletions
diff --git a/sys/compat/linux/linux_misc.c b/sys/compat/linux/linux_misc.c index 6e736b5464ca..bf242d9e69dd 100644 --- a/sys/compat/linux/linux_misc.c +++ b/sys/compat/linux/linux_misc.c @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: linux_misc.c,v 1.13 1996/03/02 19:37:57 peter Exp $ + * $Id: linux_misc.c,v 1.14 1996/03/04 21:03:07 peter Exp $ */ #include <sys/param.h> @@ -344,7 +344,7 @@ printf("uselib: Non page aligned binary %d\n", file_offset); /* release temporary kernel space */ vm_map_remove(kernel_map, buffer, - round_page(a_out->a_text + a_out->a_data + file_offset)); + buffer + round_page(a_out->a_text + a_out->a_data + file_offset)); if (error) goto cleanup; @@ -400,7 +400,7 @@ cleanup: * Release the kernel mapping. */ if (a_out) - vm_map_remove(kernel_map, (vm_offset_t)a_out, PAGE_SIZE); + vm_map_remove(kernel_map, (vm_offset_t)a_out, (vm_offset_t)a_out + PAGE_SIZE); return error; } diff --git a/sys/i386/linux/imgact_linux.c b/sys/i386/linux/imgact_linux.c index e070aa2d6dfe..4d6d3c1415a7 100644 --- a/sys/i386/linux/imgact_linux.c +++ b/sys/i386/linux/imgact_linux.c @@ -28,7 +28,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: imgact_linux.c,v 1.9 1996/03/02 19:37:47 peter Exp $ + * $Id: imgact_linux.c,v 1.10 1996/03/10 08:42:49 sos Exp $ */ #include <sys/param.h> @@ -146,7 +146,7 @@ exec_linux_imgact(imgp) a_out->a_text + a_out->a_data); vm_map_remove(kernel_map, buffer, - round_page(a_out->a_text + a_out->a_data + file_offset)); + buffer + round_page(a_out->a_text + a_out->a_data + file_offset)); if (error) return error; @@ -154,9 +154,11 @@ exec_linux_imgact(imgp) /* * remove write enable on the 'text' part */ - error = vm_map_protect(&vmspace->vm_map, vmaddr, - a_out->a_text, - VM_PROT_EXECUTE|VM_PROT_READ, TRUE); + error = vm_map_protect(&vmspace->vm_map, + vmaddr, + vmaddr + a_out->a_text, + VM_PROT_EXECUTE|VM_PROT_READ, + TRUE); if (error) return error; } diff --git a/sys/i386/linux/linux_misc.c b/sys/i386/linux/linux_misc.c index 6e736b5464ca..bf242d9e69dd 100644 --- a/sys/i386/linux/linux_misc.c +++ b/sys/i386/linux/linux_misc.c @@ -25,7 +25,7 @@ * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. * - * $Id: linux_misc.c,v 1.13 1996/03/02 19:37:57 peter Exp $ + * $Id: linux_misc.c,v 1.14 1996/03/04 21:03:07 peter Exp $ */ #include <sys/param.h> @@ -344,7 +344,7 @@ printf("uselib: Non page aligned binary %d\n", file_offset); /* release temporary kernel space */ vm_map_remove(kernel_map, buffer, - round_page(a_out->a_text + a_out->a_data + file_offset)); + buffer + round_page(a_out->a_text + a_out->a_data + file_offset)); if (error) goto cleanup; @@ -400,7 +400,7 @@ cleanup: * Release the kernel mapping. */ if (a_out) - vm_map_remove(kernel_map, (vm_offset_t)a_out, PAGE_SIZE); + vm_map_remove(kernel_map, (vm_offset_t)a_out, (vm_offset_t)a_out + PAGE_SIZE); return error; } |
