Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 08 Jun 2005 17:23:31 -0700
From:      Sam Leffler <sam@errno.com>
To:        Robert Watson <rwatson@freebsd.org>
Cc:        glebius@freebsd.org, current@freebsd.org
Subject:   Re: link state changes take a "long" time to execute
Message-ID:  <42A78C03.3090003@errno.com>
In-Reply-To: <20050609010700.V95135@fledge.watson.org>
References:  <20050609010700.V95135@fledge.watson.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Robert Watson wrote:
> 
> I'm running with task queue instrumentation on my notebook, and generate 
> warnings when task queues take more than 1/10th of a second to execute. 
> Normally the warnings fire only during the boot when tasks start being 
> scheduled by ACPI, but the ACPI task queue thread isn't yet being 
> scheduled to run because the scheduler hasn't been kicked off yet.  I 
> saw one this afternoon as follows:
> 
> taskqueue_run: warning, queue time of 0.133978201 for context 0xc0687c90
> 
> On my kernel, this function pointer resolves to:
> 
> c0687c90 t do_link_state_change
> 
> So it sounds like there's a substantial delay in the link change thread 
> -- probably because another task takes a long time to execute, maybe 
> blocking or delaying the task thread and preventing another task from 
> running.  On this box, I'm running with an idle if_xl, and an in-use 
> if_wi, which probably went into the associated state about when the 
> message was printed.  Kernel source date is June 3.

I don't think I ever committed the diagnostic code that checks for 
long-running tasks so this must be something in your private tree.

The link state change task seems to have grown enourmously since it was 
introduced.  Sounds like need to move it to a private task queue or 
break up the work.

	Sam



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?42A78C03.3090003>