Find the answer to your Linux question:
Results 1 to 3 of 3
How is a sched_yield() done in a kernel module? The problem is that the kernel module is sending TCP out, but the thread never yields to allow the data to ...
Enjoy an ad free experience by logging in. Not a member yet? Register.
  1. #1
    Just Joined!
    Join Date
    Jan 2010
    Location
    The Sillicon Valley, California
    Posts
    28

    how to do sched_yield() in the kernel?


    How is a sched_yield() done in a kernel module?

    The problem is that the kernel module is sending TCP out,
    but the thread never yields to allow the data to be transmitted.

  2. #2
    Just Joined!
    Join Date
    Jul 2009
    Posts
    49

    Re: how to do sched_yield() in the kernel?

    That sounds like your current thread is thrashing. Does it not exit? You shouldn't really have to "yield" if your module is written correctly. Are you in an interrupt context and haven't cleared the interrupt bit before leaving? We need more information.

    Cheers!!

  3. #3
    Just Joined!
    Join Date
    Jan 2010
    Location
    The Sillicon Valley, California
    Posts
    28
    Yielding was required in order to allow TCP networking.

    schedule() was the solutions to this.

  4. $spacer_open
    $spacer_close

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •