Change of session name at runtime

Ivan Loskutov loskutov.ivan at ...9...
Tue Jan 29 13:40:08 CET 2013


I have tried the <if-arg> mechanism. It is work fine for my case. Thanks
Norman.

--
Ivan Loskutov



2013/1/29 Ivan Loskutov <loskutov.ivan at ...9...>

> Hello Norman,
>
> > have you had a look at conditional session routes using '<if-args>'?
> > Admittedly, it is not very well documented. Let's have a look at the the
> > example given here:
> >
> >  http://genode.org/documentation/release-notes/11.11#Stub-driver_support
> >
> > In this example, one instance of L4Linux uses two block sessions that
> > should be routed to different servers. Using the '<if-arg>' node, the
> > routing is made depending on the label of the session ("l4android ->
> > sda" versus "l4android -> sdb"). L4Linux just passes the label "sda" or
> >"sdb" as argument to the 'Block::Connection' constructor. Couldn't a
> > similar scheme work also for routing multiple Nic sessions to different
> > Nic services? If you think so, we could add a label constructor argument
> >to 'Nic::Connection', too.
>
> Thank you for reference. I think '<if-arg>' mechanism is the good solution
> and it can be solve my issue. I'll try to implement it today.
>
>
> > There is currently no support for more than one NIC. In the presence of
> > multiple networking adapters, we need a way to tell the driver, which
> > NIC to use (e.g., using <config> parameters).
>
> Yes, I have implemented selecting NIC device by driver <config>.
>
> > I wonder about your IRQ problems. Having multiple devices to share one
> > IRQ is expected to work. Maybe, your IRQ issues stem from a missing ACPI
> > driver?
>
> I have tried ACPI driver, but it didn't work in qemu and on my test PC.
>
> --
> Ivan Loskutov
>
>
>
> 2013/1/28 Norman Feske <norman.feske at ...1...>
>
>> Hi Ivan,
>>
>> have you had a look at conditional session routes using '<if-args>'?
>> Admittedly, it is not very well documented. Let's have a look at the the
>> example given here:
>>
>>   http://genode.org/documentation/release-notes/11.11#Stub-driver_support
>>
>> In this example, one instance of L4Linux uses two block sessions that
>> should be routed to different servers. Using the '<if-arg>' node, the
>> routing is made depending on the label of the session ("l4android ->
>> sda" versus "l4android -> sdb"). L4Linux just passes the label "sda" or
>> "sdb" as argument to the 'Block::Connection' constructor. Couldn't a
>> similar scheme work also for routing multiple Nic sessions to different
>> Nic services? If you think so, we could add a label constructor argument
>> to 'Nic::Connection', too.
>>
>> Heads-up warning: Recently, I slightly changed the label matching
>> implementation of the '<if-arg>' mechanism. See here:
>>
>>
>>
>> https://github.com/genodelabs/genode/commit/277af913765f7e82b0f2a236e6b390ba4f450b6c
>>
>> So with the new version, the matching string would be just "sda" instead
>> of "l4andriod -> sda".
>>
>> > *I’m trying to implement virtual network between two instances of the
>> > L4Linux. Moreover, each L4Linux has access to own ethernet controller.
>> > Genode hasn’t support two NIC drivers yet. It not work because each NIC
>> try
>> > to use one IRQ and interrupt handler doesn't work correct. It can be
>> solved
>> > by remapping PCI interrupts. The interrupt handler was temporarily
>> moved to
>> > PCI driver. But it isn’t a good solution.
>>
>> There is currently no support for more than one NIC. In the presence of
>> multiple networking adapters, we need a way to tell the driver, which
>> NIC to use (e.g., using <config> parameters).
>>
>> I wonder about your IRQ problems. Having multiple devices to share one
>> IRQ is expected to work. Maybe, your IRQ issues stem from a missing ACPI
>> driver?
>>
>> > ...
>> > I think it would be nice to have session name can be changed in the
>> config
>> > like binary executable name and session name for connection can be
>> > specified at runtime. This may look like:
>> > config: <provides> <service name=”Nic2” base_name=”Nic”/></provides>
>> > and source: Nic::Connection nic(“Nic2”);
>> > Is it possible? Maybe you have another solution?*
>>
>> I would appreciate your feedback on how the '<if-arg>' mechanism works
>> for you. At the first glance, I looks simpler than the introduction of
>> aliases for service names. What do you think?
>>
>> Cheers
>> Norman
>>
>> --
>> Dr.-Ing. Norman Feske
>> Genode Labs
>>
>> http://www.genode-labs.com · http://genode.org
>>
>> Genode Labs GmbH · Amtsgericht Dresden · HRB 28424 · Sitz Dresden
>> Geschäftsführer: Dr.-Ing. Norman Feske, Christian Helmuth
>>
>>
>> ------------------------------------------------------------------------------
>> Master Visual Studio, SharePoint, SQL, ASP.NET, C# 2012, HTML5, CSS,
>> MVC, Windows 8 Apps, JavaScript and much more. Keep your skills current
>> with LearnDevNow - 3,200 step-by-step video tutorials by Microsoft
>> MVPs and experts. ON SALE this month only -- learn more at:
>> http://p.sf.net/sfu/learnnow-d2d
>> _______________________________________________
>> Genode-main mailing list
>> Genode-main at lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/genode-main
>>
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.genode.org/pipermail/users/attachments/20130129/6e8cdd02/attachment.html>


More information about the users mailing list