Skip to contentSkip to conversation

off-by-one in "Add checks to validate extent entries."

PATCH In review Thiemo Nagel 2 participants 3 messages Apr 2, 2009 – Apr 5, 2009 ext4 file system

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 off-by-one in "Add checks to validate extent entries."

Quoted 4 lines · Theodore Tso

I haven't had time yet to check your other patches; could you also take a quick scan to make sure we have all of the byte-swapping calls needed for proper big-endian checking, that we're using the correct __le32 types and not doing any casts?

I had a look at all patches I have sent, but I didn't notice anything suspicious. While doing that, however I think I found an off-by-one in 56b19868aca856a7d7bf20c3a7a1030e4fd75b2b

Kind regards,

Thiemo

---

fs/ext4/extents.c +1 -1
index ac77d8b..6132353 100644
@@ -342,7 +342,7 @@ static int ext4_valid_extent_idx(struct inode *inode,
        ext4_fsblk_t block = idx_pblock(ext_idx);
        struct ext4_super_block *es = EXT4_SB(inode->i_sb)->s_es;
        if (unlikely(block < le32_to_cpu(es->s_first_data_block) ||
-                       (block > ext4_blocks_count(es))))
+                       (block >= ext4_blocks_count(es))))
                return 0;
        else
                return 1;
maintainer
#1 lore raw
Quoted 9 lines · Thiemo Nagel
Quoted 4 lines · Theodore Tso

I haven't had time yet to check your other patches; could you also take a quick scan to make sure we have all of the byte-swapping calls needed for proper big-endian checking, that we're using the correct __le32 types and not doing any casts?

I had a look at all patches I have sent, but I didn't notice anything suspicious. While doing that, however I think I found an off-by-one in 56b19868aca856a7d7bf20c3a7a1030e4fd75b2b

In the future, could you please remember to include a Signed-off-by:
for your patches?

Thanks!!

This one is simple enough that I'll just include it, but I'd really prefer to get explicit signed-off patches.

- Ted

#2 lore raw
Quoted 9 lines · Theodore Tso
Quoted 7 lines · Thiemo Nagel
Quoted 4 lines · Theodore Tso

I haven't had time yet to check your other patches; could you also take a quick scan to make sure we have all of the byte-swapping calls needed for proper big-endian checking, that we're using the correct __le32 types and not doing any casts?

I had a look at all patches I have sent, but I didn't notice anything suspicious. While doing that, however I think I found an off-by-one in 56b19868aca856a7d7bf20c3a7a1030e4fd75b2b

Quoted 7 lines

In the future, could you please remember to include a Signed-off-by:
for your patches?

Thanks!!

This one is simple enough that I'll just include it, but I'd really prefer to get explicit signed-off patches.

Ok. So just for the record:

---

fs/ext4/extents.c +1 -1
index ac77d8b..6132353 100644
@@ -342,7 +342,7 @@ static int ext4_valid_extent_idx(struct inode *inode,
        ext4_fsblk_t block = idx_pblock(ext_idx);
        struct ext4_super_block *es = EXT4_SB(inode->i_sb)->s_es;
        if (unlikely(block < le32_to_cpu(es->s_first_data_block) ||
-                       (block > ext4_blocks_count(es))))
+                       (block >= ext4_blocks_count(es))))
                return 0;
        else
                return 1;
Signature · 7 lines
+-----------------------------------+--------------------------+
| Dipl.-Phys. Thiemo Nagel          |                          |
| Technische Universitaet Muenchen  | Room    PH1 3276         |
| Physik-Department E18             |                          |
| James-Franck-Strasse              | Phone  +49 89 289-12379  |
| D-85747 Garching                  | Fax    +49 89 289-12570  |
+-----------------------------------+--------------------------+