Bug 245768 - timer tests of sys.kqueue.libkqueue.kqueue_test.main failing on i386
Summary: timer tests of sys.kqueue.libkqueue.kqueue_test.main failing on i386
Status: Closed FIXED
Alias: None
Product: Base System
Classification: Unclassified
Component: tests (show other bugs)
Version: CURRENT
Hardware: i386 Any
: --- Affects Only Me
Assignee: freebsd-testing (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-04-20 17:39 UTC by Li-Wen Hsu
Modified: 2020-04-22 09:58 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Li-Wen Hsu freebsd_committer freebsd_triage 2020-04-20 17:39:24 UTC
https://ci.freebsd.org/job/FreeBSD-head-i386-test/9052/testReport/sys.kqueue.libkqueue/kqueue_test/main/:

kqtest: kevent(EVFILT_TIMER, EV_ONESHOT, NOTE_ABSTIME): Invalid argument
Comment 1 commit-hook freebsd_committer freebsd_triage 2020-04-20 17:48:40 UTC
A commit references this bug:

Author: lwhsu
Date: Mon Apr 20 17:48:11 UTC 2020
New revision: 360130
URL: https://svnweb.freebsd.org/changeset/base/360130

Log:
  Temporarily skip timer tests in sys.kqueue.libkqueue.kqueue_test.main on i386

  PR:		245768
  Sponsored by:	The FreeBSD Foundation

Changes:
  head/tests/sys/kqueue/libkqueue/kqueue_test.sh
Comment 2 Li-Wen Hsu freebsd_committer freebsd_triage 2020-04-20 17:51:59 UTC
kevans: I feel this might be related to r360033, can you help check this? Thanks!
Comment 3 Kyle Evans freebsd_committer freebsd_triage 2020-04-20 17:53:29 UTC
This should have already been fixed in https://svnweb.freebsd.org/changeset/base/360108
Comment 4 Li-Wen Hsu freebsd_committer freebsd_triage 2020-04-20 21:01:42 UTC
For the record, the build 9052 is using r360116, so there might be issue in CI env or in VM.
Comment 5 commit-hook freebsd_committer freebsd_triage 2020-04-21 03:57:35 UTC
A commit references this bug:

Author: kevans
Date: Tue Apr 21 03:57:31 UTC 2020
New revision: 360140
URL: https://svnweb.freebsd.org/changeset/base/360140

Log:
  kqueue: fix conversion of timer data to sbintime

  This unbreaks the i386 kqueue timer tests after a recent change switched
  NOTE_ABSTIME over to using microseconds. Notably, the data argument (which
  holds useconds) is an int64_t, but we were passing it to timer2sbintime
  which takes an intptr_t. Perhaps in a previous incarnation, intptr_t would
  have made sense, but now it just leads to the timestamp getting truncated
  and subsequently rejected when it no longer fits in an intptr_t.

  PR:		245768
  Reported by:	lwhsu / CI
  MFC after:	1 week

Changes:
  head/sys/kern/kern_event.c
Comment 6 Kyle Evans freebsd_committer freebsd_triage 2020-04-21 04:00:00 UTC
There's a separate bug that causes the same test to fail under compat32; it was discovered while investigating this PR, but is only related in that way. For documentation purposes, here: https://reviews.freebsd.org/D24518
Comment 7 Kyle Evans freebsd_committer freebsd_triage 2020-04-21 23:42:00 UTC
This is pending lwhsu confirmation that the test is fine again after r360140; I believe the situation to be remedied, though.
Comment 8 commit-hook freebsd_committer freebsd_triage 2020-04-22 09:54:13 UTC
A commit references this bug:

Author: lwhsu
Date: Wed Apr 22 09:53:41 UTC 2020
New revision: 360192
URL: https://svnweb.freebsd.org/changeset/base/360192

Log:
  Enable timer tests in sys.kqueue.libkqueue.kqueue_test.main on i386

  They were fixed in r360140

  PR:		245768
  Sponsored by:	The FreeBSD Foundation

Changes:
  head/tests/sys/kqueue/libkqueue/kqueue_test.sh