DEVFS completely bypasses the cdevsw and bdevsw tables now.
Each devfs node has (and has had fro a while) a pointer directly to the correct cdefsw entry so just use it instead of doing the lookup. There are several other places in the kernel that still use the tables however, so they can't go away yet..
This commit is contained in:
parent
596f8506ad
commit
6312920c20
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=37407
@ -24,7 +24,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: devfs_tree.c,v 1.54 1998/06/21 14:53:20 bde Exp $
|
||||
* $Id: devfs_tree.c,v 1.55 1998/07/04 22:30:22 julian Exp $
|
||||
*/
|
||||
|
||||
|
||||
@ -498,7 +498,7 @@ dev_add_node(int entrytype, union typeinfo *by, dn_p proto,
|
||||
* Make sure it has DEVICE type ops
|
||||
* and device specific fields are correct
|
||||
*/
|
||||
dnp->ops = &dev_spec_vnodeop_p;
|
||||
dnp->ops = &devfs_spec_vnodeop_p;
|
||||
dnp->by.Bdev.bdevsw = by->Bdev.bdevsw;
|
||||
dnp->by.Bdev.dev = by->Bdev.dev;
|
||||
break;
|
||||
@ -507,7 +507,7 @@ dev_add_node(int entrytype, union typeinfo *by, dn_p proto,
|
||||
* Make sure it has DEVICE type ops
|
||||
* and device specific fields are correct
|
||||
*/
|
||||
dnp->ops = &dev_spec_vnodeop_p;
|
||||
dnp->ops = &devfs_spec_vnodeop_p;
|
||||
dnp->by.Cdev.cdevsw = by->Cdev.cdevsw;
|
||||
dnp->by.Cdev.dev = by->Cdev.dev;
|
||||
break;
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -23,7 +23,7 @@
|
||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||
* SUCH DAMAGE.
|
||||
*
|
||||
* $Id: devfsdefs.h,v 1.14 1998/04/19 23:32:20 julian Exp $
|
||||
* $Id: devfsdefs.h,v 1.15 1998/07/04 22:30:22 julian Exp $
|
||||
*/
|
||||
#ifdef DEVFS_DEBUG
|
||||
#define DBPRINT(A) printf(A)
|
||||
@ -89,7 +89,7 @@
|
||||
|
||||
|
||||
extern vop_t **devfs_vnodeop_p; /* our own vector array for dirs */
|
||||
extern vop_t **dev_spec_vnodeop_p; /* our own vector array for devs */
|
||||
extern vop_t **devfs_spec_vnodeop_p; /* our own vector array for devs */
|
||||
|
||||
typedef struct dev_name *devnm_p;
|
||||
typedef struct devnode *dn_p;
|
||||
|
Loading…
Reference in New Issue
Block a user