Page MenuHomeFreeBSD

cperciva (Colin Percival)
User

Projects

User Details

User Since
Jun 3 2014, 6:45 PM (236 w, 3 d)

Recent Activity

Oct 30 2018

cperciva committed rS339903: Unbreak FreeBSD Update mirroring code for OpenSSL 1.1.
Unbreak FreeBSD Update mirroring code for OpenSSL 1.1
Oct 30 2018, 1:39 AM

Sep 24 2018

cperciva committed rS338921: Recognize the Amazon PCI serial device found in i3.metal EC2 instances.
Recognize the Amazon PCI serial device found in i3.metal EC2 instances
Sep 24 2018, 10:15 PM
cperciva closed D17250: Add support for EC2 i3.metal serial port.
Sep 24 2018, 10:15 PM

Sep 19 2018

cperciva added reviewers for D17250: Add support for EC2 i3.metal serial port: imp, mmacy, sbruno, emaste.

Adding some reviewers who have touched this recently and may be able to tell me if I'm doing this right and/or what I'm missing.

Sep 19 2018, 9:28 PM
cperciva created D17250: Add support for EC2 i3.metal serial port.
Sep 19 2018, 9:26 PM

Sep 7 2018

cperciva accepted D17061: ix(4), ixv(4): Add VLAN tag strip check when receiving packets; ixv(4): Fix support for VLAN_HWTAGGING and VLAN_HWFILTER flags.

Works in all of my testing. Please commit!

Sep 7 2018, 6:32 PM · Intel Networking

Sep 6 2018

cperciva added a comment to D17013: xen: fix setting vcpu id for APs.

Awesome, this fixes the boot on all the EC2 instances I've tried. Please commit!

Sep 6 2018, 6:35 PM
cperciva added a comment to D17013: xen: fix setting vcpu id for APs.

Hmm, I guess filling in vcpu_id after xen_hvm_cpu_init returns won't work, since we use that value in the "Set the vCPU info." code at the end of that function.

Sep 6 2018, 12:25 PM
cperciva added a comment to D17013: xen: fix setting vcpu id for APs.

Still doesn't work. We have a chicken-and-egg problem between launching CPUs and recording their IDs, it seems...

Sep 6 2018, 12:24 PM
cperciva added a comment to D17013: xen: fix setting vcpu id for APs.

I wonder, can we make this work by changing the lines

Sep 6 2018, 12:24 PM

Sep 4 2018

cperciva added a comment to D17013: xen: fix setting vcpu id for APs.

Hmm, I agree that it looks like this *should* fix the problem, but I'm still seeing the instance hang waiting for TLB shootdown IPIs to complete. Maybe there's something else going on here.

Sep 4 2018, 6:38 PM

Aug 26 2018

cperciva committed rS338323: MFC r336420,336433,336593,336621,336622,336624,337394,337401,338141.
MFC r336420,336433,336593,336621,336622,336624,337394,337401,338141
Aug 26 2018, 5:28 AM
cperciva committed rS338322: MFC r336420,336433,336593,336621,336622,336624,337394,337401,338141.
MFC r336420,336433,336593,336621,336622,336624,337394,337401,338141
Aug 26 2018, 4:33 AM
cperciva committed rS338321: Disable atkbd0 and atkdbc0 in EC2 AMIs. This has the effect of skipping.
Disable atkbd0 and atkdbc0 in EC2 AMIs. This has the effect of skipping
Aug 26 2018, 3:57 AM

Aug 25 2018

cperciva committed rS338316: Speed up vt(4) by keeping a record of the most recently drawn character and.
Speed up vt(4) by keeping a record of the most recently drawn character and
Aug 25 2018, 4:15 PM
cperciva closed D16723: Cache the most recently drawn text on vt and don't re-draw it.
Aug 25 2018, 4:15 PM

Aug 21 2018

