* fs/xfs/xfs_zone_gc.c:186: undefined reference to `__divmoddi4'
@ 2025-04-18 4:23 ` kernel test robot
2025-04-19 9:34 ` Carlos Maiolino
0 siblings, 1 reply; 2+ messages in thread
From: kernel test robot @ 2025-04-18 4:23 UTC (permalink / raw)
To: Hans Holmberg
Cc: oe-kbuild-all, linux-kernel, Carlos Maiolino, Christoph Hellwig
tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: fc96b232f8e7c0a6c282f47726b2ff6a5fb341d2
commit: 845abeb1f06a8a44e21314460eeb14cddfca52cc xfs: add tunable threshold parameter for triggering zone GC
date: 4 days ago
config: i386-buildonly-randconfig-004-20250418 (https://download.01.org/0day-ci/archive/20250418/202504181233.F7D9Atra-lkp@intel.com/config)
compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250418/202504181233.F7D9Atra-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202504181233.F7D9Atra-lkp@intel.com/
All errors (new ones prefixed by >>):
ld: fs/xfs/xfs_zone_gc.o: in function `xfs_zoned_need_gc':
>> fs/xfs/xfs_zone_gc.c:186: undefined reference to `__divmoddi4'
>> ld: fs/xfs/xfs_zone_gc.c:186: undefined reference to `__divdi3'
vim +186 fs/xfs/xfs_zone_gc.c
162
163 /*
164 * We aim to keep enough zones free in stock to fully use the open zone limit
165 * for data placement purposes. Additionally, the m_zonegc_low_space tunable
166 * can be set to make sure a fraction of the unused blocks are available for
167 * writing.
168 */
169 bool
170 xfs_zoned_need_gc(
171 struct xfs_mount *mp)
172 {
173 s64 available, free;
174
175 if (!xfs_group_marked(mp, XG_TYPE_RTG, XFS_RTG_RECLAIMABLE))
176 return false;
177
178 available = xfs_estimate_freecounter(mp, XC_FREE_RTAVAILABLE);
179
180 if (available <
181 mp->m_groups[XG_TYPE_RTG].blocks *
182 (mp->m_max_open_zones - XFS_OPEN_GC_ZONES))
183 return true;
184
185 free = xfs_estimate_freecounter(mp, XC_FREE_RTEXTENTS);
> 186 if (available < mult_frac(free, mp->m_zonegc_low_space, 100))
187 return true;
188
189 return false;
190 }
191
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
* Re: fs/xfs/xfs_zone_gc.c:186: undefined reference to `__divmoddi4'
2025-04-18 4:23 ` fs/xfs/xfs_zone_gc.c:186: undefined reference to `__divmoddi4' kernel test robot
@ 2025-04-19 9:34 ` Carlos Maiolino
0 siblings, 0 replies; 2+ messages in thread
From: Carlos Maiolino @ 2025-04-19 9:34 UTC (permalink / raw)
To: kernel test robot
Cc: Hans Holmberg, oe-kbuild-all, linux-kernel, Christoph Hellwig
On Fri, Apr 18, 2025 at 12:23:44PM +0800, kernel test robot wrote:
> tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
> head: fc96b232f8e7c0a6c282f47726b2ff6a5fb341d2
> commit: 845abeb1f06a8a44e21314460eeb14cddfca52cc xfs: add tunable threshold parameter for triggering zone GC
> date: 4 days ago
> config: i386-buildonly-randconfig-004-20250418 (https://download.01.org/0day-ci/archive/20250418/202504181233.F7D9Atra-lkp@intel.com/config)
> compiler: gcc-12 (Debian 12.2.0-14) 12.2.0
> reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250418/202504181233.F7D9Atra-lkp@intel.com/reproduce)
>
> If you fix the issue in a separate patch/commit (i.e. not just a new version of
> the same patch/commit), kindly add following tags
> | Reported-by: kernel test robot <lkp@intel.com>
> | Closes: https://lore.kernel.org/oe-kbuild-all/202504181233.F7D9Atra-lkp@intel.com/
>
> All errors (new ones prefixed by >>):
>
> ld: fs/xfs/xfs_zone_gc.o: in function `xfs_zoned_need_gc':
> >> fs/xfs/xfs_zone_gc.c:186: undefined reference to `__divmoddi4'
> >> ld: fs/xfs/xfs_zone_gc.c:186: undefined reference to `__divdi3'
I don't think there is anything xfs can do here, this likely
requires to be fixed on math.h and make mult_frac be properly built
on i386. I'm testing a patch here and will submit it at least to start
a discussion.
>
>
> vim +186 fs/xfs/xfs_zone_gc.c
>
> 162
> 163 /*
> 164 * We aim to keep enough zones free in stock to fully use the open zone limit
> 165 * for data placement purposes. Additionally, the m_zonegc_low_space tunable
> 166 * can be set to make sure a fraction of the unused blocks are available for
> 167 * writing.
> 168 */
> 169 bool
> 170 xfs_zoned_need_gc(
> 171 struct xfs_mount *mp)
> 172 {
> 173 s64 available, free;
> 174
> 175 if (!xfs_group_marked(mp, XG_TYPE_RTG, XFS_RTG_RECLAIMABLE))
> 176 return false;
> 177
> 178 available = xfs_estimate_freecounter(mp, XC_FREE_RTAVAILABLE);
> 179
> 180 if (available <
> 181 mp->m_groups[XG_TYPE_RTG].blocks *
> 182 (mp->m_max_open_zones - XFS_OPEN_GC_ZONES))
> 183 return true;
> 184
> 185 free = xfs_estimate_freecounter(mp, XC_FREE_RTEXTENTS);
> > 186 if (available < mult_frac(free, mp->m_zonegc_low_space, 100))
> 187 return true;
> 188
> 189 return false;
> 190 }
> 191
>
> --
> 0-DAY CI Kernel Test Service
> https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2025-04-19 9:34 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <JFG83gowJu7PQG7cgkRFCITghKWsYeEpl0cJ6taDtZfbh4UFDCne2aW3fz7CzitHRGYciMHb7iO-Qewa_wteRw==@protonmail.internalid>
2025-04-18 4:23 ` fs/xfs/xfs_zone_gc.c:186: undefined reference to `__divmoddi4' kernel test robot
2025-04-19 9:34 ` Carlos Maiolino
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.