[<prev] [next>] [<thread-prev] [day] [month] [year] [list]
Message-ID: <aNfWQL6nLBrPNQTs@laps>
Date: Sat, 27 Sep 2025 08:19:12 -0400
From: Sasha Levin <sashal@...nel.org>
To: Christian Brauner <brauner@...nel.org>
Cc: Linus Torvalds <torvalds@...ux-foundation.org>,
linux-fsdevel@...r.kernel.org, linux-kernel@...r.kernel.org
Subject: Re: [GIT PULL 08/12 for v6.18] core kernel
On Fri, Sep 26, 2025 at 04:19:02PM +0200, Christian Brauner wrote:
>Hey Linus,
>
>/* Testing */
>This contains the changes to enable support for clone3() on nios2 which
>apparently is still a thing. The more exciting part of this is that it
>cleans up the inconsistency in how the 64-bit flag argument is passed
>from copy_process() into the various other copy_*() helpers.
>
>gcc (Debian 14.2.0-19) 14.2.0
>Debian clang version 19.1.7 (3+b1)
>
>No build failures or warnings were observed.
>
>/* Conflicts */
>
>Merge conflicts with mainline
>=============================
>
>No known conflicts.
>
>Merge conflicts with other trees
>================================
>
>No known conflicts.
>
>The following changes since commit 8f5ae30d69d7543eee0d70083daf4de8fe15d585:
>
> Linux 6.17-rc1 (2025-08-10 19:41:16 +0300)
>
>are available in the Git repository at:
>
> git@...olite.kernel.org:pub/scm/linux/kernel/git/vfs/vfs tags/kernel-6.18-rc1.clone3
Hi Christian,
After pulling this tag, I started seeing a build failure.
a9769a5b9878 ("rv: Add support for LTL monitors") which was merged a few weeks
ago added a usage of task_newtask:
static void handle_task_newtask(void *data, struct task_struct *task, unsigned long flags)
But commit edd3cb05c00a ("copy_process: pass clone_flags as u64 across
calltree") from this pull request modified the signature without updating rv.
./include/rv/ltl_monitor.h: In function ‘ltl_monitor_init’:
./include/rv/ltl_monitor.h:75:51: error: passing argument 1 of ‘check_trace_callback_type_task_newtask’ from incompatible pointer type [-Wincompatible-pointer-types]
75 | rv_attach_trace_probe(name, task_newtask, handle_task_newtask);
| ^~~~~~~~~~~~~~~~~~~
| |
| void (*)(void *, struct task_struct *, long unsigned int)
./include/rv/instrumentation.h:18:48: note: in definition of macro ‘rv_attach_trace_probe’
18 | check_trace_callback_type_##tp(rv_handler); \
| ^~~~~~~~~~
I've fixed it up by simply:
diff --git a/include/rv/ltl_monitor.h b/include/rv/ltl_monitor.h
index 67031a774e3d3..5368cf5fd623e 100644
--- a/include/rv/ltl_monitor.h
+++ b/include/rv/ltl_monitor.h
@@ -56,7 +56,7 @@ static void ltl_task_init(struct task_struct *task, bool task_creation)
ltl_atoms_fetch(task, mon);
}
-static void handle_task_newtask(void *data, struct task_struct *task, unsigned long flags)
+static void handle_task_newtask(void *data, struct task_struct *task, u64 flags)
{
ltl_task_init(task, true);
}
--
Thanks,
Sasha
Powered by blists - more mailing lists