cperciva added inline comments to D16723: Cache the most recently drawn text on vt and don't re-draw it.
Aug 21 2018, 6:06 PM
cperciva committed rS338141: Quieten the svn (or svnlite) commands used to extract information from an.
Quieten the svn (or svnlite) commands used to extract information from an
Aug 21 2018, 3:30 PM

Aug 17 2018

cperciva added a comment to D16723: Cache the most recently drawn text on vt and don't re-draw it.

On my laptop, this cuts the time spent in _vprintf during the kernel boot from 970 ms down to 155 ms.

Aug 17 2018, 10:01 AM

Aug 15 2018

cperciva created D16723: Cache the most recently drawn text on vt and don't re-draw it.
Aug 15 2018, 3:42 PM

Aug 7 2018

cperciva committed rS337411: Replace a pair of 8-bit writes to VGA memory with a single 16-bit write..
Replace a pair of 8-bit writes to VGA memory with a single 16-bit write.
Aug 7 2018, 8:33 AM
cperciva committed rS337401: Fix copy-and-paste error in previous commit..
Fix copy-and-paste error in previous commit.
Aug 7 2018, 12:52 AM

Aug 6 2018

cperciva committed rS337394: Add EC2PUBLICSNAP option to EC2 builds; this passes a (recently added).
Add EC2PUBLICSNAP option to EC2 builds; this passes a (recently added)
Aug 6 2018, 7:21 PM

Aug 1 2018

cperciva committed rP476203: Update to version 1.2.1. This brings two changes:.
Update to version 1.2.1. This brings two changes:
Aug 1 2018, 10:06 PM

Jul 21 2018

cperciva committed rS336593: Use svn or svnlite, or ${SVN_CMD} if set, for extracting the SVN branch.
Use svn or svnlite, or ${SVN_CMD} if set, for extracting the SVN branch
Jul 21 2018, 10:55 PM

Jul 17 2018

cperciva committed rS336433: Check that EC2SNSTOPIC and EC2PUBLIC are non-empty, along with being.
Check that EC2SNSTOPIC and EC2PUBLIC are non-empty, along with being
Jul 17 2018, 11:16 PM
cperciva committed rS336420: Teach EC2 AMI release code to send an SNS notification after publishing.
Teach EC2 AMI release code to send an SNS notification after publishing
Jul 17 2018, 7:05 PM
cperciva committed rP474781: Update bsdec2-image-upload to version 1.2..
Update bsdec2-image-upload to version 1.2.
Jul 17 2018, 7:37 AM

Jul 1 2018

cperciva committed rP473645: Update to 1.1. Add dependency on devel/gdb for FreeBSD versions which.
Update to 1.1. Add dependency on devel/gdb for FreeBSD versions which
Jul 1 2018, 12:12 AM
cperciva committed rS335829: Add /usr/local/bin to $PATH so that panicmail can use gdb from ports..
Add /usr/local/bin to $PATH so that panicmail can use gdb from ports.
Jul 1 2018, 12:07 AM

Jun 30 2018

cperciva committed rS335828: MFC r335553: Make CLOCK_PROCESS_CPUTIME_ID more accurate by including.
MFC r335553: Make CLOCK_PROCESS_CPUTIME_ID more accurate by including
Jun 30 2018, 9:36 PM

Jun 24 2018

cperciva committed rP473189: Update bsdec2-image-upload to version 1.1.4..
Update bsdec2-image-upload to version 1.1.4.
Jun 24 2018, 8:46 AM

Jun 22 2018

cperciva committed rS335553: Improve the accuracy of the POSIX "process CPU-time" clocks by adding the.
Improve the accuracy of the POSIX "process CPU-time" clocks by adding the
Jun 22 2018, 10:23 AM

Apr 25 2018

cperciva committed rS332982: MFC r332663: Move panic-related settings from sysctl.conf to loader.conf so.
MFC r332663: Move panic-related settings from sysctl.conf to loader.conf so
Apr 25 2018, 1:54 AM

Apr 23 2018

cperciva added a comment to D15153: Add device_quiet_children() and device_has_quiet_children().

Tested on EC2 x1.32xlarge (72 CPUs) and c5.18xlarge (128 CPUs) instances. Aside from making the console output far less verbose, the c5.18xlarge kernel boot time (measured from entering hammer_time to when init enters userland) dropped from 18.78 s to 11.75 s, and the x1.32xlarge kernel boot time dropped from 45.71 s to 36.33 s.

Apr 23 2018, 8:15 PM

Apr 21 2018

cperciva added a comment to D15153: Add device_quiet_children() and device_has_quiet_children().

Works for me. Two minor questions about the code (see comments inline).

Apr 21 2018, 11:14 PM

Apr 18 2018

cperciva committed rS332663: Move debug.{trace,debugger}_on_panic and kern.panic_reboot_wait_time in.
Move debug.{trace,debugger}_on_panic and kern.panic_reboot_wait_time in
Apr 18 2018, 5:58 AM

Mar 5 2018

cperciva added a comment to D14500: Implement getrandom(2) and getentropy(3).

Not looking at the code, but on the design front:

Mar 5 2018, 10:07 PM

Mar 4 2018

cperciva committed rS330417: MFC r320367: Add "Terminus BSD Console" size 32.
MFC r320367: Add "Terminus BSD Console" size 32
Mar 4 2018, 9:59 PM

Feb 28 2018

cperciva added a comment to D14275: Add pkg_bootstrap firstboot script..

Absolutely fine with me. When I wrote this (and also firstboot-freebsd-update) I was anticipating that it might end up in the base system if people found it useful -- I have a long history of using the ports tree as a staging area like this. :-)

Feb 28 2018, 8:36 PM

Feb 9 2018

cperciva added a comment to D14275: Add pkg_bootstrap firstboot script..

You're aware of sysutils/firstboot-pkgs in the ports tree, right? Wouldn't it make sense to migrate that into the base system rather than adding a new script?

Feb 9 2018, 9:20 AM

Dec 31 2017

cperciva committed rS327447: Wrap includes in sys/tslog.h with #ifdef TSLOG..
Wrap includes in sys/tslog.h with #ifdef TSLOG.
Dec 31 2017, 9:00 PM
cperciva committed rS327432: Use the TSLOG framework to record entry/exit timestamps for DELAY and.
Use the TSLOG framework to record entry/exit timestamps for DELAY and
Dec 31 2017, 9:24 AM
cperciva committed rS327431: Instrument thread creations for the the benefit of the TSLOG framework..
Instrument thread creations for the the benefit of the TSLOG framework.
Dec 31 2017, 9:24 AM
cperciva committed rS327430: Instrument "boot holds" for the benefit of the TSLOG framework. These.
Instrument "boot holds" for the benefit of the TSLOG framework. These
Dec 31 2017, 9:24 AM
cperciva committed rS327429: Use the TSLOG framework to record entry/exit timestamps for VFS_MOUNT calls..
Use the TSLOG framework to record entry/exit timestamps for VFS_MOUNT calls.
Dec 31 2017, 9:23 AM
cperciva committed rS327428: Teach makeobjops.awk to accept PROLOG and EPILOG blocks before.
Teach makeobjops.awk to accept PROLOG and EPILOG blocks before
Dec 31 2017, 9:23 AM
cperciva committed rS327427: Use the TSLOG framework to record SYSINIT entry/exit timestamps..
Use the TSLOG framework to record SYSINIT entry/exit timestamps.
Dec 31 2017, 9:23 AM
cperciva committed rS327426: Use the TSLOG framework to record entry/exit timestamps for machine.
Use the TSLOG framework to record entry/exit timestamps for machine
Dec 31 2017, 9:22 AM
cperciva committed rS327425: Use the TSLOG framework to record entry/exit timestamps for hammer_time..
Use the TSLOG framework to record entry/exit timestamps for hammer_time.
Dec 31 2017, 9:22 AM
cperciva committed rS327424: Connect kern_tslog.c to the build and add TSLOG / TSLOGSIZE kernel options..
Connect kern_tslog.c to the build and add TSLOG / TSLOGSIZE kernel options.
Dec 31 2017, 9:21 AM
cperciva committed rS327423: Code for recording timestamps of events, especially function entries/exits..
Code for recording timestamps of events, especially function entries/exits.
Dec 31 2017, 9:21 AM

Dec 20 2017

cperciva added a comment to D13530: Properly define static mutex in mlx4 core.

(Continuing on from the email thread:)

Dec 20 2017, 9:54 AM

Dec 16 2017

cperciva committed rS326892: MFC r326565: Make EC2 instances use Amazon's NTP service for time.
MFC r326565: Make EC2 instances use Amazon's NTP service for time
Dec 16 2017, 12:48 AM
cperciva committed rS326891: Add vfs.nfs.suppress_32bits_warning sysctl which reduces the frequency.
Add vfs.nfs.suppress_32bits_warning sysctl which reduces the frequency
Dec 16 2017, 12:44 AM

Dec 5 2017

cperciva committed rS326565: Make EC2 instances use Amazon's NTP service for time synchronization..
Make EC2 instances use Amazon's NTP service for time synchronization.
Dec 5 2017, 9:22 AM
cperciva committed rS326564: Resurrect r321659: Turn off ChallengeResponseAuthentication for EC2 AMIs..
Resurrect r321659: Turn off ChallengeResponseAuthentication for EC2 AMIs.
Dec 5 2017, 9:09 AM

Nov 1 2017

cperciva committed rS325254: Add the amazon-ssm-agent package to EC2 AMI builds. This makes it.
Add the amazon-ssm-agent package to EC2 AMI builds. This makes it
Nov 1 2017, 12:34 AM

Aug 23 2017

cperciva added a comment to D12105: Initialize FPU sooner. Prompted by: cperciva@.

This patch works fine, but when I try to use the FPU from an SI_SUB_CPU sysinit (after calling fpu_kern_enter) I get:

Aug 23 2017, 6:21 AM

Aug 5 2017

cperciva committed rP447400: Update sysutils/Makefile to reflect consolekit -> consolekit2 move.
Update sysutils/Makefile to reflect consolekit -> consolekit2 move
Aug 5 2017, 11:39 AM

Jul 29 2017

cperciva committed rP446863: Update sysutils/tarsnap to 1.0.39. This fixes four crashes, including an.
Update sysutils/tarsnap to 1.0.39. This fixes four crashes, including an
Jul 29 2017, 4:01 AM

Jul 16 2017

cperciva committed rP445984: Update tarsnap to version 1.0.38..
Update tarsnap to version 1.0.38.
Jul 16 2017, 4:09 AM

Jul 12 2017

cperciva committed rP445574: Update bsdec2-image-upload to version 1.1.3: Retry failed Amazon S3 PUTs.
Update bsdec2-image-upload to version 1.1.3: Retry failed Amazon S3 PUTs
Jul 12 2017, 6:13 AM

Jul 7 2017

cperciva committed rS320760: MF11 r320731,320749,320759: Add Amazon Elastic Network Adapter driver.
MF11 r320731,320749,320759: Add Amazon Elastic Network Adapter driver
Jul 7 2017, 12:35 AM

Jul 6 2017

cperciva committed rS320759: MFC r318894: Enable Amazon's "Elastic Network Adapter" in EC2 AMIs..
MFC r318894: Enable Amazon's "Elastic Network Adapter" in EC2 AMIs.
Jul 6 2017, 10:35 PM
cperciva committed rS320749: Fix up r320731:.
Fix up r320731:
Jul 6 2017, 6:08 PM

Jun 22 2017

cperciva committed rS320219: MFC r319491:.
MFC r319491:
Jun 22 2017, 5:30 AM
cperciva committed rS320218: MFC r31956[12]: Teach primes(6) to enumerate primes up to 2^64 - 1..
MFC r31956[12]: Teach primes(6) to enumerate primes up to 2^64 - 1.
Jun 22 2017, 5:26 AM

Jun 21 2017

cperciva committed rP444078: Update bsdec2-image-upload to version 1.1.2. This works around recent.
Update bsdec2-image-upload to version 1.1.2. This works around recent
Jun 21 2017, 8:57 PM

Jun 6 2017

cperciva added a comment to D10991: make max buffer cache block size and max NFS I/O size tunable.

Yes, that's it -- lots of getattrs. I wonder if EFS was optimized for "open a file and use it over an extended duration" usage patterns rather than buildworld's reading and writing of lots of separate files.

Jun 6 2017, 1:20 PM
cperciva added a comment to D10991: make max buffer cache block size and max NFS I/O size tunable.

FWIW, testing with Amazon EFS: A straightforward dd throughput test shows a doubling in performance when moving from 64 kB I/Os to 128 kB I/Os -- from 15 MB/s to 30 MB/s. But 'make buildworld' benchmarking doesn't show any significant difference in performance; it looks like while larger I/Os are happening, they're not common enough in buildworld to matter. (In fact, EFS shows ~5M "metadata" operations per hour, but only ~500k writes/hour and ~50k reads/hour; is this an expected distribution?)

Jun 6 2017, 7:02 AM

Jun 4 2017

cperciva committed rS319562: Delete obsolete paragraph; primes(6) is now able to list primes for the.
Delete obsolete paragraph; primes(6) is now able to list primes for the
Jun 4 2017, 2:45 AM
cperciva committed rS319561: Using results from.
Using results from
Jun 4 2017, 2:37 AM

Jun 3 2017

cperciva added a comment to D10991: make max buffer cache block size and max NFS I/O size tunable.

OK, so with a GENERIC kernel this patch only takes us from a maximum 64kB request size to a maximum 128kB request size?

Jun 3 2017, 8:41 PM
cperciva added a comment to D10991: make max buffer cache block size and max NFS I/O size tunable.

I applied this patch, set

Jun 3 2017, 6:50 PM

Jun 2 2017

