> ----- Original Message ----- > From: "Rajat Jain" <Rajat.Jain@xxxxxxxxxxxx> > To: "Sumudu Nishantha" <sumudun@xxxxxxxxx>; > <kernelnewbies@xxxxxxxxxxxx> Sent: Thursday, December 13, 2007 9:15 PM > Subject: RE: synchronize user & kernel spaces > > > > Hi, > > Instead of looping forever in the user space, you could sleep in the > driver's ioctl() method (This would implicitly cause the user > application to sleep). The driver's ioctl() would be waken up by the > interrupt handler. > > Thanks, > > Rajat ----Original Message---- From: Sumudu Nishantha [mailto:sumudun@xxxxxxxxx] Sent: Thursday, December 13, 2007 5:55 PM To: Rajat Jain; kernelnewbies@xxxxxxxxxxxx Subject: Re: synchronize user & kernel spaces > This seems to be a good way. > It will block other processes accessing pci during dma > transfer. There are several processes which use the pci. > Therefore I don't want to block pci for a long time. > Anyway if there is no any other way, I will do that. I'm not sure if I understand you perfectly. Why would other processes be blocked? Do you mean that other processes who are trying to use the same ioctl()? They will not be blocked as ioctl() (in fact the whole of kernel) is reentrant. Thanks, Rajat PS: Please do not top post. -- To unsubscribe from this list: send an email with "unsubscribe kernelnewbies" to ecartis@xxxxxxxxxxxx Please read the FAQ at http://kernelnewbies.org/FAQ