On 07/02/2015 06:49 PM, Gilles Chanteperdrix wrote: > On Thu, Jul 02, 2015 at 06:44:06PM +0200, Jan Kiszka wrote: >> On 2015-07-02 18:30, Philippe Gerum wrote: >>> On 07/02/2015 05:39 PM, Jan Kiszka wrote: >>>> On 2015-07-02 17:24, Philippe Gerum wrote: >>>>> On 07/02/2015 05:20 PM, git repository hosting wrote: >>>>>> Module: xenomai-jki >>>>>> Branch: for-forge >>>>>> Commit: 99736c29a21a5e5536f8db9e580fd11cdb0eb0f2 >>>>>> URL: >>>>>> http://git.xenomai.org/?p=xenomai-jki.git;a=commit;h=99736c29a21a5e5536f8db9e580fd11cdb0eb0f2 >>>>>> >>>>>> Author: Jan Kiszka <[email protected]> >>>>>> Date: Thu Jul 2 17:12:39 2015 +0200 >>>>>> >>>>>> cobalt/kernel: Remove unused mode parameter from COBALT_SYSCALL >>>>> >>>>> We want to keep this. At some point, maybe, we will be able to use this >>>>> information to instrument the code with calling context guards, or as >>>>> the source of the mode data in the syscall table. Today, it's at least >>>>> useful inline documentation, without having to browse the table. >>>> >>>> This only makes sense when cobalt_sysmodes can be generated from it. >>>> Currently it isn't, and I bet there are already plenty of >>>> inconsistencies, minimizing the value captured via COBALT_SYSCALL >>>> massively. So we should either get rid of cobalt_sysmodes or of that >>>> parameter. >>>> >>> >>> "currently" is the point. If you feel implementing either aspects, i.e. >>> automatic tagging of the current context when traversing a cobalt call >>> based on the mode in the syscall macro, or generating the table data >>> based on the info, please do. If you feel fixing any consistency between >>> the two mode specs proving your bet right, please do as well. But for >>> now, I won't pick that commit. >> >> The approach of using COBALT_SYSCALL to define the mode only works if >> that is also the only place to define it. Let's see first if/how that >> can be achieved. > > That can be achieved by getting the macro to adding data in a > special section, then use that section as the syscall table with > linker generate symbols. A lot of stuff works like this, like the > init table, or glibc constructors, so, this can definitely be > achieved. This probably requires the I-pipe patch to modify the > kernel linker script, of which there are several instances (one > instance by arch maybe). >
Yes. Having to fixup the linker script was the reason not to implement this immediately, as there could be some backward compat issues to address with legacy pipelines running a most recent 3x cobalt core. -- Philippe. _______________________________________________ Xenomai mailing list [email protected] http://xenomai.org/mailman/listinfo/xenomai
