Fix assumption about hwmon0

The logic looks for coretemp in all possible paths including old
kernel sysfs path for core temp and /sys/class/hwmon. If fails
it assumes hwmon0, which is not correct as a fallback. This
may contain some device which has no relation to cpu temp.
Use correct nfds

Instead of relying on pollfd structure memset to 0 and use nfds
as max possible, see the pollfds with the fd, which we are
want to wait on.