vfs_init.c (4ae860afdeeb831297f634e4da397db9aba0a923) | vfs_init.c (f1d19042b082d95f07a0027e596ba2405aa8a9a5) |
---|---|
1/* 2 * Copyright (c) 1989, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * This code is derived from software contributed 6 * to Berkeley by John Heidemann of the UCLA Ficus project. 7 * 8 * Source: * @(#)i405_init.c 2.10 92/04/27 UCLA Ficus project --- 22 unchanged lines hidden (view full) --- 31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 32 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 33 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 34 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 35 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 36 * SUCH DAMAGE. 37 * 38 * @(#)vfs_init.c 8.3 (Berkeley) 1/4/94 | 1/* 2 * Copyright (c) 1989, 1993 3 * The Regents of the University of California. All rights reserved. 4 * 5 * This code is derived from software contributed 6 * to Berkeley by John Heidemann of the UCLA Ficus project. 7 * 8 * Source: * @(#)i405_init.c 2.10 92/04/27 UCLA Ficus project --- 22 unchanged lines hidden (view full) --- 31 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 32 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 33 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 34 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 35 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 36 * SUCH DAMAGE. 37 * 38 * @(#)vfs_init.c 8.3 (Berkeley) 1/4/94 |
39 * $Id: vfs_init.c,v 1.39 1998/11/10 09:04:09 peter Exp $ | 39 * $Id: vfs_init.c,v 1.40 1998/11/15 15:18:30 bde Exp $ |
40 */ 41 42 43#include <sys/param.h> 44#include <sys/systm.h> 45#include <sys/kernel.h> 46#include <sys/mount.h> 47#include <sys/sysctl.h> --- 109 unchanged lines hidden (view full) --- 157vfs_add_vnodeops(void *data) 158{ 159 struct vnodeopv_desc *opv; 160 struct vnodeopv_desc **newopv; 161 struct vnodeop_desc **newop; 162 int *newref; 163 vop_t **opv_desc_vector; 164 struct vnodeop_desc *desc; | 40 */ 41 42 43#include <sys/param.h> 44#include <sys/systm.h> 45#include <sys/kernel.h> 46#include <sys/mount.h> 47#include <sys/sysctl.h> --- 109 unchanged lines hidden (view full) --- 157vfs_add_vnodeops(void *data) 158{ 159 struct vnodeopv_desc *opv; 160 struct vnodeopv_desc **newopv; 161 struct vnodeop_desc **newop; 162 int *newref; 163 vop_t **opv_desc_vector; 164 struct vnodeop_desc *desc; |
165 struct vnodeopv_entry_desc *opve_descp; 166 int i, j, k; | 165 int i, j; |
167 168 opv = (struct vnodeopv_desc *)data; 169 MALLOC(newopv, struct vnodeopv_desc **, 170 (vnodeopv_num + 1) * sizeof(*newopv), M_VNODE, M_WAITOK); 171 if (newopv == NULL) 172 panic("vfs_add_vnodeops: no memory"); 173 if (vnodeopv_descs) { 174 bcopy(vnodeopv_descs, newopv, vnodeopv_num * sizeof(*newopv)); --- 50 unchanged lines hidden (view full) --- 225vfs_rm_vnodeops(void *data) 226{ 227 struct vnodeopv_desc *opv; 228 struct vnodeopv_desc **newopv; 229 struct vnodeop_desc **newop; 230 int *newref; 231 vop_t **opv_desc_vector; 232 struct vnodeop_desc *desc; | 166 167 opv = (struct vnodeopv_desc *)data; 168 MALLOC(newopv, struct vnodeopv_desc **, 169 (vnodeopv_num + 1) * sizeof(*newopv), M_VNODE, M_WAITOK); 170 if (newopv == NULL) 171 panic("vfs_add_vnodeops: no memory"); 172 if (vnodeopv_descs) { 173 bcopy(vnodeopv_descs, newopv, vnodeopv_num * sizeof(*newopv)); --- 50 unchanged lines hidden (view full) --- 224vfs_rm_vnodeops(void *data) 225{ 226 struct vnodeopv_desc *opv; 227 struct vnodeopv_desc **newopv; 228 struct vnodeop_desc **newop; 229 int *newref; 230 vop_t **opv_desc_vector; 231 struct vnodeop_desc *desc; |
233 struct vnodeopv_entry_desc *opve_descp; | |
234 int i, j, k; 235 236 opv = (struct vnodeopv_desc *)data; 237 /* Lower ref counts on descs in the table and release if zero */ 238 opv_desc_vector = *(opv->opv_desc_vector_p); 239 for (i = 0; (desc = opv->opv_desc_ops[i].opve_op); i++) { 240 for (j = 0; j < num_op_descs; j++) { 241 if (desc == vfs_op_descs[j]) { --- 195 unchanged lines hidden (view full) --- 437 maxvfsconf = maxtypenum + 1; 438 return 0; 439} 440 441int 442vfs_modevent(module_t mod, int type, void *data) 443{ 444 struct vfsconf *vfc; | 232 int i, j, k; 233 234 opv = (struct vnodeopv_desc *)data; 235 /* Lower ref counts on descs in the table and release if zero */ 236 opv_desc_vector = *(opv->opv_desc_vector_p); 237 for (i = 0; (desc = opv->opv_desc_ops[i].opve_op); i++) { 238 for (j = 0; j < num_op_descs; j++) { 239 if (desc == vfs_op_descs[j]) { --- 195 unchanged lines hidden (view full) --- 435 maxvfsconf = maxtypenum + 1; 436 return 0; 437} 438 439int 440vfs_modevent(module_t mod, int type, void *data) 441{ 442 struct vfsconf *vfc; |
445 struct vnodeopv_desc *opv; 446 int i; | |
447 int error = 0; 448 449 vfc = (struct vfsconf *)data; 450 451 switch (type) { 452 case MOD_LOAD: 453 if (vfc) 454 error = vfs_register(vfc); 455 break; 456 457 case MOD_UNLOAD: 458 if (vfc) 459 error = vfs_unregister(vfc); 460 break; 461 default: /* including MOD_SHUTDOWN */ 462 break; 463 } 464 return (error); 465} | 443 int error = 0; 444 445 vfc = (struct vfsconf *)data; 446 447 switch (type) { 448 case MOD_LOAD: 449 if (vfc) 450 error = vfs_register(vfc); 451 break; 452 453 case MOD_UNLOAD: 454 if (vfc) 455 error = vfs_unregister(vfc); 456 break; 457 default: /* including MOD_SHUTDOWN */ 458 break; 459 } 460 return (error); 461} |