RE: Fwd: LiS-2.18 and driver open failure due to q->q_ptr being not Null.
"Rodrigues, Edward" <[email protected]>
| Newsgroups | gmane.linux.kernel.streams |
|---|---|
| Message-ID | <28E93C6A59D1C04AAA5E6DF106DCE628E67C7A@pysmsx401.amr.corp.intel.com> |
Hi, I could get driver open() working on 2.6 kernel by building the drivers as .o instead of .ko and using LiS method to convert .o to .ko as mentioned in the LiS documentation. My question here is building the modules as .ko directly without following the LiS method should it work? Thanks Ed -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Rodrigues, Edward Sent: Wednesday, February 02, 2005 1:31 PM To: [email protected] Cc: LiS Mailing List Subject: RE: [Linux-streams] Fwd: LiS-2.18 and driver open failure due to q->q_ptr being not Null. Hi Brian, Thanks for the reponse. This works fine now on 2.4 kernel with LiS-2.18 after adding qprocson(q) & qprocsoff(q) in open() and close() respectively but not with 2.6 kernel. Close() takes care of setting q_ptr to Null as you pointed out. I am using simple test program just to open the device and this is the first open()that fails, which shouldn't have to do anything with the close(). I am manually doing mknod /dev/xyz c clone_drvr xyz_drvr. Is this changed in 2.6? Since it enters my entry point I am assuming this should be okay. I will try with simple driver, if still an issue post the code. Ed -----Original Message----- From: Brian F. G. Bidulock [mailto:[email protected]] Sent: Wednesday, February 02, 2005 12:43 PM To: Rodrigues, Edward Cc: LiS Mailing List Subject: Re: [Linux-streams] Fwd: LiS-2.18 and driver open failure due to q->q_ptr being not Null. Edward, The only reason I can think that that would happen is if you forgot to do: q->q_ptr = WR(q)->q_ptr = NULL; in your qclose(9) procedure. Otherwise, I think you will have to share your qopen(9) and qclose(9) procedure to help you further. --brian On Tue, 01 Feb 2005, Dave Grothe wrote: > > Subject: LiS-2.18 and driver open failure due to q->q_ptr being not > Null. > Date: Tue, 1 Feb 2005 13:47:23 -0500 > From: "Rodrigues, Edward" <[email protected]> > To: <[email protected]> > Hi Dave, > I was trying LiS-2.18 and 2.6 kernel with our drivers and bumped > into > this problem where my open fails because q->q_ptr is not null. I > traced > this in lis_qopen() -> clone_open() and drvr_open(). It is fine in > lis_qopen() as well as clone_open() when it gets to the driver I > have > wrong q. > I tried the same with 2.4 kernel and ran into same issue. I have > made > sure I use sys/LiS/module.h. I am sure I must be missing something > basic. > Any help certainly appreciated. > Thanks > Ed -- Brian F. G. Bidulock | The reasonable man adapts himself to the | [email protected] | world; the unreasonable one persists in | http://www.openss7.org/ | trying to adapt the world to himself. | | Therefore all progress depends on the | | unreasonable man. -- George Bernard Shaw | _______________________________________________ Linux-streams mailing list [email protected] http://gsyc.escet.urjc.es/mailman/listinfo/linux-streams