diff mbox series

fs/squashfs: use lldiv function for math

Message ID 20221201153032.566071-1-kasper@krinvent.dk
State Accepted
Commit aeea67f9a033ab6f3adca7b30bbd02579f72512f
Delegated to: Tom Rini
Headers show
Series fs/squashfs: use lldiv function for math | expand

Commit Message

kasper@krinvent.dk Dec. 1, 2022, 3:30 p.m. UTC
From: Kasper Revsbech <kasper.revsbech.ext@siemensgamesa.com>

When compling for x86:
u-boot/fs/squashfs/sqfs.c:90: undefined reference to `__udivmoddi4'

Signed-off-by: Kasper Revsbech <kasper.revsbech.ext@siemensgamesa.com>
---
 fs/squashfs/sqfs.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

Comments

Sean Nyekjaer Dec. 2, 2022, 7:29 p.m. UTC | #1
Quoting kasper@krinvent.dk:

> From: Kasper Revsbech <kasper.revsbech.ext@siemensgamesa.com>
>
> When compling for x86:
> u-boot/fs/squashfs/sqfs.c:90: undefined reference to `__udivmoddi4'
>
> Signed-off-by: Kasper Revsbech <kasper.revsbech.ext@siemensgamesa.com>
Tested-by: Sean Nyekjaer <sean@geanix.com>
> ---
>  fs/squashfs/sqfs.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/fs/squashfs/sqfs.c b/fs/squashfs/sqfs.c
> index 74ca70c3ff..4226621923 100644
> --- a/fs/squashfs/sqfs.c
> +++ b/fs/squashfs/sqfs.c
> @@ -87,7 +87,7 @@ static int sqfs_calc_n_blks(__le64 start, __le64  
> end, u64 *offset)
>  	u64 start_, table_size;
>
>  	table_size = le64_to_cpu(end) - le64_to_cpu(start);
> -	start_ = le64_to_cpu(start) / ctxt.cur_dev->blksz;
> +	start_ = lldiv(le64_to_cpu(start), ctxt.cur_dev->blksz);
>  	*offset = le64_to_cpu(start) - (start_ * ctxt.cur_dev->blksz);
>
>  	return DIV_ROUND_UP(table_size + *offset, ctxt.cur_dev->blksz);
> --
> 2.34.1
Tom Rini Dec. 8, 2022, 8:24 p.m. UTC | #2
On Thu, Dec 01, 2022 at 04:30:32PM +0100, kasper@krinvent.dk wrote:

> From: Kasper Revsbech <kasper.revsbech.ext@siemensgamesa.com>
> 
> When compling for x86:
> u-boot/fs/squashfs/sqfs.c:90: undefined reference to `__udivmoddi4'
> 
> Signed-off-by: Kasper Revsbech <kasper.revsbech.ext@siemensgamesa.com>
> Tested-by: Sean Nyekjaer <sean@geanix.com>

Applied to u-boot/next, thanks!
diff mbox series

Patch

diff --git a/fs/squashfs/sqfs.c b/fs/squashfs/sqfs.c
index 74ca70c3ff..4226621923 100644
--- a/fs/squashfs/sqfs.c
+++ b/fs/squashfs/sqfs.c
@@ -87,7 +87,7 @@  static int sqfs_calc_n_blks(__le64 start, __le64 end, u64 *offset)
 	u64 start_, table_size;
 
 	table_size = le64_to_cpu(end) - le64_to_cpu(start);
-	start_ = le64_to_cpu(start) / ctxt.cur_dev->blksz;
+	start_ = lldiv(le64_to_cpu(start), ctxt.cur_dev->blksz);
 	*offset = le64_to_cpu(start) - (start_ * ctxt.cur_dev->blksz);
 
 	return DIV_ROUND_UP(table_size + *offset, ctxt.cur_dev->blksz);