Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 9 Feb 2010 17:20:00 +0000 (UTC)
From:      Marcel Moolenaar <marcel@FreeBSD.org>
To:        src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org
Subject:   svn commit: r203708 - head/sys/kern
Message-ID:  <201002091720.o19HK0F7031206@svn.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: marcel
Date: Tue Feb  9 17:20:00 2010
New Revision: 203708
URL: http://svn.freebsd.org/changeset/base/203708

Log:
  Unbreak building kernels with COMPAT_32 enabled. The actual support
  for the PT_VM_ENTRY request from 32-bit processes will follow.
  
  Pointy hat: marcel

Modified:
  head/sys/kern/sys_process.c

Modified: head/sys/kern/sys_process.c
==============================================================================
--- head/sys/kern/sys_process.c	Tue Feb  9 17:16:13 2010	(r203707)
+++ head/sys/kern/sys_process.c	Tue Feb  9 17:20:00 2010	(r203708)
@@ -73,6 +73,17 @@ struct ptrace_io_desc32 {
 	u_int32_t	piod_addr;
 	u_int32_t	piod_len;
 };
+
+struct ptrace_vm_entry32 {
+	uint32_t	pve_cookie;
+	uint32_t	pve_start;
+	uint32_t	pve_end;
+	uint32_t	pve_offset;
+	u_int		pve_prot;
+	u_int		pve_pathlen;
+	uint32_t	pve_path;
+};
+
 #endif
 
 /*
@@ -484,6 +495,7 @@ ptrace(struct thread *td, struct ptrace_
 		struct fpreg32 fpreg32;
 		struct reg32 reg32;
 		struct ptrace_io_desc32 piod32;
+		struct ptrace_vm_entry32 pve32;
 #endif
 	} r;
 	void *addr;
@@ -1075,6 +1087,13 @@ kern_ptrace(struct thread *td, int req, 
 		break;
 
 	case PT_VM_ENTRY:
+#ifdef COMPAT_IA32
+		/* XXX to be implemented. */
+		if (wrap32) {
+			error = EDOOFUS;
+			break;
+		}
+#endif
 		PROC_UNLOCK(p);
 		error = ptrace_vm_entry(td, p, addr);
 		PROC_LOCK(p);



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201002091720.o19HK0F7031206>