scheduling with io_lock held in 2.4.6

Peter T. Breuer (ptb@it.uc3m.es)
Fri, 17 Aug 2001 01:45:30 +0200 (MET DST)


I've been plagued for a month by smp lockups in my block driver
that I eventually deduced were due to somebody else scheduling while
holding the io_request_lock spinlock.

There's nothing so impressive as a direct test, so I put a test for
the spinlock being held at the front of schedule(), and sure enough, it
fires every 20s or so when I'm doing nothing in particular on the
machine:

Aug 17 01:36:42 xilofon kernel: Scheduling with io lock held in process 0

doing a dd to /dev/null from the ide disk seems to trigger it, but from
differnt contexts ...

Aug 17 01:40:58 xilofon kernel: Scheduling with io lock held in process 0
Aug 17 01:41:00 xilofon last message repeated 150 times
Aug 17 01:41:00 xilofon kernel: Scheduling with io lock held in process 1139
Aug 17 01:41:00 xilofon kernel: Scheduling with io lock held in process 0
Aug 17 01:41:01 xilofon last message repeated 87 times
Aug 17 01:41:01 xilofon kernel: Scheduling with io lock held in process 1141
Aug 17 01:41:01 xilofon kernel: Scheduling with io lock held in process 0

Surprise, 1139 and 1141 are klogd and syslogd respectively.

Any suggestions as to how to track this further?

Peter
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/