head 1.21; access; symbols netbsd-10-0-RC6:1.21 netbsd-10-0-RC5:1.21 netbsd-10-0-RC4:1.21 netbsd-10-0-RC3:1.21 netbsd-10-0-RC2:1.21 thorpej-ifq:1.21.0.28 thorpej-ifq-base:1.21 thorpej-altq-separation:1.21.0.26 thorpej-altq-separation-base:1.21 netbsd-10-0-RC1:1.21 netbsd-10:1.21.0.24 netbsd-10-base:1.21 bouyer-sunxi-drm:1.21.0.22 bouyer-sunxi-drm-base:1.21 netbsd-9-3-RELEASE:1.20 thorpej-i2c-spi-conf2:1.21.0.20 thorpej-i2c-spi-conf2-base:1.21 thorpej-futex2:1.21.0.18 thorpej-futex2-base:1.21 thorpej-cfargs2:1.21.0.16 thorpej-cfargs2-base:1.21 cjep_sun2x-base1:1.21 cjep_sun2x:1.21.0.14 cjep_sun2x-base:1.21 cjep_staticlib_x-base1:1.21 netbsd-9-2-RELEASE:1.20 cjep_staticlib_x:1.21.0.12 cjep_staticlib_x-base:1.21 thorpej-i2c-spi-conf:1.21.0.10 thorpej-i2c-spi-conf-base:1.21 thorpej-cfargs:1.21.0.8 thorpej-cfargs-base:1.21 thorpej-futex:1.21.0.6 thorpej-futex-base:1.21 netbsd-9-1-RELEASE:1.20 bouyer-xenpvh-base2:1.21 phil-wifi-20200421:1.21 bouyer-xenpvh-base1:1.21 phil-wifi-20200411:1.21 bouyer-xenpvh:1.21.0.4 bouyer-xenpvh-base:1.21 is-mlppp:1.21.0.2 is-mlppp-base:1.21 phil-wifi-20200406:1.21 netbsd-8-2-RELEASE:1.19 ad-namecache-base3:1.21 netbsd-9-0-RELEASE:1.20 netbsd-9-0-RC2:1.20 ad-namecache-base2:1.21 ad-namecache-base1:1.21 ad-namecache:1.20.0.12 ad-namecache-base:1.20 netbsd-9-0-RC1:1.20 phil-wifi-20191119:1.20 netbsd-9:1.20.0.10 netbsd-9-base:1.20 phil-wifi-20190609:1.20 netbsd-8-1-RELEASE:1.19 netbsd-8-1-RC1:1.19 isaki-audio2:1.20.0.8 isaki-audio2-base:1.20 pgoyette-compat-merge-20190127:1.20 pgoyette-compat-20190127:1.20 pgoyette-compat-20190118:1.20 pgoyette-compat-1226:1.20 pgoyette-compat-1126:1.20 pgoyette-compat-1020:1.20 pgoyette-compat-0930:1.20 pgoyette-compat-0906:1.20 netbsd-7-2-RELEASE:1.18 pgoyette-compat-0728:1.20 netbsd-8-0-RELEASE:1.19 phil-wifi:1.20.0.6 phil-wifi-base:1.20 pgoyette-compat-0625:1.20 netbsd-8-0-RC2:1.19 pgoyette-compat-0521:1.20 pgoyette-compat-0502:1.20 pgoyette-compat-0422:1.20 netbsd-8-0-RC1:1.19 pgoyette-compat-0415:1.20 pgoyette-compat-0407:1.20 pgoyette-compat-0330:1.20 pgoyette-compat-0322:1.20 pgoyette-compat-0315:1.20 netbsd-7-1-2-RELEASE:1.18 pgoyette-compat:1.20.0.4 pgoyette-compat-base:1.20 netbsd-7-1-1-RELEASE:1.18 tls-maxphys-base-20171202:1.20 matt-nb8-mediatek:1.19.0.12 matt-nb8-mediatek-base:1.19 nick-nhusb-base-20170825:1.20 perseant-stdc-iso10646:1.20.0.2 perseant-stdc-iso10646-base:1.20 netbsd-8:1.19.0.10 netbsd-8-base:1.19 prg-localcount2-base3:1.19 prg-localcount2-base2:1.19 prg-localcount2-base1:1.19 prg-localcount2:1.19.0.8 prg-localcount2-base:1.19 pgoyette-localcount-20170426:1.19 bouyer-socketcan-base1:1.19 jdolecek-ncq:1.19.0.6 jdolecek-ncq-base:1.19 pgoyette-localcount-20170320:1.19 netbsd-7-1:1.18.0.88 netbsd-7-1-RELEASE:1.18 netbsd-7-1-RC2:1.18 nick-nhusb-base-20170204:1.19 netbsd-7-nhusb-base-20170116:1.18 bouyer-socketcan:1.19.0.4 bouyer-socketcan-base:1.19 pgoyette-localcount-20170107:1.19 netbsd-7-1-RC1:1.18 nick-nhusb-base-20161204:1.19 pgoyette-localcount-20161104:1.19 netbsd-7-0-2-RELEASE:1.18 nick-nhusb-base-20161004:1.19 localcount-20160914:1.19 netbsd-7-nhusb:1.18.0.86 netbsd-7-nhusb-base:1.18 pgoyette-localcount-20160806:1.19 pgoyette-localcount-20160726:1.19 pgoyette-localcount:1.19.0.2 pgoyette-localcount-base:1.19 nick-nhusb-base-20160907:1.19 nick-nhusb-base-20160529:1.19 netbsd-7-0-1-RELEASE:1.18 nick-nhusb-base-20160422:1.19 nick-nhusb-base-20160319:1.19 nick-nhusb-base-20151226:1.19 netbsd-7-0:1.18.0.84 netbsd-7-0-RELEASE:1.18 nick-nhusb-base-20150921:1.19 netbsd-7-0-RC3:1.18 netbsd-7-0-RC2:1.18 netbsd-7-0-RC1:1.18 nick-nhusb-base-20150606:1.19 nick-nhusb-base-20150406:1.19 nick-nhusb:1.18.0.82 nick-nhusb-base:1.18 netbsd-5-2-3-RELEASE:1.18 netbsd-5-1-5-RELEASE:1.18 netbsd-6-0-6-RELEASE:1.18 netbsd-6-1-5-RELEASE:1.18 netbsd-7:1.18.0.80 netbsd-7-base:1.18 yamt-pagecache-base9:1.18 yamt-pagecache-tag8:1.18 netbsd-6-1-4-RELEASE:1.18 netbsd-6-0-5-RELEASE:1.18 tls-earlyentropy:1.18.0.78 tls-earlyentropy-base:1.18 riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.18 riastradh-drm2-base3:1.18 netbsd-6-1-3-RELEASE:1.18 netbsd-6-0-4-RELEASE:1.18 netbsd-5-2-2-RELEASE:1.18 netbsd-5-1-4-RELEASE:1.18 netbsd-6-1-2-RELEASE:1.18 netbsd-6-0-3-RELEASE:1.18 netbsd-5-2-1-RELEASE:1.18 netbsd-5-1-3-RELEASE:1.18 rmind-smpnet-nbase:1.18 netbsd-6-1-1-RELEASE:1.18 riastradh-drm2-base2:1.18 riastradh-drm2-base1:1.18 riastradh-drm2:1.18.0.76 riastradh-drm2-base:1.18 rmind-smpnet:1.18.0.68 rmind-smpnet-base:1.18 netbsd-6-1:1.18.0.74 netbsd-6-0-2-RELEASE:1.18 netbsd-6-1-RELEASE:1.18 khorben-n900:1.18.0.72 netbsd-6-1-RC4:1.18 netbsd-6-1-RC3:1.18 agc-symver:1.18.0.70 agc-symver-base:1.18 netbsd-6-1-RC2:1.18 netbsd-6-1-RC1:1.18 yamt-pagecache-base8:1.18 netbsd-5-2:1.18.0.66 netbsd-6-0-1-RELEASE:1.18 yamt-pagecache-base7:1.18 netbsd-5-2-RELEASE:1.18 netbsd-5-2-RC1:1.18 matt-nb6-plus-nbase:1.18 yamt-pagecache-base6:1.18 netbsd-6-0:1.18.0.64 netbsd-6-0-RELEASE:1.18 netbsd-6-0-RC2:1.18 tls-maxphys:1.18.0.62 tls-maxphys-base:1.18 matt-nb6-plus:1.18.0.60 matt-nb6-plus-base:1.18 netbsd-6-0-RC1:1.18 jmcneill-usbmp-base10:1.18 yamt-pagecache-base5:1.18 jmcneill-usbmp-base9:1.18 yamt-pagecache-base4:1.18 jmcneill-usbmp-base8:1.18 jmcneill-usbmp-base7:1.18 jmcneill-usbmp-base6:1.18 jmcneill-usbmp-base5:1.18 jmcneill-usbmp-base4:1.18 jmcneill-usbmp-base3:1.18 jmcneill-usbmp-pre-base2:1.18 jmcneill-usbmp-base2:1.18 netbsd-6:1.18.0.58 netbsd-6-base:1.18 netbsd-5-1-2-RELEASE:1.18 netbsd-5-1-1-RELEASE:1.18 jmcneill-usbmp:1.18.0.56 jmcneill-usbmp-base:1.18 jmcneill-audiomp3:1.18.0.54 jmcneill-audiomp3-base:1.18 yamt-pagecache-base3:1.18 yamt-pagecache-base2:1.18 yamt-pagecache:1.18.0.52 yamt-pagecache-base:1.18 rmind-uvmplock-nbase:1.18 cherry-xenmp:1.18.0.50 cherry-xenmp-base:1.18 bouyer-quota2-nbase:1.18 bouyer-quota2:1.18.0.48 bouyer-quota2-base:1.18 jruoho-x86intr:1.18.0.46 jruoho-x86intr-base:1.18 matt-mips64-premerge-20101231:1.18 matt-nb5-mips64-premerge-20101231:1.18 matt-nb5-pq3:1.18.0.44 matt-nb5-pq3-base:1.18 netbsd-5-1:1.18.0.42 netbsd-5-1-RELEASE:1.18 uebayasi-xip-base4:1.18 uebayasi-xip-base3:1.18 yamt-nfs-mp-base11:1.18 netbsd-5-1-RC4:1.18 matt-nb5-mips64-k15:1.18 uebayasi-xip-base2:1.18 yamt-nfs-mp-base10:1.18 netbsd-5-1-RC3:1.18 netbsd-5-1-RC2:1.18 uebayasi-xip-base1:1.18 netbsd-5-1-RC1:1.18 rmind-uvmplock:1.18.0.40 rmind-uvmplock-base:1.18 yamt-nfs-mp-base9:1.18 uebayasi-xip:1.18.0.38 uebayasi-xip-base:1.18 netbsd-5-0-2-RELEASE:1.18 matt-nb5-mips64-premerge-20091211:1.18 matt-premerge-20091211:1.18 yamt-nfs-mp-base8:1.18 matt-nb5-mips64-u2-k2-k4-k7-k8-k9:1.18 matt-nb4-mips64-k7-u2a-k9b:1.18 matt-nb5-mips64-u1-k1-k5:1.18 yamt-nfs-mp-base7:1.18 matt-nb5-mips64:1.18.0.36 netbsd-5-0-1-RELEASE:1.18 jymxensuspend-base:1.18 yamt-nfs-mp-base6:1.18 yamt-nfs-mp-base5:1.18 yamt-nfs-mp-base4:1.18 jym-xensuspend-nbase:1.18 yamt-nfs-mp-base3:1.18 nick-hppapmap-base4:1.18 nick-hppapmap-base3:1.18 netbsd-5-0:1.18.0.34 netbsd-5-0-RELEASE:1.18 netbsd-5-0-RC4:1.18 netbsd-5-0-RC3:1.18 nick-hppapmap-base2:1.18 netbsd-5-0-RC2:1.18 jym-xensuspend:1.18.0.32 jym-xensuspend-base:1.18 netbsd-5-0-RC1:1.18 haad-dm-base2:1.18 haad-nbase2:1.18 ad-audiomp2:1.18.0.30 ad-audiomp2-base:1.18 netbsd-5:1.18.0.28 netbsd-5-base:1.18 nick-hppapmap:1.18.0.26 nick-hppapmap-base:1.18 matt-mips64-base2:1.18 matt-mips64:1.17.0.12 haad-dm-base1:1.18 wrstuden-revivesa-base-4:1.18 netbsd-4-0-1-RELEASE:1.15 wrstuden-revivesa-base-3:1.18 wrstuden-revivesa-base-2:1.18 wrstuden-fixsa-newbase:1.15 nick-csl-alignment-base5:1.17 haad-dm:1.18.0.24 haad-dm-base:1.18 wrstuden-revivesa-base-1:1.18 simonb-wapbl-nbase:1.18 yamt-pf42-base4:1.18 simonb-wapbl:1.18.0.22 simonb-wapbl-base:1.18 yamt-pf42-base3:1.18 hpcarm-cleanup-nbase:1.18 yamt-pf42-baseX:1.18 yamt-pf42-base2:1.18 yamt-nfs-mp-base2:1.18 wrstuden-revivesa:1.18.0.20 wrstuden-revivesa-base:1.18 yamt-nfs-mp:1.18.0.18 yamt-nfs-mp-base:1.18 yamt-pf42:1.18.0.16 yamt-pf42-base:1.18 ad-socklock-base1:1.18 yamt-lazymbuf-base15:1.18 yamt-lazymbuf-base14:1.18 keiichi-mipv6-nbase:1.18 mjf-devfs2:1.18.0.14 mjf-devfs2-base:1.18 nick-net80211-sync:1.18.0.12 nick-net80211-sync-base:1.18 keiichi-mipv6:1.18.0.10 keiichi-mipv6-base:1.18 bouyer-xeni386-merge1:1.18 matt-armv6-prevmlocking:1.17 wrstuden-fixsa-base-1:1.15 vmlocking2-base3:1.18 netbsd-4-0:1.15.0.30 netbsd-4-0-RELEASE:1.15 bouyer-xeni386-nbase:1.18 yamt-kmem-base3:1.18 cube-autoconf:1.18.0.8 cube-autoconf-base:1.18 yamt-kmem-base2:1.18 bouyer-xeni386:1.18.0.6 bouyer-xeni386-base:1.18 yamt-kmem:1.18.0.4 yamt-kmem-base:1.18 vmlocking2-base2:1.18 reinoud-bufcleanup-nbase:1.18 vmlocking2:1.18.0.2 vmlocking2-base1:1.18 netbsd-4-0-RC5:1.15 matt-nb4-arm:1.15.0.28 matt-nb4-arm-base:1.15 matt-armv6-nbase:1.18 jmcneill-base:1.17 netbsd-4-0-RC4:1.15 mjf-devfs:1.17.0.10 mjf-devfs-base:1.18 bouyer-xenamd64-base2:1.17 vmlocking-nbase:1.18 yamt-x86pmap-base4:1.17 bouyer-xenamd64:1.17.0.8 bouyer-xenamd64-base:1.17 netbsd-4-0-RC3:1.15 yamt-x86pmap-base3:1.17 yamt-x86pmap-base2:1.17 netbsd-4-0-RC2:1.15 yamt-x86pmap:1.17.0.6 yamt-x86pmap-base:1.17 netbsd-4-0-RC1:1.15 matt-armv6:1.17.0.4 matt-armv6-base:1.18 matt-mips64-base:1.17 jmcneill-pm:1.17.0.2 jmcneill-pm-base:1.18 hpcarm-cleanup:1.16.0.4 hpcarm-cleanup-base:1.18 nick-csl-alignment:1.16.0.2 nick-csl-alignment-base:1.16 netbsd-3-1-1-RELEASE:1.13 netbsd-3-0-3-RELEASE:1.13 yamt-idlelwp-base8:1.15 wrstuden-fixsa:1.15.0.26 wrstuden-fixsa-base:1.15 thorpej-atomic:1.15.0.24 thorpej-atomic-base:1.15 reinoud-bufcleanup:1.15.0.22 reinoud-bufcleanup-base:1.18 mjf-ufs-trans:1.15.0.20 mjf-ufs-trans-base:1.15 vmlocking:1.15.0.18 vmlocking-base:1.17 ad-audiomp:1.15.0.16 ad-audiomp-base:1.15 yamt-idlelwp:1.15.0.14 post-newlock2-merge:1.15 newlock2-nbase:1.15 yamt-splraiseipl-base5:1.15 yamt-splraiseipl-base4:1.15 yamt-splraiseipl-base3:1.15 abandoned-netbsd-4-base:1.15 abandoned-netbsd-4:1.15.0.6 netbsd-3-1:1.13.0.14 netbsd-3-1-RELEASE:1.13 netbsd-3-0-2-RELEASE:1.13 yamt-splraiseipl-base2:1.15 netbsd-3-1-RC4:1.13 yamt-splraiseipl:1.15.0.10 yamt-splraiseipl-base:1.15 netbsd-3-1-RC3:1.13 yamt-pdpolicy-base9:1.15 newlock2:1.15.0.8 newlock2-base:1.15 yamt-pdpolicy-base8:1.15 netbsd-3-1-RC2:1.13 netbsd-3-1-RC1:1.13 yamt-pdpolicy-base7:1.15 netbsd-4:1.15.0.12 netbsd-4-base:1.15 yamt-pdpolicy-base6:1.15 chap-midi-nbase:1.15 netbsd-3-0-1-RELEASE:1.13 gdamore-uart:1.15.0.4 gdamore-uart-base:1.15 simonb-timcounters-final:1.14.6.1 yamt-pdpolicy-base5:1.15 chap-midi:1.15.0.2 chap-midi-base:1.15 yamt-pdpolicy-base4:1.14 yamt-pdpolicy-base3:1.14 peter-altq-base:1.14 peter-altq:1.14.0.12 yamt-pdpolicy-base2:1.14 elad-kernelauth-base:1.14 elad-kernelauth:1.14.0.10 yamt-pdpolicy:1.14.0.8 yamt-pdpolicy-base:1.14 yamt-uio_vmspace-base5:1.14 simonb-timecounters:1.14.0.6 simonb-timecounters-base:1.15 rpaulo-netinet-merge-pcb:1.14.0.4 rpaulo-netinet-merge-pcb-base:1.15 yamt-uio_vmspace:1.14.0.2 netbsd-3-0:1.13.0.12 netbsd-3-0-RELEASE:1.13 netbsd-3-0-RC6:1.13 yamt-readahead-base3:1.13 netbsd-3-0-RC5:1.13 netbsd-3-0-RC4:1.13 netbsd-3-0-RC3:1.13 yamt-readahead-base2:1.13 netbsd-3-0-RC2:1.13 yamt-readahead-pervnode:1.13 yamt-readahead-perfile:1.13 yamt-readahead:1.13.0.10 yamt-readahead-base:1.13 netbsd-3-0-RC1:1.13 yamt-vop-base3:1.13 netbsd-2-0-3-RELEASE:1.9.2.1 netbsd-2-1:1.9.2.1.0.4 yamt-vop-base2:1.13 thorpej-vnode-attr:1.13.0.8 thorpej-vnode-attr-base:1.13 netbsd-2-1-RELEASE:1.9.2.1 yamt-vop:1.13.0.6 yamt-vop-base:1.13 netbsd-2-1-RC6:1.9.2.1 netbsd-2-1-RC5:1.9.2.1 netbsd-2-1-RC4:1.9.2.1 netbsd-2-1-RC3:1.9.2.1 netbsd-2-1-RC2:1.9.2.1 netbsd-2-1-RC1:1.9.2.1 yamt-lazymbuf:1.13.0.4 yamt-km-base4:1.13 netbsd-2-0-2-RELEASE:1.9.2.1 yamt-km-base3:1.13 netbsd-3:1.13.0.2 netbsd-3-base:1.13 yamt-km-base2:1.12 yamt-km:1.12.0.6 yamt-km-base:1.12 kent-audio2:1.12.0.4 kent-audio2-base:1.13 netbsd-2-0-1-RELEASE:1.9.2.1 kent-audio1-beforemerge:1.12 netbsd-2:1.9.2.1.0.2 netbsd-2-base:1.9.2.1 kent-audio1:1.12.0.2 kent-audio1-base:1.12 netbsd-2-0-RELEASE:1.9.2.1 netbsd-2-0-RC5:1.9.2.1 netbsd-2-0-RC4:1.9.2.1 netbsd-2-0-RC3:1.9.2.1 netbsd-2-0-RC2:1.9.2.1 netbsd-2-0-RC1:1.9.2.1 netbsd-2-0:1.9.0.2 netbsd-2-0-base:1.9 netbsd-1-6-PATCH002-RELEASE:1.5 netbsd-1-6-PATCH002:1.5 netbsd-1-6-PATCH002-RC4:1.5 netbsd-1-6-PATCH002-RC3:1.5 netbsd-1-6-PATCH002-RC2:1.5 netbsd-1-6-PATCH002-RC1:1.5 ktrace-lwp:1.8.0.2 ktrace-lwp-base:1.13 netbsd-1-6-PATCH001:1.5 netbsd-1-6-PATCH001-RELEASE:1.5 netbsd-1-6-PATCH001-RC3:1.5 netbsd-1-6-PATCH001-RC2:1.5 netbsd-1-6-PATCH001-RC1:1.5 nathanw_sa_end:1.5 nathanw_sa_before_merge:1.5 fvdl_fs64_base:1.5 gmcgarry_ctxsw:1.5.0.26 gmcgarry_ctxsw_base:1.5 gmcgarry_ucred:1.5.0.24 gmcgarry_ucred_base:1.5 nathanw_sa_base:1.5 kqueue-aftermerge:1.5 kqueue-beforemerge:1.5 netbsd-1-6-RELEASE:1.5 netbsd-1-6-RC3:1.5 netbsd-1-6-RC2:1.5 netbsd-1-6-RC1:1.5 netbsd-1-6:1.5.0.22 netbsd-1-6-base:1.5 gehenna-devsw:1.5.0.20 gehenna-devsw-base:1.5 netbsd-1-5-PATCH003:1.5 eeh-devprop:1.5.0.18 eeh-devprop-base:1.5 newlock:1.5.0.16 newlock-base:1.5 ifpoll-base:1.5 thorpej-mips-cache:1.5.0.12 thorpej-mips-cache-base:1.5 thorpej-devvp-base3:1.5 thorpej-devvp-base2:1.5 post-chs-ubcperf:1.5 pre-chs-ubcperf:1.5 thorpej-devvp:1.5.0.10 thorpej-devvp-base:1.5 netbsd-1-5-PATCH002:1.5 kqueue:1.5.0.8 kqueue-base:1.5 netbsd-1-5-PATCH001:1.5 thorpej_scsipi_beforemerge:1.5 nathanw_sa:1.5.0.6 thorpej_scsipi_nbase:1.5 netbsd-1-5-RELEASE:1.5 netbsd-1-5-BETA2:1.5 netbsd-1-5-BETA:1.5 netbsd-1-4-PATCH003:1.4 netbsd-1-5-ALPHA2:1.5 netbsd-1-5:1.5.0.4 netbsd-1-5-base:1.5 minoura-xpg4dl-base:1.5 minoura-xpg4dl:1.5.0.2 netbsd-1-4-PATCH002:1.4 chs-ubc2-newbase:1.4 wrstuden-devbsize-19991221:1.4 wrstuden-devbsize:1.4.0.18 wrstuden-devbsize-base:1.4 kame_141_19991130:1.4 comdex-fall-1999:1.4.0.16 comdex-fall-1999-base:1.4 fvdl-softdep:1.4.0.14 fvdl-softdep-base:1.4 thorpej_scsipi:1.4.0.12 thorpej_scsipi_base:1.5 netbsd-1-4-PATCH001:1.4 kame_14_19990705:1.4 kame_14_19990628:1.4 kame:1.4.0.10 chs-ubc2:1.4.0.8 chs-ubc2-base:1.4 netbsd-1-4-RELEASE:1.4 netbsd-1-4:1.4.0.6 netbsd-1-4-base:1.4 kenh-if-detach:1.4.0.4 kenh-if-detach-base:1.4 chs-ubc:1.4.0.2 chs-ubc-base:1.4 C0828:1.1.1.1 CODA:1.1.1; locks; strict; comment @ * @; 1.21 date 2020.01.17.20.08.06; author ad; state Exp; branches; next 1.20; commitid 9tZTPOWa6bUH95TB; 1.20 date 2017.06.08.22.29.59; author chs; state Exp; branches 1.20.6.1 1.20.12.1; next 1.19; 1.19 date 2014.12.13.15.59.30; author hannken; state Exp; branches; next 1.18; 1.18 date 2007.11.26.19.01.28; author pooka; state Exp; branches 1.18.62.1 1.18.82.1; next 1.17; 1.17 date 2007.07.31.21.14.19; author pooka; state Exp; branches 1.17.2.1 1.17.4.1 1.17.10.1 1.17.12.1; next 1.16; 1.16 date 2007.07.12.19.38.26; author dsl; state Exp; branches 1.16.2.1; next 1.15; 1.15 date 2006.05.14.21.24.49; author elad; state Exp; branches 1.15.18.1; next 1.14; 1.14 date 2005.12.11.12.19.50; author christos; state Exp; branches 1.14.4.1 1.14.6.1 1.14.8.1 1.14.10.1 1.14.12.1; next 1.13; 1.13 date 2005.02.26.23.04.16; author perry; state Exp; branches 1.13.4.1; next 1.12; 1.12 date 2004.05.20.06.34.24; author atatat; state Exp; branches 1.12.4.1 1.12.6.1; next 1.11; 1.11 date 2004.04.27.17.37.30; author jrf; state Exp; branches; next 1.10; 1.10 date 2004.04.21.01.05.35; author christos; state Exp; branches; next 1.9; 1.9 date 2003.08.27.17.49.49; author drochner; state Exp; branches 1.9.2.1; next 1.8; 1.8 date 2003.06.29.22.29.10; author fvdl; state Exp; branches 1.8.2.1; next 1.7; 1.7 date 2003.06.29.18.43.21; author thorpej; state Exp; branches; next 1.6; 1.6 date 2003.06.28.14.21.15; author darrenr; state Exp; branches; next 1.5; 1.5 date 2000.03.16.18.08.21; author jdolecek; state Exp; branches; next 1.4; 1.4 date 98.09.15.02.03.00; author rvb; state Exp; branches 1.4.12.1; next 1.3; 1.3 date 98.09.12.15.05.49; author rvb; state Exp; branches; next 1.2; 1.2 date 98.09.08.17.12.48; author rvb; state Exp; branches; next 1.1; 1.1 date 98.08.29.21.26.46; author rvb; state Exp; branches 1.1.1.1; next ; 1.20.6.1 date 2020.04.08.14.08.00; author martin; state Exp; branches; next ; commitid Qli2aW9E74UFuA3C; 1.20.12.1 date 2020.01.17.21.47.29; author ad; state Exp; branches; next ; commitid T9pwLWote7xbI5TB; 1.18.62.1 date 2017.12.03.11.36.52; author jdolecek; state Exp; branches; next ; commitid XcIYRZTAh1LmerhA; 1.18.82.1 date 2015.04.06.15.18.05; author skrll; state Exp; branches; next 1.18.82.2; 1.18.82.2 date 2017.08.28.17.51.57; author skrll; state Exp; branches; next ; commitid UQQpnjvcNkUZn05A; 1.17.2.1 date 2007.11.27.19.36.38; author joerg; state Exp; branches; next ; 1.17.4.1 date 2008.01.09.01.50.26; author matt; state Exp; branches; next ; 1.17.10.1 date 2007.12.08.18.18.33; author mjf; state Exp; branches; next ; 1.17.12.1 date 2007.07.31.21.14.19; author pooka; state dead; branches; next 1.17.12.2; 1.17.12.2 date 2007.07.31.21.14.20; author pooka; state Exp; branches; next ; 1.16.2.1 date 2007.08.15.13.48.06; author skrll; state Exp; branches; next ; 1.15.18.1 date 2007.07.15.13.26.58; author ad; state Exp; branches; next 1.15.18.2; 1.15.18.2 date 2007.08.20.21.27.22; author ad; state Exp; branches; next ; 1.14.4.1 date 2006.09.09.02.45.06; author rpaulo; state Exp; branches; next ; 1.14.6.1 date 2006.06.01.22.35.41; author kardel; state Exp; branches; next ; 1.14.8.1 date 2006.05.24.10.57.23; author yamt; state Exp; branches; next ; 1.14.10.1 date 2006.03.08.00.26.16; author elad; state Exp; branches; next ; 1.14.12.1 date 2006.05.24.15.48.26; author tron; state Exp; branches; next ; 1.13.4.1 date 2006.06.21.14.58.24; author yamt; state Exp; branches; next 1.13.4.2; 1.13.4.2 date 2007.09.03.14.31.47; author yamt; state Exp; branches; next 1.13.4.3; 1.13.4.3 date 2007.12.07.17.27.37; author yamt; state Exp; branches; next ; 1.12.4.1 date 2005.04.29.11.28.30; author kent; state Exp; branches; next ; 1.12.6.1 date 2005.03.19.08.33.28; author yamt; state Exp; branches; next ; 1.9.2.1 date 2004.05.23.10.45.45; author tron; state Exp; branches; next ; 1.8.2.1 date 2003.07.02.15.25.37; author darrenr; state Exp; branches; next 1.8.2.2; 1.8.2.2 date 2004.08.03.10.43.19; author skrll; state Exp; branches; next 1.8.2.3; 1.8.2.3 date 2004.08.24.17.57.36; author skrll; state Exp; branches; next 1.8.2.4; 1.8.2.4 date 2004.09.18.14.43.02; author skrll; state Exp; branches; next 1.8.2.5; 1.8.2.5 date 2004.09.21.13.24.46; author skrll; state Exp; branches; next 1.8.2.6; 1.8.2.6 date 2005.03.04.16.39.22; author skrll; state Exp; branches; next ; 1.4.12.1 date 2000.11.20.18.08.05; author bouyer; state Exp; branches; next ; 1.1.1.1 date 98.08.29.21.26.46; author rvb; state Exp; branches; next ; desc @@ 1.21 log @VFS_VGET(), VFS_ROOT(), VFS_FHTOVP(): give them a "int lktype" argument, to allow us to get shared locks (or no lock) on the returned vnode. Matches FreeBSD. @ text @/* $NetBSD: coda_vfsops.h,v 1.20 2017/06/08 22:29:59 chs Exp $ */ /* * * Coda: an Experimental Distributed File System * Release 3.1 * * Copyright (c) 1987-1998 Carnegie Mellon University * All Rights Reserved * * Permission to use, copy, modify and distribute this software and its * documentation is hereby granted, provided that both the copyright * notice and this permission notice appear in all copies of the * software, derivative works or modified versions, and any portions * thereof, and that both notices appear in supporting documentation, and * that credit is given to Carnegie Mellon University in all documents * and publicity pertaining to direct or indirect use of this code or its * derivatives. * * CODA IS AN EXPERIMENTAL SOFTWARE SYSTEM AND IS KNOWN TO HAVE BUGS, * SOME OF WHICH MAY HAVE SERIOUS CONSEQUENCES. CARNEGIE MELLON ALLOWS * FREE USE OF THIS SOFTWARE IN ITS "AS IS" CONDITION. CARNEGIE MELLON * DISCLAIMS ANY LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER * RESULTING DIRECTLY OR INDIRECTLY FROM THE USE OF THIS SOFTWARE OR OF * ANY DERIVATIVE WORK. * * Carnegie Mellon encourages users of this software to return any * improvements or extensions that they make, and to grant Carnegie * Mellon the rights to redistribute these changes without encumbrance. * * @@(#) coda/coda_vfsops.h,v 1.1.1.1 1998/08/29 21:26:46 rvb Exp $ */ /* * cfid structure: * This overlays the fid structure (see vfs.h) * Only used below and will probably go away. */ struct cfid { u_short cfid_len; u_short padding; CodaFid cfid_fid; }; struct mount; struct mbuf; int coda_vfsopstats_init(void); int coda_mount(struct mount *, const char *, void *, size_t *); int coda_start(struct mount *, int); int coda_unmount(struct mount *, int); int coda_root(struct mount *, int, struct vnode **); int coda_nb_statvfs(struct mount *, struct statvfs *); int coda_sync(struct mount *, int, kauth_cred_t); int coda_vget(struct mount *, ino_t, int, struct vnode **); int coda_loadvnode(struct mount *, struct vnode *, const void *, size_t, const void **); int coda_fhtovp(struct mount *, struct fid *, struct mbuf *, struct vnode **, int *, kauth_cred_t *, int); int coda_vptofh(struct vnode *, struct fid *); void coda_init(void); void coda_done(void); int coda_sysctl(int *, u_int, void *, size_t *, void *, size_t, struct lwp *); int getNewVnode(struct vnode **vpp); #ifdef SYSCTL_SETUP_PROTO SYSCTL_SETUP_PROTO(sysctl_vfs_coda_setup); #endif /* SYSCTL_SETUP_PROTO */ @ 1.20 log @add a forward declaration of struct mbuf. needed due to some other change I made for ZFS. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.19 2014/12/13 15:59:30 hannken Exp $ */ d53 1 a53 1 int coda_root(struct mount *, struct vnode **); d56 1 a56 1 int coda_vget(struct mount *, ino_t, struct vnode **); d60 1 a60 1 int *, kauth_cred_t *); @ 1.20.6.1 log @Merge changes from current as of 20200406 @ text @d1 1 a1 1 /* $NetBSD$ */ d53 1 a53 1 int coda_root(struct mount *, int, struct vnode **); d56 1 a56 1 int coda_vget(struct mount *, ino_t, int, struct vnode **); d60 1 a60 1 int *, kauth_cred_t *, int); @ 1.20.12.1 log @Sync with head. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.21 2020/01/17 20:08:06 ad Exp $ */ d53 1 a53 1 int coda_root(struct mount *, int, struct vnode **); d56 1 a56 1 int coda_vget(struct mount *, ino_t, int, struct vnode **); d60 1 a60 1 int *, kauth_cred_t *, int); @ 1.19 log @Change coda from hashlist to vcache. - Replace all hash list crawlers with vfs_vnode_iterator. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.18 2007/11/26 19:01:28 pooka Exp $ */ d47 1 @ 1.18 log @Remove the "struct lwp *" argument from all VFS and VOP interfaces. The general trend is to remove it from all kernel interfaces and this is a start. In case the calling lwp is desired, curlwp should be used. quick consensus on tech-kern @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.17 2007/07/31 21:14:19 pooka Exp $ */ d56 2 @ 1.18.62.1 log @update from HEAD @ text @d1 1 a1 1 /* $NetBSD$ */ a46 1 struct mbuf; a55 2 int coda_loadvnode(struct mount *, struct vnode *, const void *, size_t, const void **); @ 1.18.82.1 log @Sync with HEAD @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.19 2014/12/13 15:59:30 hannken Exp $ */ a55 2 int coda_loadvnode(struct mount *, struct vnode *, const void *, size_t, const void **); @ 1.18.82.2 log @Sync with HEAD @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.18.82.1 2015/04/06 15:18:05 skrll Exp $ */ a46 1 struct mbuf; @ 1.17 log @* nuke the nameidata parameter from VFS_MOUNT(). Nobody on tech-kern knew what it was supposed to be used for and wrstuden gave a go-ahead * while rototilling, convert file systems which went easily to use VFS_PROTOS() instead of manually prototyping the methods @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.16 2007/07/12 19:38:26 dsl Exp $ */ d49 3 a51 3 int coda_mount(struct mount *, const char *, void *, size_t *, struct lwp *); int coda_start(struct mount *, int, struct lwp *); int coda_unmount(struct mount *, int, struct lwp *); d53 2 a54 3 int coda_quotactl(struct mount *, int, uid_t, void *, struct lwp *); int coda_nb_statvfs(struct mount *, struct statvfs *, struct lwp *); int coda_sync(struct mount *, int, kauth_cred_t, struct lwp *); @ 1.17.12.1 log @file coda_vfsops.h was added on branch matt-mips64 on 2007-07-31 21:14:20 +0000 @ text @d1 68 @ 1.17.12.2 log @* nuke the nameidata parameter from VFS_MOUNT(). Nobody on tech-kern knew what it was supposed to be used for and wrstuden gave a go-ahead * while rototilling, convert file systems which went easily to use VFS_PROTOS() instead of manually prototyping the methods @ text @a0 68 /* $NetBSD: coda_vfsops.h,v 1.17 2007/07/31 21:14:19 pooka Exp $ */ /* * * Coda: an Experimental Distributed File System * Release 3.1 * * Copyright (c) 1987-1998 Carnegie Mellon University * All Rights Reserved * * Permission to use, copy, modify and distribute this software and its * documentation is hereby granted, provided that both the copyright * notice and this permission notice appear in all copies of the * software, derivative works or modified versions, and any portions * thereof, and that both notices appear in supporting documentation, and * that credit is given to Carnegie Mellon University in all documents * and publicity pertaining to direct or indirect use of this code or its * derivatives. * * CODA IS AN EXPERIMENTAL SOFTWARE SYSTEM AND IS KNOWN TO HAVE BUGS, * SOME OF WHICH MAY HAVE SERIOUS CONSEQUENCES. CARNEGIE MELLON ALLOWS * FREE USE OF THIS SOFTWARE IN ITS "AS IS" CONDITION. CARNEGIE MELLON * DISCLAIMS ANY LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER * RESULTING DIRECTLY OR INDIRECTLY FROM THE USE OF THIS SOFTWARE OR OF * ANY DERIVATIVE WORK. * * Carnegie Mellon encourages users of this software to return any * improvements or extensions that they make, and to grant Carnegie * Mellon the rights to redistribute these changes without encumbrance. * * @@(#) coda/coda_vfsops.h,v 1.1.1.1 1998/08/29 21:26:46 rvb Exp $ */ /* * cfid structure: * This overlays the fid structure (see vfs.h) * Only used below and will probably go away. */ struct cfid { u_short cfid_len; u_short padding; CodaFid cfid_fid; }; struct mount; int coda_vfsopstats_init(void); int coda_mount(struct mount *, const char *, void *, size_t *, struct lwp *); int coda_start(struct mount *, int, struct lwp *); int coda_unmount(struct mount *, int, struct lwp *); int coda_root(struct mount *, struct vnode **); int coda_quotactl(struct mount *, int, uid_t, void *, struct lwp *); int coda_nb_statvfs(struct mount *, struct statvfs *, struct lwp *); int coda_sync(struct mount *, int, kauth_cred_t, struct lwp *); int coda_vget(struct mount *, ino_t, struct vnode **); int coda_fhtovp(struct mount *, struct fid *, struct mbuf *, struct vnode **, int *, kauth_cred_t *); int coda_vptofh(struct vnode *, struct fid *); void coda_init(void); void coda_done(void); int coda_sysctl(int *, u_int, void *, size_t *, void *, size_t, struct lwp *); int getNewVnode(struct vnode **vpp); #ifdef SYSCTL_SETUP_PROTO SYSCTL_SETUP_PROTO(sysctl_vfs_coda_setup); #endif /* SYSCTL_SETUP_PROTO */ @ 1.17.4.1 log @sync with HEAD @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.17 2007/07/31 21:14:19 pooka Exp $ */ d49 3 a51 3 int coda_mount(struct mount *, const char *, void *, size_t *); int coda_start(struct mount *, int); int coda_unmount(struct mount *, int); d53 3 a55 2 int coda_nb_statvfs(struct mount *, struct statvfs *); int coda_sync(struct mount *, int, kauth_cred_t); @ 1.17.10.1 log @Sync with HEAD. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.18 2007/11/26 19:01:28 pooka Exp $ */ d49 3 a51 3 int coda_mount(struct mount *, const char *, void *, size_t *); int coda_start(struct mount *, int); int coda_unmount(struct mount *, int); d53 3 a55 2 int coda_nb_statvfs(struct mount *, struct statvfs *); int coda_sync(struct mount *, int, kauth_cred_t); @ 1.17.2.1 log @Sync with HEAD. amd64 Xen support needs testing. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.18 2007/11/26 19:01:28 pooka Exp $ */ d49 3 a51 3 int coda_mount(struct mount *, const char *, void *, size_t *); int coda_start(struct mount *, int); int coda_unmount(struct mount *, int); d53 3 a55 2 int coda_nb_statvfs(struct mount *, struct statvfs *); int coda_sync(struct mount *, int, kauth_cred_t); @ 1.16 log @Update coda for VFS_MOUNT() change @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.15 2006/05/14 21:24:49 elad Exp $ */ d49 1 a49 2 int coda_mount(struct mount *, const char *, void *, size_t *, struct nameidata *, struct lwp *); @ 1.16.2.1 log @Sync with HEAD. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.17 2007/07/31 21:14:19 pooka Exp $ */ d49 2 a50 1 int coda_mount(struct mount *, const char *, void *, size_t *, struct lwp *); @ 1.15 log @integrate kauth. @ text @d1 1 a1 1 /* $NetBSD$ */ d49 2 a50 2 int coda_mount(struct mount *, const char *, void *, struct nameidata *, struct lwp *); @ 1.15.18.1 log @Sync with head. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.15 2006/05/14 21:24:49 elad Exp $ */ d49 2 a50 2 int coda_mount(struct mount *, const char *, void *, size_t *, struct nameidata *, struct lwp *); @ 1.15.18.2 log @Sync with HEAD. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.15.18.1 2007/07/15 13:26:58 ad Exp $ */ d49 2 a50 1 int coda_mount(struct mount *, const char *, void *, size_t *, struct lwp *); @ 1.14 log @merge ktrace-lwp. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.8.2.6 2005/03/04 16:39:22 skrll Exp $ */ d56 1 a56 1 int coda_sync(struct mount *, int, struct ucred *, struct lwp *); d59 1 a59 1 int *, struct ucred **); @ 1.14.4.1 log @sync with head @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.15 2006/05/14 21:24:49 elad Exp $ */ d56 1 a56 1 int coda_sync(struct mount *, int, kauth_cred_t, struct lwp *); d59 1 a59 1 int *, kauth_cred_t *); @ 1.14.6.1 log @Sync with head. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.14 2005/12/11 12:19:50 christos Exp $ */ d56 1 a56 1 int coda_sync(struct mount *, int, kauth_cred_t, struct lwp *); d59 1 a59 1 int *, kauth_cred_t *); @ 1.14.12.1 log @Merge 2006-05-24 NetBSD-current into the "peter-altq" branch. @ text @d1 1 a1 1 /* $NetBSD$ */ d56 1 a56 1 int coda_sync(struct mount *, int, kauth_cred_t, struct lwp *); d59 1 a59 1 int *, kauth_cred_t *); @ 1.14.8.1 log @sync with head. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.14 2005/12/11 12:19:50 christos Exp $ */ d56 1 a56 1 int coda_sync(struct mount *, int, kauth_cred_t, struct lwp *); d59 1 a59 1 int *, kauth_cred_t *); @ 1.14.10.1 log @Adapt to kernel authorization KPI. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.14 2005/12/11 12:19:50 christos Exp $ */ d56 1 a56 1 int coda_sync(struct mount *, int, kauth_cred_t, struct lwp *); d59 1 a59 1 int *, kauth_cred_t *); @ 1.13 log @nuke trailing whitespace @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.12 2004/05/20 06:34:24 atatat Exp $ */ d50 3 a52 3 struct proc *); int coda_start(struct mount *, int, struct proc *); int coda_unmount(struct mount *, int, struct proc *); d54 3 a56 3 int coda_quotactl(struct mount *, int, uid_t, void *, struct proc *); int coda_nb_statvfs(struct mount *, struct statvfs *, struct proc *); int coda_sync(struct mount *, int, struct ucred *, struct proc *); d64 1 a64 1 struct proc *); @ 1.13.4.1 log @sync with head. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.13 2005/02/26 23:04:16 perry Exp $ */ d50 3 a52 3 struct lwp *); int coda_start(struct mount *, int, struct lwp *); int coda_unmount(struct mount *, int, struct lwp *); d54 3 a56 3 int coda_quotactl(struct mount *, int, uid_t, void *, struct lwp *); int coda_nb_statvfs(struct mount *, struct statvfs *, struct lwp *); int coda_sync(struct mount *, int, kauth_cred_t, struct lwp *); d59 1 a59 1 int *, kauth_cred_t *); d64 1 a64 1 struct lwp *); @ 1.13.4.2 log @sync with head. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.13.4.1 2006/06/21 14:58:24 yamt Exp $ */ d49 2 a50 1 int coda_mount(struct mount *, const char *, void *, size_t *, struct lwp *); @ 1.13.4.3 log @sync with head @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.13.4.2 2007/09/03 14:31:47 yamt Exp $ */ d49 3 a51 3 int coda_mount(struct mount *, const char *, void *, size_t *); int coda_start(struct mount *, int); int coda_unmount(struct mount *, int); d53 3 a55 2 int coda_nb_statvfs(struct mount *, struct statvfs *); int coda_sync(struct mount *, int, kauth_cred_t); @ 1.12 log @Tweak sysctl setup functions (the macros, actually) for use in lkms, and tweak lkminit_*.c (where applicable) to call them, and to call sysctl_teardown() when being unloaded. This consists of (1) making setup functions not be static when being compiled as lkms (change to sys/sysctl.h), (2) making prototypes visible for the various setup functions in header files (changes to various header files), and (3) making simple "load" and "unload" functions in the actual lkminit stuff. linux_sysctl.c also needs its root exposed (ie, made not static) for this (when built as an lkm). @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.11 2004/04/27 17:37:30 jrf Exp $ */ d4 1 a4 1 * d7 1 a7 1 * d10 1 a10 1 * d19 1 a19 1 * d26 1 a26 1 * d30 2 a31 2 * * @@(#) coda/coda_vfsops.h,v 1.1.1.1 1998/08/29 21:26:46 rvb Exp $ d49 1 a49 1 int coda_mount(struct mount *, const char *, void *, struct nameidata *, @ 1.12.4.1 log @sync with -current @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.13 2005/02/26 23:04:16 perry Exp $ */ d4 1 a4 1 * d7 1 a7 1 * d10 1 a10 1 * d19 1 a19 1 * d26 1 a26 1 * d30 2 a31 2 * * @@(#) coda/coda_vfsops.h,v 1.1.1.1 1998/08/29 21:26:46 rvb Exp $ d49 1 a49 1 int coda_mount(struct mount *, const char *, void *, struct nameidata *, @ 1.12.6.1 log @sync with head. xen and whitespace. xen part is not finished. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.12 2004/05/20 06:34:24 atatat Exp $ */ d4 1 a4 1 * d7 1 a7 1 * d10 1 a10 1 * d19 1 a19 1 * d26 1 a26 1 * d30 2 a31 2 * * @@(#) coda/coda_vfsops.h,v 1.1.1.1 1998/08/29 21:26:46 rvb Exp $ d49 1 a49 1 int coda_mount(struct mount *, const char *, void *, struct nameidata *, @ 1.11 log @First pass for some caddr_t removal and changes to get rid of it where we no longer use and/or need it - removed casts from unionfs, deadfs and fdesc (there are more to hunt down still) - changed vfs_quotactl args argumet from caddr_t to void * - changed vfs_quotactl structures/callers to reflect the api change Compiled fine and ran for about a day. Approved/reviewed by christos@@netbsd.org and gimpy@@netbsd.org. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.10 2004/04/21 01:05:35 christos Exp $ */ d66 4 @ 1.10 log @Replace the statfs() family of system calls with statvfs(). Retain binary compatibility. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.9 2003/08/27 17:49:49 drochner Exp $ */ d54 1 a54 1 int coda_quotactl(struct mount *, int, uid_t, caddr_t, struct proc *); @ 1.9 log @update for the protocol used by coda>=6, patches supplied by the coda-6.0.2 distribution, with small changes to support the old protocol optionally (options CODA_COMPAT_5) @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.8 2003/06/29 22:29:10 fvdl Exp $ */ d55 1 a55 1 int coda_nb_statfs(struct mount *, struct statfs *, struct proc *); @ 1.9.2.1 log @Pull up revision 1.12 (requested by atatat in ticket #374): Tweak sysctl setup functions (the macros, actually) for use in lkms, and tweak lkminit_*.c (where applicable) to call them, and to call sysctl_teardown() when being unloaded. This consists of (1) making setup functions not be static when being compiled as lkms (change to sys/sysctl.h), (2) making prototypes visible for the various setup functions in header files (changes to various header files), and (3) making simple "load" and "unload" functions in the actual lkminit stuff. linux_sysctl.c also needs its root exposed (ie, made not static) for this (when built as an lkm). @ text @d1 1 a1 1 /* $NetBSD$ */ a65 4 #ifdef SYSCTL_SETUP_PROTO SYSCTL_SETUP_PROTO(sysctl_vfs_coda_setup); #endif /* SYSCTL_SETUP_PROTO */ @ 1.8 log @Back out the lwp/ktrace changes. They contained a lot of colateral damage, and need to be examined and discussed more. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.5 2000/03/16 18:08:21 jdolecek Exp $ */ d43 1 a43 1 ViceFid cfid_fid; @ 1.8.2.1 log @Apply the aborted ktrace-lwp changes to a specific branch. This is just for others to review, I'm concerned that patch fuziness may have resulted in some errant code being generated but I'll look at that later by comparing the diff from the base to the branch with the file I attempt to apply to it. This will, at the very least, put the changes in a better context for others to review them and attempt to tinker with removing passing of 'struct lwp' through the kernel. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.8 2003/06/29 22:29:10 fvdl Exp $ */ d50 8 a57 8 struct lwp *); int coda_start(struct mount *, int, struct lwp *); int coda_unmount(struct mount *, int, struct lwp *); int coda_root(struct mount *, struct vnode **, struct lwp *); int coda_quotactl(struct mount *, int, uid_t, caddr_t, struct lwp *); int coda_nb_statfs(struct mount *, struct statfs *, struct lwp *); int coda_sync(struct mount *, int, struct ucred *, struct lwp *); int coda_vget(struct mount *, ino_t, struct vnode **, struct lwp *); d59 1 a59 1 int *, struct ucred **, struct lwp *); d64 1 a64 1 struct lwp *); @ 1.8.2.2 log @Sync with HEAD @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.8.2.1 2003/07/02 15:25:37 darrenr Exp $ */ d43 1 a43 1 CodaFid cfid_fid; d54 2 a55 2 int coda_quotactl(struct mount *, int, uid_t, void *, struct lwp *); int coda_nb_statvfs(struct mount *, struct statvfs *, struct lwp *); a65 4 #ifdef SYSCTL_SETUP_PROTO SYSCTL_SETUP_PROTO(sysctl_vfs_coda_setup); #endif /* SYSCTL_SETUP_PROTO */ @ 1.8.2.3 log @Undo part of the ktrace/lwp changes. In particular: * Remove the "lwp *" argument that was added to vget(). Turns out that nothing actually used it! * Remove the "lwp *" arguments that were added to VFS_ROOT(), VFS_VGET(), and VFS_FHTOVP(); all they did was pass it to vget() (which, as noted above, didn't use it). * Remove all of the "lwp *" arguments to internal functions that were added just to appease the above. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.8.2.2 2004/08/03 10:43:19 skrll Exp $ */ d53 1 a53 1 int coda_root(struct mount *, struct vnode **); d57 1 a57 1 int coda_vget(struct mount *, ino_t, struct vnode **); d59 1 a59 1 int *, struct ucred **); @ 1.8.2.4 log @Sync with HEAD. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.12 2004/05/20 06:34:24 atatat Exp $ */ d50 3 a52 3 struct proc *); int coda_start(struct mount *, int, struct proc *); int coda_unmount(struct mount *, int, struct proc *); d54 3 a56 3 int coda_quotactl(struct mount *, int, uid_t, void *, struct proc *); int coda_nb_statvfs(struct mount *, struct statvfs *, struct proc *); int coda_sync(struct mount *, int, struct ucred *, struct proc *); d64 1 a64 1 struct proc *); @ 1.8.2.5 log @Fix the sync with head I botched. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.8.2.3 2004/08/24 17:57:36 skrll Exp $ */ d50 3 a52 3 struct lwp *); int coda_start(struct mount *, int, struct lwp *); int coda_unmount(struct mount *, int, struct lwp *); d54 3 a56 3 int coda_quotactl(struct mount *, int, uid_t, void *, struct lwp *); int coda_nb_statvfs(struct mount *, struct statvfs *, struct lwp *); int coda_sync(struct mount *, int, struct ucred *, struct lwp *); d64 1 a64 1 struct lwp *); @ 1.8.2.6 log @Sync with HEAD. Hi Perry! @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.8.2.5 2004/09/21 13:24:46 skrll Exp $ */ d4 1 a4 1 * d7 1 a7 1 * d10 1 a10 1 * d19 1 a19 1 * d26 1 a26 1 * d30 2 a31 2 * * @@(#) coda/coda_vfsops.h,v 1.1.1.1 1998/08/29 21:26:46 rvb Exp $ d49 1 a49 1 int coda_mount(struct mount *, const char *, void *, struct nameidata *, @ 1.7 log @Undo part of the ktrace/lwp changes. In particular: * Remove the "lwp *" argument that was added to vget(). Turns out that nothing actually used it! * Remove the "lwp *" arguments that were added to VFS_ROOT(), VFS_VGET(), and VFS_FHTOVP(); all they did was pass it to vget() (which, as noted above, didn't use it). * Remove all of the "lwp *" arguments to internal functions that were added just to appease the above. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.6 2003/06/28 14:21:15 darrenr Exp $ */ d50 3 a52 3 struct lwp *); int coda_start(struct mount *, int, struct lwp *); int coda_unmount(struct mount *, int, struct lwp *); d54 3 a56 3 int coda_quotactl(struct mount *, int, uid_t, caddr_t, struct lwp *); int coda_nb_statfs(struct mount *, struct statfs *, struct lwp *); int coda_sync(struct mount *, int, struct ucred *, struct lwp *); d64 1 a64 1 struct lwp *); @ 1.6 log @Pass lwp pointers throughtout the kernel, as required, so that the lwpid can be inserted into ktrace records. The general change has been to replace "struct proc *" with "struct lwp *" in various function prototypes, pass the lwp through and use l_proc to get the process pointer when needed. Bump the kernel rev up to 1.6V @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.5 2000/03/16 18:08:21 jdolecek Exp $ */ d53 1 a53 1 int coda_root(struct mount *, struct vnode **, struct lwp *); d57 1 a57 1 int coda_vget(struct mount *, ino_t, struct vnode **, struct lwp *); d59 1 a59 1 int *, struct ucred **, struct lwp *); @ 1.5 log @Add new VFS op routine - vfs_done and call it on filesystem detach in vfs_detach(). vfs_done may free global filesystem's resources, typically those allocated in respective filesystem's init function. Needed so those filesystems which went in via LKM have a chance to clean after themselves before unloading. This fixes random panics when LKM for filesystem using pools was loaded and unloaded several times. For each leaf filesystem, add appropriate vfs_done routine. @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.4 1998/09/15 02:03:00 rvb Exp $ */ d50 8 a57 8 struct proc *); int coda_start(struct mount *, int, struct proc *); int coda_unmount(struct mount *, int, struct proc *); int coda_root(struct mount *, struct vnode **); int coda_quotactl(struct mount *, int, uid_t, caddr_t, struct proc *); int coda_nb_statfs(struct mount *, struct statfs *, struct proc *); int coda_sync(struct mount *, int, struct ucred *, struct proc *); int coda_vget(struct mount *, ino_t, struct vnode **); d59 1 a59 1 int *, struct ucred **); d64 1 a64 1 struct proc *); @ 1.4 log @Final piece of rename cfs->coda @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.3 1998/09/12 15:05:49 rvb Exp $ */ d62 1 @ 1.4.12.1 log @Update thorpej_scsipi to -current as of a month ago @ text @d1 1 a1 1 /* $NetBSD: coda_vfsops.h,v 1.5 2000/03/16 18:08:21 jdolecek Exp $ */ a61 1 void coda_done(void); @ 1.3 log @Change cfs/CFS in symbols, strings and constants to coda/CODA to avoid fs conflicts. @ text @d1 1 a1 1 /* $NetBSD: cfs_vfsops.h,v 1.2 1998/09/08 17:12:48 rvb Exp $ */ d31 1 a31 1 * @@(#) cfs/cfs_vfsops.h,v 1.1.1.1 1998/08/29 21:26:46 rvb Exp $ @ 1.2 log @Pass2 complete @ text @d1 1 a1 1 /* $NetBSD: $ */ d48 2 a49 2 int cfs_vfsopstats_init(void); int cfs_mount(struct mount *, const char *, void *, struct nameidata *, d51 8 a58 8 int cfs_start(struct mount *, int, struct proc *); int cfs_unmount(struct mount *, int, struct proc *); int cfs_root(struct mount *, struct vnode **); int cfs_quotactl(struct mount *, int, uid_t, caddr_t, struct proc *); int cfs_nb_statfs(struct mount *, struct statfs *, struct proc *); int cfs_sync(struct mount *, int, struct ucred *, struct proc *); int cfs_vget(struct mount *, ino_t, struct vnode **); int cfs_fhtovp(struct mount *, struct fid *, struct mbuf *, struct vnode **, d60 3 a62 3 int cfs_vptofh(struct vnode *, struct fid *); void cfs_init(void); int cfs_sysctl(int *, u_int, void *, size_t *, void *, size_t, @ 1.1 log @Initial revision @ text @d1 2 d4 29 a32 29 Coda: an Experimental Distributed File System Release 3.1 Copyright (c) 1987-1998 Carnegie Mellon University All Rights Reserved Permission to use, copy, modify and distribute this software and its documentation is hereby granted, provided that both the copyright notice and this permission notice appear in all copies of the software, derivative works or modified versions, and any portions thereof, and that both notices appear in supporting documentation, and that credit is given to Carnegie Mellon University in all documents and publicity pertaining to direct or indirect use of this code or its derivatives. CODA IS AN EXPERIMENTAL SOFTWARE SYSTEM AND IS KNOWN TO HAVE BUGS, SOME OF WHICH MAY HAVE SERIOUS CONSEQUENCES. CARNEGIE MELLON ALLOWS FREE USE OF THIS SOFTWARE IN ITS "AS IS" CONDITION. CARNEGIE MELLON DISCLAIMS ANY LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING DIRECTLY OR INDIRECTLY FROM THE USE OF THIS SOFTWARE OR OF ANY DERIVATIVE WORK. Carnegie Mellon encourages users of this software to return any improvements or extensions that they make, and to grant Carnegie Mellon the rights to redistribute these changes without encumbrance. */ /* $Header: /afs/cs/project/coda-src/cvs/coda/kernel-src/vfs/netbsd/cfs/cfs_vfsops.h,v 1.9 1998/08/28 18:12:22 rvb Exp $ */ a45 1 a48 1 #ifdef NetBSD1_3 a50 4 #else int cfs_mount(struct mount *, char *, caddr_t, struct nameidata *, struct proc *); #endif a60 1 #ifdef __NetBSD__ a61 8 #elif defined(__FreeBSD__) #ifdef __FreeBSD_version int cfs_init(struct vfsconf *vfsp); #else int cfs_init(void); #endif #endif #if defined(__NetBSD__) && defined(NetBSD1_3) && (NetBSD1_3 >= 7) a63 1 #endif @ 1.1.1.1 log @Very Preliminary Coda @ text @@