The Design and Implementation of the FreeBSD Operating System, Second Edition
Now available: The Design and Implementation of the FreeBSD Operating System (Second Edition)


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]

FreeBSD/Linux Kernel Cross Reference
sys/contrib/openzfs/include/os/linux/zfs/sys/zfs_vnops_os.h

Version: -  FREEBSD  -  FREEBSD-13-STABLE  -  FREEBSD-13-0  -  FREEBSD-12-STABLE  -  FREEBSD-12-0  -  FREEBSD-11-STABLE  -  FREEBSD-11-0  -  FREEBSD-10-STABLE  -  FREEBSD-10-0  -  FREEBSD-9-STABLE  -  FREEBSD-9-0  -  FREEBSD-8-STABLE  -  FREEBSD-8-0  -  FREEBSD-7-STABLE  -  FREEBSD-7-0  -  FREEBSD-6-STABLE  -  FREEBSD-6-0  -  FREEBSD-5-STABLE  -  FREEBSD-5-0  -  FREEBSD-4-STABLE  -  FREEBSD-3-STABLE  -  FREEBSD22  -  l41  -  OPENBSD  -  linux-2.6  -  MK84  -  PLAN9  -  xnu-8792 
SearchContext: -  none  -  3  -  10 

    1 /*
    2  * CDDL HEADER START
    3  *
    4  * The contents of this file are subject to the terms of the
    5  * Common Development and Distribution License (the "License").
    6  * You may not use this file except in compliance with the License.
    7  *
    8  * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
    9  * or https://opensource.org/licenses/CDDL-1.0.
   10  * See the License for the specific language governing permissions
   11  * and limitations under the License.
   12  *
   13  * When distributing Covered Code, include this CDDL HEADER in each
   14  * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
   15  * If applicable, add the following below this CDDL HEADER, with the
   16  * fields enclosed by brackets "[]" replaced with your own identifying
   17  * information: Portions Copyright [yyyy] [name of copyright owner]
   18  *
   19  * CDDL HEADER END
   20  */
   21 /*
   22  * Copyright (c) 2010, Oracle and/or its affiliates. All rights reserved.
   23  */
   24 
   25 #ifndef _SYS_FS_ZFS_VNOPS_OS_H
   26 #define _SYS_FS_ZFS_VNOPS_OS_H
   27 
   28 #include <sys/vnode.h>
   29 #include <sys/xvattr.h>
   30 #include <sys/uio.h>
   31 #include <sys/cred.h>
   32 #include <sys/fcntl.h>
   33 #include <sys/pathname.h>
   34 #include <sys/zpl.h>
   35 #include <sys/zfs_file.h>
   36 
   37 #ifdef  __cplusplus
   38 extern "C" {
   39 #endif
   40 
   41 extern int zfs_open(struct inode *ip, int mode, int flag, cred_t *cr);
   42 extern int zfs_close(struct inode *ip, int flag, cred_t *cr);
   43 extern int zfs_write_simple(znode_t *zp, const void *data, size_t len,
   44     loff_t pos, size_t *resid);
   45 extern int zfs_lookup(znode_t *dzp, char *nm, znode_t **zpp, int flags,
   46     cred_t *cr, int *direntflags, pathname_t *realpnp);
   47 extern int zfs_create(znode_t *dzp, char *name, vattr_t *vap, int excl,
   48     int mode, znode_t **zpp, cred_t *cr, int flag, vsecattr_t *vsecp,
   49     zuserns_t *mnt_ns);
   50 extern int zfs_tmpfile(struct inode *dip, vattr_t *vapzfs, int excl,
   51     int mode, struct inode **ipp, cred_t *cr, int flag, vsecattr_t *vsecp,
   52     zuserns_t *mnt_ns);
   53 extern int zfs_remove(znode_t *dzp, char *name, cred_t *cr, int flags);
   54 extern int zfs_mkdir(znode_t *dzp, char *dirname, vattr_t *vap,
   55     znode_t **zpp, cred_t *cr, int flags, vsecattr_t *vsecp, zuserns_t *mnt_ns);
   56 extern int zfs_rmdir(znode_t *dzp, char *name, znode_t *cwd,
   57     cred_t *cr, int flags);
   58 extern int zfs_readdir(struct inode *ip, zpl_dir_context_t *ctx, cred_t *cr);
   59 extern int zfs_getattr_fast(struct user_namespace *, struct inode *ip,
   60         struct kstat *sp);
   61 extern int zfs_setattr(znode_t *zp, vattr_t *vap, int flag, cred_t *cr,
   62     zuserns_t *mnt_ns);
   63 extern int zfs_rename(znode_t *sdzp, char *snm, znode_t *tdzp,
   64     char *tnm, cred_t *cr, int flags, uint64_t rflags, vattr_t *wo_vap,
   65     zuserns_t *mnt_ns);
   66 extern int zfs_symlink(znode_t *dzp, char *name, vattr_t *vap,
   67     char *link, znode_t **zpp, cred_t *cr, int flags, zuserns_t *mnt_ns);
   68 extern int zfs_readlink(struct inode *ip, zfs_uio_t *uio, cred_t *cr);
   69 extern int zfs_link(znode_t *tdzp, znode_t *szp,
   70     char *name, cred_t *cr, int flags);
   71 extern void zfs_inactive(struct inode *ip);
   72 extern int zfs_space(znode_t *zp, int cmd, flock64_t *bfp, int flag,
   73     offset_t offset, cred_t *cr);
   74 extern int zfs_fid(struct inode *ip, fid_t *fidp);
   75 extern int zfs_getpage(struct inode *ip, struct page *pl[], int nr_pages);
   76 extern int zfs_putpage(struct inode *ip, struct page *pp,
   77     struct writeback_control *wbc, boolean_t for_sync);
   78 extern int zfs_dirty_inode(struct inode *ip, int flags);
   79 extern int zfs_map(struct inode *ip, offset_t off, caddr_t *addrp,
   80     size_t len, unsigned long vm_flags);
   81 extern void zfs_zrele_async(znode_t *zp);
   82 
   83 #ifdef  __cplusplus
   84 }
   85 #endif
   86 
   87 #endif  /* _SYS_FS_ZFS_VNOPS_H */

Cache object: 8f5594daf40397eec2bd64ab6452a0d0


[ source navigation ] [ diff markup ] [ identifier search ] [ freetext search ] [ file search ] [ list types ] [ track identifier ]


This page is part of the FreeBSD/Linux Linux Kernel Cross-Reference, and was automatically generated using a modified version of the LXR engine.