Re: Char device write repeating

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



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" <mkletzan@xxxxxxxxxx> 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@xxxxxxxxxxxxxxxxg
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies
_______________________________________________
Kernelnewbies mailing list
Kernelnewbies@xxxxxxxxxxxxxxxxx
https://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies

[Index of Archives]     [Newbies FAQ]     [Linux Kernel Mentors]     [Linux Kernel Development]     [IETF Annouce]     [Git]     [Networking]     [Security]     [Bugtraq]     [Yosemite]     [MIPS Linux]     [ARM Linux]     [Linux RAID]     [Linux SCSI]     [Linux ACPI]
  Powered by Linux