Date: Mon, 19 Aug 2019 17:09:56 +0930 From: "O'Connor, Daniel" <darius@dons.net.au> To: Ian Lepore <ian@freebsd.org> Cc: "usb@freebsd.org" <usb@FreeBSD.org>, "freebsd-arm@FreeBSD.org" <freebsd-arm@FreeBSD.org> Subject: Re: Is it a good idea to use a usb-serial adapter for PPS input? Yes, it is. Message-ID: <9E142F1A-5E8C-4410-91F5-7C80B3D0A15B@dons.net.au> In-Reply-To: <61B1AAF3-40F6-47BC-8F05-7491C13BF288@dons.net.au> References: <f1d765814f722fb2c99c9870b3cc2607b4eca2d7.camel@freebsd.org> <B9EFA4D4-C1AD-4181-B421-F6BD53434FA5@dons.net.au> <bfd784f6ac9c939dbe6a243336bc3b6eab02d4f5.camel@freebsd.org> <61B1AAF3-40F6-47BC-8F05-7491C13BF288@dons.net.au>
index | next in thread | previous in thread | raw e-mail
> On 12 Aug 2019, at 09:09, O'Connor, Daniel <darius@dons.net.au> wrote:
>> always get lost on single-core processors which are in cpu_idle() at
>> the time the hardclock interrupt happens. (But that's fixable by just
>> increasing the number of timehands, I think at least 4 are required.)
>
> OK, how do I increase the number of clock hands?
I am going to try this diff but buildkernel is going to take a while...
diff --git a/sys/kern/kern_tc.c b/sys/kern/kern_tc.c
index 2656fb4d2..00440b6a2 100644
--- a/sys/kern/kern_tc.c
+++ b/sys/kern/kern_tc.c
@@ -83,8 +83,48 @@ struct timehands {
struct timehands *th_next;
};
-static struct timehands th0;
+static struct timehands th2;
static struct timehands th1 = {
+ .th_next = &th2
+};
+
+static struct timehands th3;
+static struct timehands th2 = {
+ .th_next = &th3
+};
+
+static struct timehands th4;
+static struct timehands th3 = {
+ .th_next = &th4
+};
+
+static struct timehands th5;
+static struct timehands th4 = {
+ .th_next = &th5
+};
+
+static struct timehands th6;
+static struct timehands th5 = {
+ .th_next = &th6
+};
+
+static struct timehands th7;
+static struct timehands th6 = {
+ .th_next = &th7
+};
+
+static struct timehands th8;
+static struct timehands th7 = {
+ .th_next = &th8
+};
+
+static struct timehands th9;
+static struct timehands th8 = {
+ .th_next = &th9
+};
+
+static struct timehands th0;
+static struct timehands th9 = {
.th_next = &th0
};
static struct timehands th0 = {
--
Daniel O'Connor
"The nice thing about standards is that there
are so many of them to choose from."
-- Andrew Tanenbaum
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?9E142F1A-5E8C-4410-91F5-7C80B3D0A15B>
