NetBSD Problem Report #55946

From paul@whooppee.com  Fri Jan 22 20:06:54 2021
Return-Path: <paul@whooppee.com>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
	(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits))
	(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
	by mollari.NetBSD.org (Postfix) with ESMTPS id 82C401A923B
	for <gnats-bugs@gnats.NetBSD.org>; Fri, 22 Jan 2021 20:06:54 +0000 (UTC)
Message-Id: <20210122200651.0A23A30F2C4@speedy.whooppee.com>
Date: Fri, 22 Jan 2021 12:06:51 -0800 (PST)
From: paul@whooppee.com
Reply-To: paul@whooppee.com
To: gnats-bugs@NetBSD.org
Subject: kern_event.c changes break firefox
X-Send-Pr-Version: 3.95

>Number:         55946
>Category:       kern
>Synopsis:       recent kern_event.c changes break firefox
>Confidential:   no
>Severity:       critical
>Priority:       high
>Responsible:    jdolecek
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Fri Jan 22 20:10:00 +0000 2021
>Closed-Date:    Mon Jan 25 22:22:48 +0000 2021
>Last-Modified:  Mon Jan 25 22:22:48 +0000 2021
>Originator:     Paul Goyette
>Release:        NetBSD 9.99.78
>Organization:
+--------------------+--------------------------+-----------------------+
| Paul Goyette       | PGP Key fingerprint:     | E-mail addresses:     |
| (Retired)          | FA29 0E3B 35AF E8AE 6651 | paul@whooppee.com     |
| Software Developer | 0786 F758 55DE 53BA 7731 | pgoyette@netbsd.org   |
+--------------------+--------------------------+-----------------------+
>Environment:


System: NetBSD speedy.whooppee.com 9.99.78 NetBSD 9.99.78 (SPEEDY 2021-01-22 04:02:20 UTC) #1: Fri Jan 22 19:50:36 UTC 2021 paul@speedy.whooppee.com:/build/netbsd-local/obj/amd64/sys/arch/amd64/compile/SPEEDY amd64
Architecture: x86_64
Machine: amd64
>Description:
	With recent changes to kern_event.c (beginning with rev 1.111)
	firefox seems to be badly broken.  Attempting to open certain
	pages results in never-ending-hang (I actually waited more than
	an hour!), and nothing ever gets rendered.  I can use the
	Stop-Reloading "X" button, and the "oscillating dot" load
	indicator stops oscillating, but nothing ever happens.  At that
	point, the tab is hung and cannot load any other page, not even
	pages that loaded successfully previously!  I _can_ delete the
	tab, and opening a new tab works.

	I've reverted kern_event.c to rev 1.110 and rebuilt my kernel
	from the same source tree.  With rev 1.110 everything works as
	expected.


>How-To-Repeat:
	See above

>Fix:
	Revert kern_event.c (the original problem fixed by 1.111 thru
	1.113 needs to be fixed differently).


>Release-Note:

>Audit-Trail:

Responsible-Changed-From-To: kern-bug-people->jdolecek
Responsible-Changed-By: jdolecek@NetBSD.org
Responsible-Changed-When: Fri, 22 Jan 2021 21:42:14 +0000
Responsible-Changed-Why:
My change broke this.
Nevertheless, can you please provide kdump of firefox when it hangs? I need
to check what is it exactly doing with kqueue.


From: Paul Goyette <paul@whooppee.com>
To: gnats-bugs@netbsd.org
Cc: 
Subject: Re: kern/55946: kern_event.c changes break firefox
Date: Sat, 23 Jan 2021 08:33:56 -0800 (PST)

 The short patch that Jaromir sent helps the problem, but things still
 hang at unpredictable intervals.

 I have a ktrace from running firefox, but it is rather large (> 5GB).
 How would you like me to deliver?  :)


 +--------------------+--------------------------+-----------------------+
 | Paul Goyette       | PGP Key fingerprint:     | E-mail addresses:     |
 | (Retired)          | FA29 0E3B 35AF E8AE 6651 | paul@whooppee.com     |
 | Software Developer | 0786 F758 55DE 53BA 7731 | pgoyette@netbsd.org   |
 +--------------------+--------------------------+-----------------------+

From: "Jaromir Dolecek" <jdolecek@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/55946 CVS commit: src/sys/kern
Date: Sun, 24 Jan 2021 11:31:48 +0000

 Module Name:	src
 Committed By:	jdolecek
 Date:		Sun Jan 24 11:31:47 UTC 2021

 Modified Files:
 	src/sys/kern: kern_event.c

 Log Message:
 don't check signals while waiting for other kqueue scans to finish

 reportedly somewhat improves behaviour for PR kern/55946

 part of PR kern/50094 fix


 To generate a diff of this commit:
 cvs rdiff -u -r1.113 -r1.114 src/sys/kern/kern_event.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "Jaromir Dolecek" <jdolecek@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/55946 CVS commit: src/sys/kern
Date: Mon, 25 Jan 2021 19:57:05 +0000

 Module Name:	src
 Committed By:	jdolecek
 Date:		Mon Jan 25 19:57:05 UTC 2021

 Modified Files:
 	src/sys/kern: kern_event.c

 Log Message:
 put back clearing of KN_QUEUED and check for re-queue - as rev. 1.53 notes,
 it's necessary for correct function

 fixes PR kern/55946, thanks to Paul Goyette for testing

 part of PR kern/50094 fix


 To generate a diff of this commit:
 cvs rdiff -u -r1.114 -r1.115 src/sys/kern/kern_event.c

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

State-Changed-From-To: open->closed
State-Changed-By: jdolecek@NetBSD.org
State-Changed-When: Mon, 25 Jan 2021 22:22:48 +0000
State-Changed-Why:
Confirmed fixed, thanks for testing.


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.46 2020/01/03 16:35:01 leot Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2020 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.