libpuffs and libp2k both use the cookie to different structure, which now

leads to struct p2k_node corruption now that libpuffs used pn_nlookup field
in struct puffs_node to avoid race conditions.

Attempt to fix that by adding a struct puffs_node at the beginning of struct
p2k_node. This seems to fix kern/46734
This commit is contained in:
manu 2012-08-12 02:51:18 +00:00
parent 99a54d3479
commit 519089c8d9
1 changed files with 2 additions and 1 deletions

View File

@ -1,4 +1,4 @@
/* $NetBSD: p2k.c,v 1.55 2011/07/04 08:07:29 manu Exp $ */
/* $NetBSD: p2k.c,v 1.56 2012/08/12 02:51:18 manu Exp $ */
/*
* Copyright (c) 2007, 2008, 2009 Antti Kantee. All Rights Reserved.
@ -83,6 +83,7 @@ struct p2k_mount {
};
struct p2k_node {
struct puffs_node p2n_pn;
struct vnode *p2n_vp;
LIST_ENTRY(p2k_node) p2n_entries;