Subject: Re: Veriexec broken on amd64?
To: Scott Ellis <scotte@warped.com>
From: Brett Lymn <blymn@baesystems.com.au>
List: current-users
Date: 02/11/2007 22:03:48
--LZvS9be/3tNcYl/X
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
On Sat, Feb 10, 2007 at 10:21:53AM -0800, Scott Ellis wrote:
>
> I can't get a crashdump in my current configuration (RAIDFrame, and I
> don't like the 'overlapping partitions' dance),
that's fine - it was why I said "if you can" :)
> but I was able to get a
> backtrace:
>
Which helped a lot, thanks. Can you try the attached patch and see if
it fixes your problem?
--
Brett Lymn
--LZvS9be/3tNcYl/X
Content-Type: text/plain; charset=us-ascii
Content-Disposition: attachment; filename="veriexec.diff"
Index: kern_verifiedexec.c
===================================================================
RCS file: /usr/cvs/src/sys/kern/kern_verifiedexec.c,v
retrieving revision 1.95
diff -u -p -r1.95 kern_verifiedexec.c
--- kern_verifiedexec.c 6 Feb 2007 01:09:48 -0000 1.95
+++ kern_verifiedexec.c 9 Feb 2007 14:28:10 -0000
@@ -818,19 +818,21 @@ veriexec_clear(void *data)
* Invalidate a Veriexec file entry.
* XXX: This should be updated when per-page fingerprints are added.
*/
-void
-veriexec_purge(struct vnode *vp)
+static void
+veriexec_file_purge(struct veriexec_file_entry *vfe)
{
- struct veriexec_file_entry *vfe;
-
- vfe = veriexec_get(vp);
-
if (vfe == NULL)
return;
vfe->status = FINGERPRINT_NOTEVAL;
}
+void
+veriexec_purge(struct vnode *vp)
+{
+ veriexec_file_purge(veriexec_get(vp));
+}
+
/*
* Enforce raw disk access policy.
*
--LZvS9be/3tNcYl/X--