Lines Matching defs:node

855 /*!	\brief Looks up a vnode by mount and node ID in the sVnodeTable.
860 \param vnodeID the node ID.
900 /*! Creates a new vnode with the given mount and node ID.
901 If the node already exists, it is returned instead and no new node is
913 a node with the given ID was found, \c B_NO_MEMORY or
933 // look up the node -- it might have been added by someone else in the
954 // add the vnode to the mount's node list and the hash table
988 // itself (cf. vfs_get_vnode_cache()) and one belongs to the node's file
1090 The caller must make sure that the node isn't deleted while this function
1092 - by ensuring that a reference to the node exists and remains in existence,
1099 node is busy in the first place and 2. vnode_used() must be called for the
1100 node.
1131 /*! \brief Retrieves a vnode for a given mount ID, node ID pair.
1133 If the node is not yet in memory, it will be loaded.
1138 \param vnodeID the node ID.
1311 // get the first node
1320 // lock the node
1323 // Check whether the node is still unused -- since we only append to the
1326 // but if the node is no longer at the head of the queue, it means it
1340 // write back changes and free the node
1362 \param vnode The vnode whose covered node shall be returned.
1389 \param vnode The vnode whose covered node shall be returned.
1411 \param vnode The vnode whose covering node shall be returned.
1438 \param vnode The vnode whose covering node shall be returned.
1886 // If we've replaced the node, grab a reference for the new one.
1957 /*! \brief Gets the root node of the current IO context.
1959 The caller obtains a reference to the returned node.
2090 // have a reference and just need to look the node up.
2122 \param[out] _vnode If the function returns B_OK, points to the found node.
2210 // If the new node is a symbolic link, resolve it (if we've been told
2290 // see if we hit a covered node
2506 // the covered node.
2590 // If the node is the context's root, bail out. Otherwise resolve mount
2607 // The caller apparently got their hands on a node outside of their
2613 // get the node's name
2963 // vnode_path_to_vnode() puts the node
3104 // Failed to resolve the name -- prepend "<dev,node>/".
3116 // resolve the directory node
3292 B_PRINTF_POINTER_WIDTH, "fs-node", B_PRINTF_POINTER_WIDTH, "locking");
3684 ", node = %p)\n", volume, volume->id, vnodeID, privateNode));
3691 // create the node
3712 panic("vnode %" B_PRIdDEV ":%" B_PRIdINO " already exists (node = %p, "
3713 "vnode->node = %p)!", volume->id, vnodeID, privateNode,
3745 // create the node
3816 // we still hold the write lock -- mark the node unbusy and published
3839 // If this is a layered FS, we need to get the node cookie for the requested
3846 panic("get_vnode(): Failed to get super node for vnode %p, "
3978 // get node permissions
3983 // get the node permissions for this uid/gid
3996 // user is node owner
4259 to the node.
4331 // path given: get the stat of the node referred to by (fd, path)
4474 /*! \brief Gets the parent of the passed in node.
4476 Gets the parent of the passed in node, and correctly resolves covered
4480 vfs_resolve_parent(struct vnode* parent, dev_t* device, ino_t* node)
4482 return resolve_covered_parent(parent, device, node,
4487 /*! \brief Creates a special node in the file system.
4489 The caller gets a reference to the newly created node (which is passed
4492 \param path The path where to create the entry for the node. Can be \c NULL,
4493 in which case the node is created without an entry in the root FS -- it
4496 the target file system will just create the node with its standard
4497 operations. Depending on the type of the node a subnode might be created
4499 \param mode The type and permissions for the node to be created.
4504 file system creating the node, with the private data pointer and
4505 operations for the super node. Can be \c NULL.
4507 pointer to the newly created node.
4535 // No path. Create the node in the root FS.
4544 // create the node
4552 // lookup the node
4558 panic("vfs_create_special_node(): lookup of node failed");
5105 Given an arbitrary vnode (identified by mount and node ID), the function
5107 function returns the mount and node ID of the covering vnode. Otherwise
5108 it simply returns the supplied mount and node ID.
5110 In case of error (e.g. the supplied node could not be found) the variables
5111 for storing the resolved mount and node ID remain untouched and an error
5115 \param nodeID The node ID of the vnode in question.
5117 \param resolvedNodeID Pointer to storage for the resolved node ID.
5126 // get the node
5127 struct vnode* node;
5128 status_t error = get_vnode(mountID, nodeID, &node, true, false);
5132 // resolve the node
5133 if (Vnode* coveringNode = get_covering_vnode(node)) {
5134 put_vnode(node);
5135 node = coveringNode;
5139 *resolvedMountID = node->device;
5140 *resolvedNodeID = node->id;
5142 put_vnode(node);
5390 // the node the entry refers to (e.g. in case of mount points or FIFOs). So
5393 // node (unless O_EXCL), otherwise we call create() with O_EXCL. This
5401 // look the node up
5411 // If the node is a symlink, we have to follow it, unless
5467 // the node has been created successfully
5762 // stat() the node
5808 // basic implementation with stat() the node
7590 // the root node is supposed to be owned by the file system - it must
7595 panic("fs_mount: file system does not own its root node!\n");
7796 // vnode and adjust the node ref count accordingly. We will release the
7816 // If the other node is an external vnode, we keep its link
7830 // If the other node is an external vnode, we keep its link
8258 info->node = vnode->id;
8261 info->node = -1;
8282 /*! \brief Opens a node specified by a FD + path pair.
8285 If only \a fd is given, the function opens the node identified by this
8293 \return A FD referring to the newly opened node, or an error code,
8320 \param inode If \a name is specified the node ID of the parent
8321 directory of the directory to be opened, otherwise node ID of the
8324 the \a device + \a inode pair identify the node to be opened.
8441 If only \a fd is given, the function the symlink to be read is the node
8578 of the FD (node, attr, attr dir etc.) is performed. If only \a path is
8579 given, this path identifies the entry for whose node to retrieve the
8623 of the FD (node, attr, attr dir etc.) is performed. If only \a path is
8624 given, this path identifies the entry for whose node to write the
8661 // path given: write the stat of the node referred to by (fd, path)
9510 // create the entry -- the FIFO sub node is set up automatically
9531 // create the node -- the FIFO sub node is set up automatically
9539 // We've got one reference to the node and need another one.
9611 // path given: get the stat of the node referred to by (fd, path)
9666 // path given: write the stat of the node referred to by (fd, path)