[lkml]   [2007]   [Mar]   [14]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
Messages in this thread
    SubjectRE: Clarification required about select vs wake_up race condition
    Our driver is not in the kernel tree yet.
    The code snippet from poll entry point is as follows:

    mask = 0;
    poll_wait(filp, &(sap_desc->recv_any_wq), poll_table);
    /* We don't have yet a waiting queue for writers... */
    if ((sap_desc->recv_q.first != NULL) &&
    (block_ssync_event(sap_desc->recv_q.first) == FALSE)) {
    /* The queue can be read. */
    mask |= POLLIN | POLLRDNORM;
    return mask;

    The wake_up_interruptible(&(sap_desc->recv_any_wq)) is executed
    from the sending process.

    Hope this is sufficient. As I mentioned in my previous mail, what I
    am trying to understand better is the kernel code path of do_select()
    versus wake_up_interruptible.


    -----Original Message-----
    From: Arjan van de Ven []
    Sent: Wednesday, March 14, 2007 4:08 AM
    To: Ravinandan Arakali (rarakali)
    Subject: Re: Clarification required about select vs wake_up race

    On Mon, 2007-03-12 at 12:44 -0700, Ravinandan Arakali (rarakali) wrote:
    > Hi,
    > I am facing following problem and was wondering if somebody could help

    > me out.
    > Our char driver(pretty much like all other char drivers) does a
    > poll_wait()

    you forgot to include your (full) sourcecode or a pointer to that...
    To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
    the body of a message to
    More majordomo info at
    Please read the FAQ at

     \ /
      Last update: 2007-03-14 17:37    [W:0.025 / U:3.180 seconds]
    ©2003-2017 Jasper Spaans. hosted at Digital OceanAdvertise on this site