* [davidhildenbrand:device_private 12/12] mm/migrate.c:294:33: error: implicit declaration of function 'make_device_private_entry'; did you mean 'is_device_private_entry'?
@ 2025-01-25 8:01 kernel test robot
0 siblings, 0 replies; only message in thread
From: kernel test robot @ 2025-01-25 8:01 UTC (permalink / raw)
To: David Hildenbrand; +Cc: oe-kbuild-all
tree: https://github.com/davidhildenbrand/linux device_private
head: 1693aa537b530ade1b82a54169a772386b4b7af7
commit: 1693aa537b530ade1b82a54169a772386b4b7af7 [12/12] mm: combine readable and writable device exclusive entries into SWP_DEVICE_EXCLUSIVE
config: arc-randconfig-001-20250125 (https://download.01.org/0day-ci/archive/20250125/202501251551.At4FVF82-lkp@intel.com/config)
compiler: arceb-elf-gcc (GCC) 13.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20250125/202501251551.At4FVF82-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/202501251551.At4FVF82-lkp@intel.com/
All errors (new ones prefixed by >>):
mm/migrate.c: In function 'remove_migration_pte':
>> mm/migrate.c:294:33: error: implicit declaration of function 'make_device_private_entry'; did you mean 'is_device_private_entry'? [-Werror=implicit-function-declaration]
294 | entry = make_device_private_entry(page_to_pfn(new));
| ^~~~~~~~~~~~~~~~~~~~~~~~~
| is_device_private_entry
>> mm/migrate.c:294:33: error: incompatible types when assigning to type 'swp_entry_t' from type 'int'
cc1: some warnings being treated as errors
vim +294 mm/migrate.c
235
236 /*
237 * Restore a potential migration pte to a working pte entry
238 */
239 static bool remove_migration_pte(struct folio *folio,
240 struct vm_area_struct *vma, unsigned long addr, void *arg)
241 {
242 struct rmap_walk_arg *rmap_walk_arg = arg;
243 DEFINE_FOLIO_VMA_WALK(pvmw, rmap_walk_arg->folio, vma, addr, PVMW_SYNC | PVMW_MIGRATION);
244
245 while (page_vma_mapped_walk(&pvmw)) {
246 rmap_t rmap_flags = RMAP_NONE;
247 pte_t old_pte;
248 pte_t pte;
249 swp_entry_t entry;
250 struct page *new;
251 unsigned long idx = 0;
252
253 /* pgoff is invalid for ksm pages, but they are never large */
254 if (folio_test_large(folio) && !folio_test_hugetlb(folio))
255 idx = linear_page_index(vma, pvmw.address) - pvmw.pgoff;
256 new = folio_page(folio, idx);
257
258 #ifdef CONFIG_ARCH_ENABLE_THP_MIGRATION
259 /* PMD-mapped THP migration entry */
260 if (!pvmw.pte) {
261 VM_BUG_ON_FOLIO(folio_test_hugetlb(folio) ||
262 !folio_test_pmd_mappable(folio), folio);
263 remove_migration_pmd(&pvmw, new);
264 continue;
265 }
266 #endif
267 if (rmap_walk_arg->map_unused_to_zeropage &&
268 try_to_map_unused_to_zeropage(&pvmw, folio, idx))
269 continue;
270
271 folio_get(folio);
272 pte = mk_pte(new, READ_ONCE(vma->vm_page_prot));
273 old_pte = ptep_get(pvmw.pte);
274
275 entry = pte_to_swp_entry(old_pte);
276 if (!is_migration_entry_young(entry))
277 pte = pte_mkold(pte);
278 if (folio_test_dirty(folio) && is_migration_entry_dirty(entry))
279 pte = pte_mkdirty(pte);
280 if (pte_swp_soft_dirty(old_pte))
281 pte = pte_mksoft_dirty(pte);
282 else
283 pte = pte_clear_soft_dirty(pte);
284
285 if (is_writable_migration_entry(entry))
286 pte = pte_mkwrite(pte, vma);
287 else if (pte_swp_uffd_wp(old_pte))
288 pte = pte_mkuffd_wp(pte);
289
290 if (folio_test_anon(folio) && !is_readable_migration_entry(entry))
291 rmap_flags |= RMAP_EXCLUSIVE;
292
293 if (unlikely(is_device_private_page(new))) {
> 294 entry = make_device_private_entry(page_to_pfn(new));
295 pte = swp_entry_to_pte(entry);
296 if (pte_swp_soft_dirty(old_pte))
297 pte = pte_swp_mksoft_dirty(pte);
298 if (pte_swp_uffd_wp(old_pte))
299 pte = pte_swp_mkuffd_wp(pte);
300 }
301
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2025-01-25 8:01 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-01-25 8:01 [davidhildenbrand:device_private 12/12] mm/migrate.c:294:33: error: implicit declaration of function 'make_device_private_entry'; did you mean 'is_device_private_entry'? kernel test robot
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.