Project Home
Project Home
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - QNX 6.5 OCB Extension Bug: (5 Items)
   
QNX 6.5 OCB Extension Bug  
Hello,

I would like to know if anyone tried and was succesfull extending OCB's on the 6.5 version. I believe that there is a 
bug allocating the extended OCB memory. The code compiles and executes, however the RM is not accessible even thou it is
 listed under devices. On older versions of the OS the code works perfectly. If I comment the line where we overwrite 
the mount.funcs structure (mount.funcs=&mount_funcs; in the attached code) the RM works but it may crash sometime since 
the memory is not allocated corrected.  I am attaching the following code that shows the problem if anyone is interested
 in trying to fix it. It is a simple server/client application where the cliente registers its name on the server 
extended OCB, and on every write() call the cliente sends the server prints the client name. 
Anyone has any ideas how to work-around this bug?
Thanks,

Dante Tezza

ps: when running the client, the  desired name should be passed as an argument
Attachment: Compressed file ocbExtension.zip 2.87 KB
Re: QNX 6.5 OCB Extension Bug  
Hi Dante, 
have you found solution to this?

thanks,
Saul
Re: QNX 6.5 OCB Extension Bug  
Hi Saul,

I havent yet, I was solving another issue that we are facing but now I am getting back to solve this one. I will keep 
the post updated.

Dante
Re: QNX 6.5 OCB Extension Bug  
Hi Dante,

I was interested in your post because we seem to have some similar issues in our application.

After working with your code for a while, I found a solution to your problem.  The problem with your code seems to be 
where you call the iofunc_attr_init function.  When I run your original code, I get a core dump error after loading the 
server and then running the client.  If I move the call to iofunc_attr_init down a few lines after the attr.mount 
variable has been set, then the program works correctly.  I modified your code to accept a command line option.  If you 
run the new code with option 1 (serverRM 1 &), it runs just like your original code.  If you run the new code with 
option 2 (serverRM 2 &), then it calls the iofunc_attr_init function after the attr.mount variable has been set.

I can't explain why your code seemed to work on the older version of QNX.

I hope this helps.

-Tim Fisher
Attachment: Text OCBExtension.7z 2.4 KB
Re: QNX 6.5 OCB Extension Bug  
Hi Timothy,

Thanks for your help, I have been busy lately and didnt have much time to deal with this issue. I will read your code 
and try it on our application and let you know how it goes.

Thank you,
Dante