It's been awhile since I did anything with UnixWare, but I think that if you have separate loadable "drivers" that have references to one another that UnixWare cannot deal with the circular dependency.  (Neither can Solaris.)

There are three ways around this that I can think of.

One would be to link the drivers together and simultaneously install Master and System files for both.

A second would be to build them into the kernel with idbuild instead of dynamically loading them.  This is what we do at Gcom.  We link a driver suite with mutual dependencies into the kernel and all is swell.

The third is to make the symbol dependencies one way.  You could do this by having one driver pass a block of function pointers to the other.

Be careful, though, unless you lock down your user space memory it is still the case that STREAMS drivers run without user context and so you could end up with SEGVs when accessing user space that you have no way to fix.

-- Dave

At 09:19 AM 4/2/2004, Andy Winton wrote:

hi guys,

        Here's a question I hope you can help me with.

        (It's not really to do with LiS but more a streams
        question)

        I have a STREAMS module, and I want to talk to
        userspace.  So I thought I'd make a floating driver
        which would sit next to the module, and then I'd
        talk with function calls between the two, and then
        the driver would be able to talk directly to a daemon
        in userspace.

        However, I have the module and driver as two separate
        entities.  And when I try to load up the module into
        unixware kernel, it complains because there is an
        unresolved symbol (the function which is in the driver
        I wish to call).

        (I can't communicate via the stream which the module
        is pushed on.)

        Is there a clever way to get this to work?

        thanks again,

andy



_______________________________________________
Linux-streams mailing list
[EMAIL PROTECTED]
http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams


---
Incoming mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.643 / Virus Database: 411 - Release Date: 3/25/2004
---
Outgoing mail is certified Virus Free.
Checked by AVG anti-virus system (http://www.grisoft.com).
Version: 6.0.643 / Virus Database: 411 - Release Date: 3/25/2004

Reply via email to