hrev54266 adds 1 changeset to branch 'master'
old head: d750211a65757ad4d363eeebfbe9c20f93144c56
new head: f9b218aa8ad99c08333b95641bf9bd075cb8c1f2
overview:
https://git.haiku-os.org/haiku/log/?qt=range&q=f9b218aa8ad9+%5Ed750211a6575
----------------------------------------------------------------------------
f9b218aa8ad9: file_systems: fs_read_link() doesn't use a user buffer
introduced in hrev26728 and hrev54107.
Change-Id: I3e98d54e829bcce559c43a8ee1abe4d889c0a571
Reviewed-on: https://review.haiku-os.org/c/haiku/+/2819
Reviewed-by: waddlesplash <waddlesplash@xxxxxxxxx>
[ Jérôme Duval <jerome.duval@xxxxxxxxx> ]
----------------------------------------------------------------------------
Revision: hrev54266
Commit: f9b218aa8ad99c08333b95641bf9bd075cb8c1f2
URL: https://git.haiku-os.org/haiku/commit/?id=f9b218aa8ad9
Author: Jérôme Duval <jerome.duval@xxxxxxxxx>
Date: Tue May 26 19:11:03 2020 UTC
Committer: waddlesplash <waddlesplash@xxxxxxxxx>
Commit-Date: Tue May 26 23:00:54 2020 UTC
----------------------------------------------------------------------------
8 files changed, 16 insertions(+), 18 deletions(-)
src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp | 3 ++-
src/add-ons/kernel/file_systems/ext2/kernel_interface.cpp | 5 +----
src/add-ons/kernel/file_systems/iso9660/kernel_interface.cpp | 3 ++-
src/add-ons/kernel/file_systems/nfs/nfs_add_on.c | 5 ++---
.../kernel/file_systems/packagefs/nodes/UnpackingLeafNode.cpp | 3 ++-
.../packagefs/package_links/PackageLinkSymlink.cpp | 3 ++-
src/add-ons/kernel/file_systems/ramfs/kernel_interface.cpp | 5 ++---
src/add-ons/kernel/file_systems/reiserfs/Iterators.cpp | 7 +++----
----------------------------------------------------------------------------
diff --git a/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp
b/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp
index 6b9faf2375..90e8d2203e 100644
--- a/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp
+++ b/src/add-ons/kernel/file_systems/bfs/kernel_interface.cpp
@@ -1606,7 +1606,8 @@ bfs_read_link(fs_volume* _volume, fs_vnode* _node, char*
buffer,
*_bufferSize = linkLength;
- return user_memcpy(buffer, inode->Node().short_symlink, bytesToCopy);
+ memcpy(buffer, inode->Node().short_symlink, bytesToCopy);
+ return B_OK;
}
diff --git a/src/add-ons/kernel/file_systems/ext2/kernel_interface.cpp
b/src/add-ons/kernel/file_systems/ext2/kernel_interface.cpp
index e1e47ac4a2..b6773001b8 100644
--- a/src/add-ons/kernel/file_systems/ext2/kernel_interface.cpp
+++ b/src/add-ons/kernel/file_systems/ext2/kernel_interface.cpp
@@ -1313,10 +1313,7 @@ ext2_read_link(fs_volume *_volume, fs_vnode *_node, char
*buffer,
size_t bytesToCopy =
std::min(static_cast<size_t>(inode->Size()),
*_bufferSize);
- status_t result = user_memcpy(buffer, inode->Node().symlink,
- bytesToCopy);
- if (result != B_OK)
- return result;
+ memcpy(buffer, inode->Node().symlink, bytesToCopy);
}
*_bufferSize = inode->Size();
diff --git a/src/add-ons/kernel/file_systems/iso9660/kernel_interface.cpp
b/src/add-ons/kernel/file_systems/iso9660/kernel_interface.cpp
index 0e963506bd..fc7aee3533 100644
--- a/src/add-ons/kernel/file_systems/iso9660/kernel_interface.cpp
+++ b/src/add-ons/kernel/file_systems/iso9660/kernel_interface.cpp
@@ -569,7 +569,8 @@ fs_read_link(fs_volume* _volume, fs_vnode* _node, char*
buffer,
*_bufferSize = length;
- return user_memcpy(buffer, node->attr.slName, bytesToCopy);
+ memcpy(buffer, node->attr.slName, bytesToCopy);
+ return B_OK;
}
diff --git a/src/add-ons/kernel/file_systems/nfs/nfs_add_on.c
b/src/add-ons/kernel/file_systems/nfs/nfs_add_on.c
index 6bfe7ef2ed..d2d26467b0 100644
--- a/src/add-ons/kernel/file_systems/nfs/nfs_add_on.c
+++ b/src/add-ons/kernel/file_systems/nfs/nfs_add_on.c
@@ -2254,7 +2254,6 @@ fs_readlink(fs_volume *_volume, fs_vnode *_node, char
*buf, size_t *bufsize)
struct XDRInPacket reply;
fs_nspace *ns;
fs_node *node;
- status_t result;
ns = _volume->private_volume;
node = _node->private_node;
@@ -2291,12 +2290,12 @@ fs_readlink(fs_volume *_volume, fs_vnode *_node, char
*buf, size_t *bufsize)
length = XDRInPacketGetDynamic(&reply, data);
- result = user_memcpy(buf, data, min_c(length, *bufsize));
+ memcpy(buf, data, min_c(length, *bufsize));
*bufsize = length;
XDRInPacketDestroy(&reply);
XDROutPacketDestroy(&call);
- return result;
+ return B_OK;
}
static status_t
diff --git
a/src/add-ons/kernel/file_systems/packagefs/nodes/UnpackingLeafNode.cpp
b/src/add-ons/kernel/file_systems/packagefs/nodes/UnpackingLeafNode.cpp
index 5810d7cba4..b5865687df 100644
--- a/src/add-ons/kernel/file_systems/packagefs/nodes/UnpackingLeafNode.cpp
+++ b/src/add-ons/kernel/file_systems/packagefs/nodes/UnpackingLeafNode.cpp
@@ -281,7 +281,8 @@ UnpackingLeafNode::ReadSymlink(void* buffer, size_t*
bufferSize)
*bufferSize = linkLength;
- return user_memcpy(buffer, linkPath, bytesToCopy);
+ memcpy(buffer, linkPath, bytesToCopy);
+ return B_OK;
}
diff --git
a/src/add-ons/kernel/file_systems/packagefs/package_links/PackageLinkSymlink.cpp
b/src/add-ons/kernel/file_systems/packagefs/package_links/PackageLinkSymlink.cpp
index 06045a7653..64ded39b11 100644
---
a/src/add-ons/kernel/file_systems/packagefs/package_links/PackageLinkSymlink.cpp
+++
b/src/add-ons/kernel/file_systems/packagefs/package_links/PackageLinkSymlink.cpp
@@ -165,7 +165,8 @@ PackageLinkSymlink::ReadSymlink(void* buffer, size_t*
bufferSize)
*bufferSize = linkLength;
- return user_memcpy(buffer, fLinkPath, bytesToCopy);
+ memcpy(buffer, fLinkPath, bytesToCopy);
+ return B_OK;
}
diff --git a/src/add-ons/kernel/file_systems/ramfs/kernel_interface.cpp
b/src/add-ons/kernel/file_systems/ramfs/kernel_interface.cpp
index 287ef24dd3..013e1f5bd1 100644
--- a/src/add-ons/kernel/file_systems/ramfs/kernel_interface.cpp
+++ b/src/add-ons/kernel/file_systems/ramfs/kernel_interface.cpp
@@ -375,11 +375,10 @@ ramfs_read_symlink(fs_volume* _volume, fs_vnode* _node,
char *buffer,
size_t toRead = min(*bufferSize,
symLink->GetLinkedPathLength());
if (toRead > 0)
- error = user_memcpy(buffer,
symLink->GetLinkedPath(),
+ memcpy(buffer, symLink->GetLinkedPath(),
toRead);
- if (error == B_OK)
- *bufferSize =
symLink->GetLinkedPathLength();
+ *bufferSize = symLink->GetLinkedPathLength();
} else {
FATAL("Node %" B_PRIdINO " pretends to be a
SymLink, but isn't!\n",
node->GetID());
diff --git a/src/add-ons/kernel/file_systems/reiserfs/Iterators.cpp
b/src/add-ons/kernel/file_systems/reiserfs/Iterators.cpp
index e28b7ca503..1d76d87913 100644
--- a/src/add-ons/kernel/file_systems/reiserfs/Iterators.cpp
+++ b/src/add-ons/kernel/file_systems/reiserfs/Iterators.cpp
@@ -1522,11 +1522,9 @@ StreamReader::_ReadIndirectItem(off_t offset, void
*buffer, size_t bufferSize)
off_t blockOffset = i * (off_t)fBlockSize;
uint32 localOffset = max_c(0LL, offset - blockOffset);
uint32 toRead = min_c(fBlockSize - localOffset,
bufferSize);
- status_t copyResult = user_memcpy(buffer,
+ memcpy(buffer,
reinterpret_cast<uint8*>(block->GetData()) +
localOffset,
toRead);
- if (copyResult != B_OK)
- return copyResult;
block->Put();
bufferSize -= toRead;
@@ -1547,7 +1545,8 @@ StreamReader::_ReadDirectItem(off_t offset, void *buffer,
size_t bufferSize)
{
//PRINT(("StreamReader::_ReadDirectItem(%Ld, %p, %lu)\n", offset, buffer,
bufferSize));
// copy the data into the buffer
- return user_memcpy(buffer,
+ memcpy(buffer,
reinterpret_cast<uint8*>(fItem.GetData()) + offset, bufferSize);
+ return B_OK;
}