missing tasklet ?

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

 



As we know that tasklet is used to be scheduled in interrupt handler to
perform bottom half. To schedule a tasklet, its TASKLET_STATE_SCHED bit
is checked to see if the same tasklet already been scheduled and has not
yet been "consumed". This guarantees that the same tasklet will be
scheduled only once. This is intended for preventing tasklet-list from
being corrupted. What we can expect in the real world is "missing"
tasklet: the tasklets scheduled are often less than the interrupts
occured. That means something get missed.

For network driver, raising interrupt often indicates readiness of data.
but missing tasklet does not necessary mean missing data, because buffer
can always be used in interrupt handler to store the data.

For those where interrupt represents an externel event, we are not lucky
because we do miss the one immediatly followed.

This may be common, but beside buffer, I could not think of other
solution. Can someone contribute ?

Eric

--
Kernelnewbies: Help each other learn about the Linux kernel.
Archive:       http://mail.nl.linux.org/kernelnewbies/
FAQ:           http://kernelnewbies.org/faq/


[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