I didn't know it, but I had my poll and write messages switched in userland under await and send signal implementations of types. Sorry, it works now, it wasn't the kernel land repeatedly executing it. I wasn't sure, so I was still debugging. Anyway, thanks a lot though.
On Oct 5, 2016 2:29 AM, "Martin Kletzander" <mklet...@redhat.com> wrote: > On Tue, Oct 04, 2016 at 05:05:57PM +0200, Greg KH wrote: > >> On Tue, Oct 04, 2016 at 10:58:16AM -0400, Kenneth Adam Miller wrote: >> >>> I have a character device that I am calling write on and which is >>> succeeding, >>> but which is repeatedly executing. I have hard coded the return value to >>> one, >>> >> > Correct me if I'm wrong, I'm just a self-thought newbie, but this ^^ > sounds to me like the problem. Because the write should return how many > bytes were written (or error), the function is being called until it's > been all written. If you just want to be called once and you don't care > what the data are (which is the weird thing in the first place), I think > you should return the length you got as an argument. > > so I don't think the userland standard library is retrying but I could be >>> wrong. Can anybody tell me why write would be re-executed by the kernel >>> and how >>> to fix it? I dont actually copy_from_user, I just need this in order to >>> signal >>> kernel land. >>> >> >> Do you have a pointer to your code somewhere? This is a very common bug >> that people have... >> >> thanks, >> >> greg k-h >> >> _______________________________________________ >> Kernelnewbies mailing list >> Kernelnewbies@kernelnewbies.org >> https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies >> >
_______________________________________________ Kernelnewbies mailing list Kernelnewbies@kernelnewbies.org https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies