From owner-freebsd-current@freebsd.org Mon Mar 8 19:31:43 2021 Return-Path: Delivered-To: freebsd-current@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 99137554EA7 for ; Mon, 8 Mar 2021 19:31:43 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: from mail-io1-f53.google.com (mail-io1-f53.google.com [209.85.166.53]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (2048 bits) client-digest SHA256) (Client CN "smtp.gmail.com", Issuer "GTS CA 1O1" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4DvT3z2xWxz3Mkc; Mon, 8 Mar 2021 19:31:43 +0000 (UTC) (envelope-from carpeddiem@gmail.com) Received: by mail-io1-f53.google.com with SMTP id i8so11220690iog.7; Mon, 08 Mar 2021 11:31:43 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=ns/asldu5XSzCM1NMGd+Z//2Asb33OXY+GzZP3gsu54=; b=YhxRj0zsy5O9c6njlmH/mui5yFIUCVFfGXMHOfCLNrkfmoVtk9UHKkLZtcgUfwl4wQ h+SJz4VPdMBLbdvk8iaahRCYDbOweZCdInDVGW88Y4YAu5/zHuHr8yeLf7Bw1qwUTycr /qaeI56xws56BRG8EPekOW2YQSfvjIBQP04S/z1RWv1utOhLfx8vewnARxpA8N6hZxQJ SL0w8rnCardoZladrawescPkYvvTxctge3w1icsOitedhiNHnyFi4IXij/gVarLKAavt 9yfDMZvsqxAPASemrzVKPD0T3vJ9CfhGfUjpv524Cul+1tvBluuHeJ+LJ94B7CEh33yd GoDQ== X-Gm-Message-State: AOAM532gFumqLalgDdJPYEua+WRRPFlkXbNdG3xc0jW7xV+A1UOCIeYd U9geYvWScoHThJ4jNePdTXRt1eGDnu94fNDROd0sOJ8AI+D45w== X-Google-Smtp-Source: ABdhPJwh+VhZRlNEl25AuPvckO5L/CqkJxvvjsdOPia8VJKq4RC5dedDE8oMQb6uVhXLf5pq1xIhqGmkW0JNmZA+A5w= X-Received: by 2002:a6b:fc16:: with SMTP id r22mr18998460ioh.102.1615231901873; Mon, 08 Mar 2021 11:31:41 -0800 (PST) MIME-Version: 1.0 References: <20210309.005732.1808108188909983665.yasu@utahime.org> <20210309.015021.2131122829257392547.yasu@utahime.org> In-Reply-To: From: Ed Maste Date: Mon, 8 Mar 2021 14:31:15 -0500 Message-ID: Subject: Re: Waiting for bufdaemon To: Kyle Evans Cc: Yasuhiro Kimura , FreeBSD Current Content-Type: text/plain; charset="UTF-8" X-Rspamd-Queue-Id: 4DvT3z2xWxz3Mkc X-Spamd-Bar: ---- Authentication-Results: mx1.freebsd.org; none X-Spamd-Result: default: False [-4.00 / 15.00]; REPLY(-4.00)[] X-BeenThere: freebsd-current@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: Discussions about the use of FreeBSD-current List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 08 Mar 2021 19:31:43 -0000 On Mon, 8 Mar 2021 at 12:07, Kyle Evans wrote: > > diff --git a/sys/x86/x86/tsc.c b/sys/x86/x86/tsc.c > index 68fc57e6ea7..6f25360a67c 100644 > --- a/sys/x86/x86/tsc.c > +++ b/sys/x86/x86/tsc.c > @@ -501,7 +501,12 @@ test_tsc(int adj_max_count) > uint64_t *data, *tsc; > u_int i, size, adj; > > - if ((!smp_tsc && !tsc_is_invariant) || vm_guest) > + /* > + * Misbehavior of TSC under VirtualBox has been observed. In > + * particular, threads doing small (~1 second) sleeps may miss their > + * wakeup and hang around in sleep state, causing hangs on shutdown. > + */ > + if ((!smp_tsc && !tsc_is_invariant) || vm_guest == VM_GUEST_VBOX) > return (-100); > size = (mp_maxid + 1) * 3; > data = malloc(sizeof(*data) * size * N, M_TEMP, M_WAITOK); This seems like a sensible change to me. To make it explicilty clear what the comment/workaround applies to, maybe rewrite it as: if (!smp_tsc && !tsc_is_invariant) return (-100); /* * Misbehavior of TSC under VirtualBox has been observed. In * particular, threads doing small (~1 second) sleeps may miss their * wakeup and hang around in sleep state, causing hangs on shutdown. */ if (vm_guest == VM_GUEST_VBOX) return (-100);