cperciva committed rS319491: Skip setting the MTU in the netfront driver (xn# devices) if the new MTU.
Skip setting the MTU in the netfront driver (xn# devices) if the new MTU
Jun 2 2017, 7:04 AM

May 30 2017

cperciva committed rP442051: Build amazon-ssm-agent directly from the port Makefile rather than recursing.
Build amazon-ssm-agent directly from the port Makefile rather than recursing
May 30 2017, 7:34 AM

May 28 2017

cperciva committed rP441899: Update Amazon SSM Agent to version 2.0.790.0..
Update Amazon SSM Agent to version 2.0.790.0.
May 28 2017, 8:01 AM

May 25 2017

cperciva committed rS318894: Turn on support for the Amazon "Elastic Network Adapter" in EC2 AMIs..
Turn on support for the Amazon "Elastic Network Adapter" in EC2 AMIs.
May 25 2017, 7:03 PM
cperciva committed rP441710: Update bsdec2-image-upload to version 1.1.1. This adds an --ena option.
Update bsdec2-image-upload to version 1.1.1. This adds an --ena option
May 25 2017, 6:58 PM

May 18 2017

cperciva committed rP441192: Update spiped to 1.6.0..
Update spiped to 1.6.0.
May 18 2017, 7:03 PM

Apr 20 2017

cperciva added a comment to D10427: Add support for Amazon Elastic Network Adapter (ENA) NIC.

I think this needs a change to sys/modules/Makefile as well in order to connect it to the build?

Apr 20 2017, 1:16 AM
cperciva added inline comments to D10427: Add support for Amazon Elastic Network Adapter (ENA) NIC.
Apr 20 2017, 1:12 AM

Apr 12 2017

cperciva committed rP438412: Update security/scrypt to version 1.2.1..
Update security/scrypt to version 1.2.1.
Apr 12 2017, 8:48 PM

Jan 26 2017

cperciva committed rS312790: MFC r312214: Enable IPv6 on EC2 AMIs..
MFC r312214: Enable IPv6 on EC2 AMIs.
Jan 26 2017, 4:44 AM

Jan 20 2017

cperciva committed rP431925: MFH: r431537.
MFH: r431537
Jan 20 2017, 1:56 AM

Jan 15 2017

cperciva committed rS312214: Enable IPv6 networking on Amazon EC2..
Enable IPv6 networking on Amazon EC2.
Jan 15 2017, 9:07 AM
cperciva committed rP431537: Add "dual dhclient" script, which can be specified as dhclient_program in.
Add "dual dhclient" script, which can be specified as dhclient_program in
Jan 15 2017, 9:00 AM

Jan 11 2017

cperciva committed rS311945: Remove obsolete path from fortune(6). This was inadvertantly left over.
Remove obsolete path from fortune(6). This was inadvertantly left over
Jan 11 2017, 10:51 PM

Jan 3 2017

cperciva added a comment to D8965: Avoid ESTALE if directory deleted by same NFS client.

A new possible issue has come up while testing this: Something is unhappy about getting ENOENT when trying to access '.'. I think it might be getdirentries; on UFS attempting to read a directory which has been deleted acts as if it is an empty directory rather than a non-existent directory. I'm not sure if behaving like UFS in this case is feasible.

Jan 3 2017, 12:33 AM
cperciva added a comment to D8965: Avoid ESTALE if directory deleted by same NFS client.

Looks fine to me. In case you didn't want this behaviour, the NREMOVED flag is
cleared by the NFS VOP_INACTIVE(), which means the "return ENOENT" will only
happen while another reference is held on the vnode (such as a current directory).

Jan 3 2017, 12:28 AM

Jan 2 2017

cperciva resigned from D3527: Suppress harmless warning if running in 'cron' mode.
Jan 2 2017, 9:12 PM
cperciva resigned from D3818: xen/netfront: Add 2 bytes padding in the rx mbuf.
Jan 2 2017, 9:12 PM

Dec 30 2016

cperciva updated the diff for D8965: Avoid ESTALE if directory deleted by same NFS client.
Dec 30 2016, 4:18 AM

Dec 29 2016

cperciva added a comment to D8988: Add support to the NFSv4.1 client for use of a single OpenOwner for all Opens.

The question is more whether I'm *able* to usefully review rather than whether I'm *willing*. :-)

Dec 29 2016, 10:02 PM
cperciva added a comment to D8965: Avoid ESTALE if directory deleted by same NFS client.

Just noticed that this breaks things if the rmdir RPC fails. Updated patch coming soon...

Dec 29 2016, 9:26 PM
cperciva retitled D8965: Avoid ESTALE if directory deleted by same NFS client from to Avoid ESTALE if directory deleted by same NFS client.
Dec 29 2016, 7:55 AM

Dec 23 2016

cperciva committed rP429219: Add support for passing additional flags to spiped via new.
Add support for passing additional flags to spiped via new
Dec 23 2016, 3:47 AM

Dec 20 2016

cperciva committed rS310322: MFC r308708: Reduce verbosity of warnings about truncating NFS fileids to.
MFC r308708: Reduce verbosity of warnings about truncating NFS fileids to
Dec 20 2016, 8:43 AM

Dec 19 2016

cperciva committed rS310241: MFC r308708: Reduce verbosity of warnings about truncating NFS fileids to.
MFC r308708: Reduce verbosity of warnings about truncating NFS fileids to
Dec 19 2016, 7:48 AM