net/mlx5: IPSec, Fix 64-bit division on 32-bit builds
Fix warnings when building 386 kernel:
>> ERROR: "__udivdi3" [drivers/net/ethernet/mellanox/mlx5/core/mlx5_core.ko] undefined!
Fixes: 2ac9cfe782 ("net/mlx5e: IPSec, Add Innova IPSec offload TX data path")
Reported-by: kbuild test robot <fengguang.wu@intel.com>
Signed-off-by: Ilan Tayari <ilant@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
This commit is contained in:
parent
aa07b63384
commit
5dfd87b67c
1 changed files with 3 additions and 1 deletions
|
|
@ -363,6 +363,7 @@ void mlx5e_ipsec_build_inverse_table(void)
|
||||||
{
|
{
|
||||||
u16 mss_inv;
|
u16 mss_inv;
|
||||||
u32 mss;
|
u32 mss;
|
||||||
|
u64 n;
|
||||||
|
|
||||||
/* Calculate 1/x inverse table for use in GSO data path.
|
/* Calculate 1/x inverse table for use in GSO data path.
|
||||||
* Using this table, we provide the IPSec accelerator with the value of
|
* Using this table, we provide the IPSec accelerator with the value of
|
||||||
|
|
@ -372,7 +373,8 @@ void mlx5e_ipsec_build_inverse_table(void)
|
||||||
*/
|
*/
|
||||||
mlx5e_ipsec_inverse_table[1] = htons(0xFFFF);
|
mlx5e_ipsec_inverse_table[1] = htons(0xFFFF);
|
||||||
for (mss = 2; mss < MAX_LSO_MSS; mss++) {
|
for (mss = 2; mss < MAX_LSO_MSS; mss++) {
|
||||||
mss_inv = ((1ULL << 32) / mss) >> 16;
|
n = 1ULL << 32;
|
||||||
|
mss_inv = do_div(n, mss) >> 16;
|
||||||
mlx5e_ipsec_inverse_table[mss] = htons(mss_inv);
|
mlx5e_ipsec_inverse_table[mss] = htons(mss_inv);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue