[haiku-commits] Change in haiku[master]: btrfs: fix SMAP violation, reading inline uncompressed data

  • From: Gerrit <review@xxxxxxxxxxxxxxxxxxx>
  • To: waddlesplash <waddlesplash@xxxxxxxxx>, haiku-commits@xxxxxxxxxxxxx
  • Date: Thu, 30 Jun 2022 15:44:00 +0000

From Jérôme Duval <jerome.duval@xxxxxxxxx>:

Jérôme Duval has uploaded this change for review. ( 
https://review.haiku-os.org/c/haiku/+/5426 ;)


Change subject: btrfs: fix SMAP violation, reading inline uncompressed data
......................................................................

btrfs: fix SMAP violation, reading inline uncompressed data

should fix for #17061
---
M src/add-ons/kernel/file_systems/btrfs/Inode.cpp
1 file changed, 4 insertions(+), 3 deletions(-)



  git pull ssh://git.haiku-os.org:22/haiku refs/changes/26/5426/1

diff --git a/src/add-ons/kernel/file_systems/btrfs/Inode.cpp 
b/src/add-ons/kernel/file_systems/btrfs/Inode.cpp
index 8faa9f0..d6e3fbf 100644
--- a/src/add-ons/kernel/file_systems/btrfs/Inode.cpp
+++ b/src/add-ons/kernel/file_systems/btrfs/Inode.cpp
@@ -269,9 +269,10 @@
        }

        *_length = min_c(extent_data->Size() - diff, *_length);
-       if (compression == BTRFS_EXTENT_COMPRESS_NONE)
-               memcpy(buffer, extent_data->inline_data, *_length);
-       else if (compression == BTRFS_EXTENT_COMPRESS_ZLIB) {
+       if (compression == BTRFS_EXTENT_COMPRESS_NONE) {
+               if (user_memcpy(buffer, extent_data->inline_data, *_length) < 
B_OK)
+                       return B_BAD_ADDRESS;
+       } else if (compression == BTRFS_EXTENT_COMPRESS_ZLIB) {
                char in[2048];
                z_stream zStream = {
                        (Bytef*)in,             // next in

--
To view, visit https://review.haiku-os.org/c/haiku/+/5426
To unsubscribe, or for help writing mail filters, visit 
https://review.haiku-os.org/settings

Gerrit-Project: haiku
Gerrit-Branch: master
Gerrit-Change-Id: I5973be6c443e8cf4460c6a3aca7b5378e90d717b
Gerrit-Change-Number: 5426
Gerrit-PatchSet: 1
Gerrit-Owner: Jérôme Duval <jerome.duval@xxxxxxxxx>
Gerrit-MessageType: newchange

Other related posts:

  • » [haiku-commits] Change in haiku[master]: btrfs: fix SMAP violation, reading inline uncompressed data - Gerrit