1/* $NetBSD$ */ 2 3/* 4 * Warning: DO NOT EDIT! This file is automatically generated! 5 * (Modifications made here may easily be lost!) 6 * 7 * Created from the file: 8 * NetBSD: vnode_if.src,v 1.62 2011/07/11 08:23:00 hannken Exp 9 * by the script: 10 * NetBSD: vnode_if.sh,v 1.58 2011/07/11 08:23:00 hannken Exp 11 */ 12 13/* 14 * Copyright (c) 1992, 1993, 1994, 1995 15 * The Regents of the University of California. All rights reserved. 16 * 17 * Redistribution and use in source and binary forms, with or without 18 * modification, are permitted provided that the following conditions 19 * are met: 20 * 1. Redistributions of source code must retain the above copyright 21 * notice, this list of conditions and the following disclaimer. 22 * 2. Redistributions in binary form must reproduce the above copyright 23 * notice, this list of conditions and the following disclaimer in the 24 * documentation and/or other materials provided with the distribution. 25 * 3. Neither the name of the University nor the names of its contributors 26 * may be used to endorse or promote products derived from this software 27 * without specific prior written permission. 28 * 29 * THIS SOFTWARE IS PROVIDED BY THE REGENTS AND CONTRIBUTORS ``AS IS'' AND 30 * ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 31 * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE 32 * ARE DISCLAIMED. IN NO EVENT SHALL THE REGENTS OR CONTRIBUTORS BE LIABLE 33 * FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL 34 * DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS 35 * OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) 36 * HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT 37 * LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY 38 * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF 39 * SUCH DAMAGE. 40 */ 41 42#include <sys/cdefs.h> 43__KERNEL_RCSID(0, "$NetBSD$"); 44 45#include <sys/param.h> 46#include <sys/mount.h> 47#include <sys/buf.h> 48#include <sys/vnode.h> 49#include <sys/lock.h> 50#include <rump/rumpvnode_if.h> 51#include "rump_private.h" 52 53int 54RUMP_VOP_BWRITE(struct vnode *vp, 55 struct buf *bp) 56{ 57 int error; 58 59 rump_schedule(); 60 error = VOP_BWRITE(vp, bp); 61 rump_unschedule(); 62 63 return error; 64} 65 66int 67RUMP_VOP_LOOKUP(struct vnode *dvp, 68 struct vnode **vpp, 69 struct componentname *cnp) 70{ 71 int error; 72 73 rump_schedule(); 74 error = VOP_LOOKUP(dvp, vpp, cnp); 75 rump_unschedule(); 76 77 return error; 78} 79 80int 81RUMP_VOP_CREATE(struct vnode *dvp, 82 struct vnode **vpp, 83 struct componentname *cnp, 84 struct vattr *vap) 85{ 86 int error; 87 88 rump_schedule(); 89 error = VOP_CREATE(dvp, vpp, cnp, vap); 90 rump_unschedule(); 91 92 return error; 93} 94 95int 96RUMP_VOP_MKNOD(struct vnode *dvp, 97 struct vnode **vpp, 98 struct componentname *cnp, 99 struct vattr *vap) 100{ 101 int error; 102 103 rump_schedule(); 104 error = VOP_MKNOD(dvp, vpp, cnp, vap); 105 rump_unschedule(); 106 107 return error; 108} 109 110int 111RUMP_VOP_OPEN(struct vnode *vp, 112 int mode, 113 struct kauth_cred *cred) 114{ 115 int error; 116 117 rump_schedule(); 118 error = VOP_OPEN(vp, mode, cred); 119 rump_unschedule(); 120 121 return error; 122} 123 124int 125RUMP_VOP_CLOSE(struct vnode *vp, 126 int fflag, 127 struct kauth_cred *cred) 128{ 129 int error; 130 131 rump_schedule(); 132 error = VOP_CLOSE(vp, fflag, cred); 133 rump_unschedule(); 134 135 return error; 136} 137 138int 139RUMP_VOP_ACCESS(struct vnode *vp, 140 int mode, 141 struct kauth_cred *cred) 142{ 143 int error; 144 145 rump_schedule(); 146 error = VOP_ACCESS(vp, mode, cred); 147 rump_unschedule(); 148 149 return error; 150} 151 152int 153RUMP_VOP_GETATTR(struct vnode *vp, 154 struct vattr *vap, 155 struct kauth_cred *cred) 156{ 157 int error; 158 159 rump_schedule(); 160 error = VOP_GETATTR(vp, vap, cred); 161 rump_unschedule(); 162 163 return error; 164} 165 166int 167RUMP_VOP_SETATTR(struct vnode *vp, 168 struct vattr *vap, 169 struct kauth_cred *cred) 170{ 171 int error; 172 173 rump_schedule(); 174 error = VOP_SETATTR(vp, vap, cred); 175 rump_unschedule(); 176 177 return error; 178} 179 180int 181RUMP_VOP_READ(struct vnode *vp, 182 struct uio *uio, 183 int ioflag, 184 struct kauth_cred *cred) 185{ 186 int error; 187 188 rump_schedule(); 189 error = VOP_READ(vp, uio, ioflag, cred); 190 rump_unschedule(); 191 192 return error; 193} 194 195int 196RUMP_VOP_WRITE(struct vnode *vp, 197 struct uio *uio, 198 int ioflag, 199 struct kauth_cred *cred) 200{ 201 int error; 202 203 rump_schedule(); 204 error = VOP_WRITE(vp, uio, ioflag, cred); 205 rump_unschedule(); 206 207 return error; 208} 209 210int 211RUMP_VOP_IOCTL(struct vnode *vp, 212 u_long command, 213 void *data, 214 int fflag, 215 struct kauth_cred *cred) 216{ 217 int error; 218 219 rump_schedule(); 220 error = VOP_IOCTL(vp, command, data, fflag, cred); 221 rump_unschedule(); 222 223 return error; 224} 225 226int 227RUMP_VOP_FCNTL(struct vnode *vp, 228 u_int command, 229 void *data, 230 int fflag, 231 struct kauth_cred *cred) 232{ 233 int error; 234 235 rump_schedule(); 236 error = VOP_FCNTL(vp, command, data, fflag, cred); 237 rump_unschedule(); 238 239 return error; 240} 241 242int 243RUMP_VOP_POLL(struct vnode *vp, 244 int events) 245{ 246 int error; 247 248 rump_schedule(); 249 error = VOP_POLL(vp, events); 250 rump_unschedule(); 251 252 return error; 253} 254 255int 256RUMP_VOP_KQFILTER(struct vnode *vp, 257 struct knote *kn) 258{ 259 int error; 260 261 rump_schedule(); 262 error = VOP_KQFILTER(vp, kn); 263 rump_unschedule(); 264 265 return error; 266} 267 268int 269RUMP_VOP_REVOKE(struct vnode *vp, 270 int flags) 271{ 272 int error; 273 274 rump_schedule(); 275 error = VOP_REVOKE(vp, flags); 276 rump_unschedule(); 277 278 return error; 279} 280 281int 282RUMP_VOP_MMAP(struct vnode *vp, 283 int prot, 284 struct kauth_cred *cred) 285{ 286 int error; 287 288 rump_schedule(); 289 error = VOP_MMAP(vp, prot, cred); 290 rump_unschedule(); 291 292 return error; 293} 294 295int 296RUMP_VOP_FSYNC(struct vnode *vp, 297 struct kauth_cred *cred, 298 int flags, 299 off_t offlo, 300 off_t offhi) 301{ 302 int error; 303 304 rump_schedule(); 305 error = VOP_FSYNC(vp, cred, flags, offlo, offhi); 306 rump_unschedule(); 307 308 return error; 309} 310 311int 312RUMP_VOP_SEEK(struct vnode *vp, 313 off_t oldoff, 314 off_t newoff, 315 struct kauth_cred *cred) 316{ 317 int error; 318 319 rump_schedule(); 320 error = VOP_SEEK(vp, oldoff, newoff, cred); 321 rump_unschedule(); 322 323 return error; 324} 325 326int 327RUMP_VOP_REMOVE(struct vnode *dvp, 328 struct vnode *vp, 329 struct componentname *cnp) 330{ 331 int error; 332 333 rump_schedule(); 334 error = VOP_REMOVE(dvp, vp, cnp); 335 rump_unschedule(); 336 337 return error; 338} 339 340int 341RUMP_VOP_LINK(struct vnode *dvp, 342 struct vnode *vp, 343 struct componentname *cnp) 344{ 345 int error; 346 347 rump_schedule(); 348 error = VOP_LINK(dvp, vp, cnp); 349 rump_unschedule(); 350 351 return error; 352} 353 354int 355RUMP_VOP_RENAME(struct vnode *fdvp, 356 struct vnode *fvp, 357 struct componentname *fcnp, 358 struct vnode *tdvp, 359 struct vnode *tvp, 360 struct componentname *tcnp) 361{ 362 int error; 363 364 rump_schedule(); 365 error = VOP_RENAME(fdvp, fvp, fcnp, tdvp, tvp, tcnp); 366 rump_unschedule(); 367 368 return error; 369} 370 371int 372RUMP_VOP_MKDIR(struct vnode *dvp, 373 struct vnode **vpp, 374 struct componentname *cnp, 375 struct vattr *vap) 376{ 377 int error; 378 379 rump_schedule(); 380 error = VOP_MKDIR(dvp, vpp, cnp, vap); 381 rump_unschedule(); 382 383 return error; 384} 385 386int 387RUMP_VOP_RMDIR(struct vnode *dvp, 388 struct vnode *vp, 389 struct componentname *cnp) 390{ 391 int error; 392 393 rump_schedule(); 394 error = VOP_RMDIR(dvp, vp, cnp); 395 rump_unschedule(); 396 397 return error; 398} 399 400int 401RUMP_VOP_SYMLINK(struct vnode *dvp, 402 struct vnode **vpp, 403 struct componentname *cnp, 404 struct vattr *vap, 405 char *target) 406{ 407 int error; 408 409 rump_schedule(); 410 error = VOP_SYMLINK(dvp, vpp, cnp, vap, target); 411 rump_unschedule(); 412 413 return error; 414} 415 416int 417RUMP_VOP_READDIR(struct vnode *vp, 418 struct uio *uio, 419 struct kauth_cred *cred, 420 int *eofflag, 421 off_t **cookies, 422 int *ncookies) 423{ 424 int error; 425 426 rump_schedule(); 427 error = VOP_READDIR(vp, uio, cred, eofflag, cookies, ncookies); 428 rump_unschedule(); 429 430 return error; 431} 432 433int 434RUMP_VOP_READLINK(struct vnode *vp, 435 struct uio *uio, 436 struct kauth_cred *cred) 437{ 438 int error; 439 440 rump_schedule(); 441 error = VOP_READLINK(vp, uio, cred); 442 rump_unschedule(); 443 444 return error; 445} 446 447int 448RUMP_VOP_ABORTOP(struct vnode *dvp, 449 struct componentname *cnp) 450{ 451 int error; 452 453 rump_schedule(); 454 error = VOP_ABORTOP(dvp, cnp); 455 rump_unschedule(); 456 457 return error; 458} 459 460int 461RUMP_VOP_INACTIVE(struct vnode *vp, 462 bool *recycle) 463{ 464 int error; 465 466 rump_schedule(); 467 error = VOP_INACTIVE(vp, recycle); 468 rump_unschedule(); 469 470 return error; 471} 472 473int 474RUMP_VOP_RECLAIM(struct vnode *vp) 475{ 476 int error; 477 478 rump_schedule(); 479 error = VOP_RECLAIM(vp); 480 rump_unschedule(); 481 482 return error; 483} 484 485int 486RUMP_VOP_LOCK(struct vnode *vp, 487 int flags) 488{ 489 int error; 490 491 rump_schedule(); 492 error = VOP_LOCK(vp, flags); 493 rump_unschedule(); 494 495 return error; 496} 497 498int 499RUMP_VOP_UNLOCK(struct vnode *vp) 500{ 501 int error; 502 503 rump_schedule(); 504 error = VOP_UNLOCK(vp); 505 rump_unschedule(); 506 507 return error; 508} 509 510int 511RUMP_VOP_BMAP(struct vnode *vp, 512 daddr_t bn, 513 struct vnode **vpp, 514 daddr_t *bnp, 515 int *runp) 516{ 517 int error; 518 519 rump_schedule(); 520 error = VOP_BMAP(vp, bn, vpp, bnp, runp); 521 rump_unschedule(); 522 523 return error; 524} 525 526int 527RUMP_VOP_STRATEGY(struct vnode *vp, 528 struct buf *bp) 529{ 530 int error; 531 532 rump_schedule(); 533 error = VOP_STRATEGY(vp, bp); 534 rump_unschedule(); 535 536 return error; 537} 538 539int 540RUMP_VOP_PRINT(struct vnode *vp) 541{ 542 int error; 543 544 rump_schedule(); 545 error = VOP_PRINT(vp); 546 rump_unschedule(); 547 548 return error; 549} 550 551int 552RUMP_VOP_ISLOCKED(struct vnode *vp) 553{ 554 int error; 555 556 rump_schedule(); 557 error = VOP_ISLOCKED(vp); 558 rump_unschedule(); 559 560 return error; 561} 562 563int 564RUMP_VOP_PATHCONF(struct vnode *vp, 565 int name, 566 register_t *retval) 567{ 568 int error; 569 570 rump_schedule(); 571 error = VOP_PATHCONF(vp, name, retval); 572 rump_unschedule(); 573 574 return error; 575} 576 577int 578RUMP_VOP_ADVLOCK(struct vnode *vp, 579 void *id, 580 int op, 581 struct flock *fl, 582 int flags) 583{ 584 int error; 585 586 rump_schedule(); 587 error = VOP_ADVLOCK(vp, id, op, fl, flags); 588 rump_unschedule(); 589 590 return error; 591} 592 593int 594RUMP_VOP_WHITEOUT(struct vnode *dvp, 595 struct componentname *cnp, 596 int flags) 597{ 598 int error; 599 600 rump_schedule(); 601 error = VOP_WHITEOUT(dvp, cnp, flags); 602 rump_unschedule(); 603 604 return error; 605} 606 607int 608RUMP_VOP_GETPAGES(struct vnode *vp, 609 off_t offset, 610 struct vm_page **m, 611 int *count, 612 int centeridx, 613 int access_type, 614 int advice, 615 int flags) 616{ 617 int error; 618 619 rump_schedule(); 620 error = VOP_GETPAGES(vp, offset, m, count, centeridx, access_type, advice, flags); 621 rump_unschedule(); 622 623 return error; 624} 625 626int 627RUMP_VOP_PUTPAGES(struct vnode *vp, 628 off_t offlo, 629 off_t offhi, 630 int flags) 631{ 632 int error; 633 634 rump_schedule(); 635 error = VOP_PUTPAGES(vp, offlo, offhi, flags); 636 rump_unschedule(); 637 638 return error; 639} 640 641int 642RUMP_VOP_CLOSEEXTATTR(struct vnode *vp, 643 int commit, 644 struct kauth_cred *cred) 645{ 646 int error; 647 648 rump_schedule(); 649 error = VOP_CLOSEEXTATTR(vp, commit, cred); 650 rump_unschedule(); 651 652 return error; 653} 654 655int 656RUMP_VOP_GETEXTATTR(struct vnode *vp, 657 int attrnamespace, 658 const char *name, 659 struct uio *uio, 660 size_t *size, 661 struct kauth_cred *cred) 662{ 663 int error; 664 665 rump_schedule(); 666 error = VOP_GETEXTATTR(vp, attrnamespace, name, uio, size, cred); 667 rump_unschedule(); 668 669 return error; 670} 671 672int 673RUMP_VOP_LISTEXTATTR(struct vnode *vp, 674 int attrnamespace, 675 struct uio *uio, 676 size_t *size, 677 int flag, 678 struct kauth_cred *cred) 679{ 680 int error; 681 682 rump_schedule(); 683 error = VOP_LISTEXTATTR(vp, attrnamespace, uio, size, flag, cred); 684 rump_unschedule(); 685 686 return error; 687} 688 689int 690RUMP_VOP_OPENEXTATTR(struct vnode *vp, 691 struct kauth_cred *cred) 692{ 693 int error; 694 695 rump_schedule(); 696 error = VOP_OPENEXTATTR(vp, cred); 697 rump_unschedule(); 698 699 return error; 700} 701 702int 703RUMP_VOP_DELETEEXTATTR(struct vnode *vp, 704 int attrnamespace, 705 const char *name, 706 struct kauth_cred *cred) 707{ 708 int error; 709 710 rump_schedule(); 711 error = VOP_DELETEEXTATTR(vp, attrnamespace, name, cred); 712 rump_unschedule(); 713 714 return error; 715} 716 717int 718RUMP_VOP_SETEXTATTR(struct vnode *vp, 719 int attrnamespace, 720 const char *name, 721 struct uio *uio, 722 struct kauth_cred *cred) 723{ 724 int error; 725 726 rump_schedule(); 727 error = VOP_SETEXTATTR(vp, attrnamespace, name, uio, cred); 728 rump_unschedule(); 729 730 return error; 731} 732