current syncer bug...

Don Lewis truckman at FreeBSD.org
Mon Jul 5 13:06:29 PDT 2004


On  5 Jul, Poul-Henning Kamp wrote:
> 
> Waiting (max 60 seconds) for system process `vnlru' to stop...stopped
> Waiting (max 60 seconds) for system process `bufdaemon' to stop...stopped
> Waiting (max 60 seconds) for system process `syncer' to stop...0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Interesting ...

Does it ever print "stopped", or does it hit the 60 second timeout?

Is this a reboot in single user mode when nothing has been written?  If
so, the condition for calling kthread_suspend_check() probably needs to
look for (last_work_seen == -1 && net_worklist_len == 0), and
net_worklist_len needs to be set before this point.

Otherwise, in the following code fragment in sched_sync():

                if (syncer_state != SYNCER_RUNNING && starttime != time_second)
                        printf("%d ", net_worklist_len);

get rid of the (starttime != time_second) condition and add
last_work_seen to the printf().



More information about the freebsd-current mailing list