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).

-- 
                                            Gilles.
https://click-hack.org

_______________________________________________
Xenomai mailing list
[email protected]
http://xenomai.org/mailman/listinfo/xenomai

Reply via email to