[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH v2 2/7] erofs: Replace 64-bit modulo with bitwise operations
From: |
Vladimir Serbinenko |
Subject: |
[PATCH v2 2/7] erofs: Replace 64-bit modulo with bitwise operations |
Date: |
Tue, 3 Sep 2024 20:58:47 +0300 |
Otherwise depending on compiler we end up with umoddi3 reference and
failed module dependency resolution
Signed-off-by: Vladimir Serbinenko <phcoder@gmail.com>
---
grub-core/fs/erofs.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/grub-core/fs/erofs.c b/grub-core/fs/erofs.c
index 46cfc2e5c..f2a82e988 100644
--- a/grub-core/fs/erofs.c
+++ b/grub-core/fs/erofs.c
@@ -357,13 +357,13 @@ erofs_map_blocks_flatmode (grub_fshelp_node_t node,
{
if (grub_add (erofs_iloc (node), erofs_inode_size (node), &map->m_pa) ||
grub_add (map->m_pa, erofs_inode_xattr_ibody_size (node), &map->m_pa)
||
- grub_add (map->m_pa, map->m_la % blocksz, &map->m_pa))
+ grub_add (map->m_pa, map->m_la & (blocksz - 1), &map->m_pa))
return grub_error (GRUB_ERR_OUT_OF_RANGE, "m_pa overflow when handling
tailpacking");
if (grub_sub (file_size, map->m_la, &map->m_plen))
return grub_error (GRUB_ERR_OUT_OF_RANGE, "m_plen overflow when
handling tailpacking");
/* No overflow as map->m_plen <= UINT64_MAX - blocksz + 1. */
- if (((map->m_pa % blocksz) + map->m_plen) > blocksz)
+ if (((map->m_pa & (blocksz - 1)) + map->m_plen) > blocksz)
return grub_error (GRUB_ERR_BAD_FS,
"inline data cross block boundary @ inode %"
PRIuGRUB_UINT64_T,
node->ino);
--
2.39.2
- [PATCH v2 1/7] configure: Look for .otf fonts, Vladimir Serbinenko, 2024/09/03
- [PATCH v2 2/7] erofs: Replace 64-bit modulo with bitwise operations,
Vladimir Serbinenko <=
- [PATCH v2 3/7] xzembed: Silence warning when no BCJ is available, Vladimir Serbinenko, 2024/09/03
- [PATCH v2 5/7] gentpl: Put startup_raw.S into beginning of the image, Vladimir Serbinenko, 2024/09/03
- [PATCH v2 7/7] mkimage: Explicitly move modules to __bss_start, Vladimir Serbinenko, 2024/09/03
- [PATCH v2 6/7] offsets: Set mod_align to 4 on mips, Vladimir Serbinenko, 2024/09/03
- [PATCH v2 4/7] configure: Add -mno-gpopt option, Vladimir Serbinenko, 2024/09/03