[Bug 256375] iflib/if_em: unplugging network cable causes huge KTorrent slowdown

From: <bugzilla-noreply_at_freebsd.org>
Date: Thu, 03 Jun 2021 11:56:29 UTC

--- Comment #6 from Alexey Dokuchaev <danfe@FreeBSD.org> ---
Created attachment 225522
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=225522&action=edit
drace without iflib_admin_intr_deferred() call

Alexander suggested commenting out iflib_admin_intr_deferred() call in
sys/dev/e1000/if_em.c like this:

> @@ -1564,7 +1564,7 @@ em_if_media_status(if_ctx_t ctx, struct ifmediareq *ifmr)
>  	INIT_DEBUGOUT("em_if_media_status: begin");
> -	iflib_admin_intr_deferred(ctx);
> +	//iflib_admin_intr_deferred(ctx);
>  	ifmr->ifm_status = IFM_AVALID;
>  	ifmr->ifm_active = IFM_ETHER;
This had caused minor, yet noticeable improvement in responsiveness: KTorrent
now stays mostly in "select" state with occasional "e1000_" and rare "iflib"
during which it's still stuck for several (vs several tens before) seconds, but
can nonetheless perform transfers again at reasonable speeds.  However, it's
still not as good as once I "kldunload if_em".

You are receiving this mail because:
You are the assignee for the bug.