The NetBSD Project

CVS log for src/sys/filecorefs/Attic/filecore_vfsops.c

[BACK] Up to [cvs.NetBSD.org] / src / sys / filecorefs

Request diff between arbitrary revisions


Default branch: MAIN
Current tag: thorpej-devvp


Revision 1.14.4.4 / (download) - annotate - [select for diffs], Thu Oct 11 00:02:31 2001 UTC (20 years, 7 months ago) by fvdl
Branch: thorpej-devvp
Changes since 1.14.4.3: +6 -1 lines
Diff to previous 1.14.4.3 (colored) to branchpoint 1.14 (colored) next main 1.15 (colored)

Catch up with -current. Fix some bogons in the sparc64 kbd/ms
attach code. cd18xx conversion provided by mrg.

Revision 1.14.4.3 / (download) - annotate - [select for diffs], Mon Oct 1 12:46:44 2001 UTC (20 years, 7 months ago) by fvdl
Branch: thorpej-devvp
Changes since 1.14.4.2: +4 -2 lines
Diff to previous 1.14.4.2 (colored) to branchpoint 1.14 (colored)

Catch up with -current.

Revision 1.14.4.2 / (download) - annotate - [select for diffs], Wed Sep 26 15:28:21 2001 UTC (20 years, 8 months ago) by fvdl
Branch: thorpej-devvp
Changes since 1.14.4.1: +11 -5 lines
Diff to previous 1.14.4.1 (colored) to branchpoint 1.14 (colored)

* add a VCLONED vnode flag that indicates a vnode representing a cloned
  device.
* rename REVOKEALL to REVOKEALIAS, and add a REVOKECLONE flag, to pass
  to VOP_REVOKE
* the revoke system call will revoke all aliases, as before, but not the
  clones
* vdevgone is called when detaching a device, so make it use REVOKECLONE
  to get rid of all clones as well
* clean up all uses of VOP_OPEN wrt. locking.
* add a few VOPS to spec_vnops that need to do something when it's a
  clone vnode (access and getattr)
* add a copy of the vnode vattr structure of the original 'master' vnode
  to the specinfo of a cloned vnode. could possibly redirect getattr to
  the 'master' vnode, but this has issues with revoke
* add a vdev_reassignvp function that disassociates a vnode from its
  original device, and reassociates it with the specified dev_t. to be
  used by cloning devices only, in case a new minor is allocated.
* change all direct references in drivers to v_devcookie and v_rdev
  to vdev_privdata(vp) and vdev_rdev(vp). for diagnostic purposes
  when debugging race conditions that still exist wrt. locking and
  revoking vnodes.
* make the locking state of a vnode consistent when passed to
  d_open and d_close (unlocked). locked would be better, but has
  some deadlock issues

Revision 1.14.4.1 / (download) - annotate - [select for diffs], Tue Sep 18 19:13:52 2001 UTC (20 years, 8 months ago) by fvdl
Branch: thorpej-devvp
Changes since 1.14: +2 -2 lines
Diff to previous 1.14 (colored)

Various changes to make cloning devices possible:

	* Add an extra argument (struct vnode **) to VOP_OPEN. If it is
	  not NULL, specfs will create a cloned (aliased) vnode during
	  the call, and return it there. The caller should release and
	  unlock the original vnode if a new vnode was returned. The
	  new vnode is returned locked.

	* Add a flag field to the cdevsw and bdevsw structures.
	  DF_CLONING indicates that it wants a new vnode for each
	  open (XXX is there a better way? devprop?)

	* If a device is cloning, always call the close entry
	  point for a VOP_CLOSE.


Also, rewrite cons.c to do the right thing with vnodes. Use VOPs
rather then direct device entry calls. Suggested by mycroft@

Light to moderate testing done an i386 system (arch doesn't matter
though, these are MI changes).

Revision 1.14 / (download) - annotate - [select for diffs], Wed May 30 11:42:13 2001 UTC (21 years ago) by mrg
Branch: MAIN
CVS Tags: thorpej-devvp-base
Branch point for: thorpej-devvp, kqueue
Changes since 1.13: +2 -2 lines
Diff to previous 1.13 (colored)

use _KERNEL_OPT

This form allows you to request diff's between any two revisions of a file. You may select a symbolic revision name using the selection box or you may type in a numeric name using the type-in text box.




CVSweb <webmaster@jp.NetBSD.org>