hald spins in a poll/read loop against /dev/usb with CURRENT

Gary Jennejohn gary.jennejohn at freenet.de
Fri Sep 25 13:32:14 UTC 2009


On Fri, 25 Sep 2009 21:23:12 +0800
Rohit Grover <rgrover1 at gmail.com> wrote:

> Hald spins endlessly on my CURRENT. I have the following from truss:
> 
> open("/dev/usb",O_RDONLY,00)                     = 12 (0xc)
> ...
> ...
> poll({4/POLLIN 8/POLLIN 10/POLLIN|POLLPRI 15/POLLIN 89/POLLIN 6/POLLIN
> 9/POLLIN 88/POLLIN 7/POLLIN 12/POLLIN},10,161) = 1 (0x1)
> gettimeofday({1253883730.961100 },0x0)           = 0 (0x0)
> read(12,0xbfbfe56c,384)                          = 0 (0x0)
> gettimeofday({1253883730.961158 },0x0)           = 0 (0x0)
> poll({4/POLLIN 8/POLLIN 10/POLLIN|POLLPRI 15/POLLIN 89/POLLIN 6/POLLIN
> 9/POLLIN 88/POLLIN 7/POLLIN 12/POLLIN},10,161) = 1 (0x1)
> gettimeofday({1253883730.961228 },0x0)           = 0 (0x0)
> read(12,0xbfbfe56c,384)                          = 0 (0x0)
> gettimeofday({1253883730.961286 },0x0)           = 0 (0x0)
> poll({4/POLLIN 8/POLLIN 10/POLLIN|POLLPRI 15/POLLIN 89/POLLIN 6/POLLIN
> 9/POLLIN 88/POLLIN 7/POLLIN 12/POLLIN},10,161) = 1 (0x1)
> gettimeofday({1253883730.961357 },0x0)           = 0 (0x0)
> read(12,0xbfbfe56c,384)                          = 0 (0x0)
> gettimeofday({1253883730.961415 },0x0)           = 0 (0x0)
> ...
> ...
> 
> Why is /dev/usb responding to poll() when there is no data to be read?
> 
> thanks.
>

/dev/usb is a directory on my 9-CURRENT machine, not a device file.

Did you install hald recently, e.g. after updating you kernel?  I'm pretty sure that
hald depends on kernel sources and often requires a fresh installation.

---
Gary Jennejohn


More information about the freebsd-current mailing list