gibbs (Justin T. Gibbs)
User

Projects

User Details

User Since
Oct 1 2014, 5:42 PM (194 w, 4 d)

Recent Activity

May 9 2017

gibbs accepted D10391: vdev_geom may associate multiple vdevs per g_consumer.
May 9 2017, 6:34 PM

Apr 21 2017

gibbs added inline comments to D10391: vdev_geom may associate multiple vdevs per g_consumer.
Apr 21 2017, 8:19 PM

Jul 13 2016

gibbs added a comment to D7207: Use BIO_VLISTS to aggregate ZFS I/O.

When I did this work originally, I had hoped Spectra would find time to finish memory descriptors and embed those in BIOs instead. The BIO_VLIST thing was an expedient "hack".

Jul 13 2016, 9:32 PM

Jun 24 2016

gibbs accepted D6848: Fix bitstring allocation on 32-bit platforms.

Please fix the extra whitespace and test both with and without a roundup2 defined prior to including the header before landing.

Jun 24 2016, 5:06 PM
gibbs requested changes to D6848: Fix bitstring allocation on 32-bit platforms.
Jun 24 2016, 4:48 PM
gibbs accepted D6848: Fix bitstring allocation on 32-bit platforms.

I'm just not sure about the new dependency on sys/param.h. I leave that for you to decide.

Jun 24 2016, 2:55 PM

Jun 23 2016

gibbs added inline comments to D6848: Fix bitstring allocation on 32-bit platforms.
Jun 23 2016, 5:16 PM
gibbs added a comment to D6848: Fix bitstring allocation on 32-bit platforms.

Should we inline roundup2? Prior to this change, at least in user space, bitstring.h only relied on functionality provided in the C standard. It might be nice to keep that.

Jun 23 2016, 3:50 PM
gibbs added a comment to D6848: Fix bitstring allocation on 32-bit platforms.

If I want to dynamically allocate a bitstr, I use bitstr_size() to tell me how much to allocate. Without the roundup, I'll potentially allocate too little memory.

Jun 23 2016, 3:48 PM

Jun 14 2016

gibbs accepted D6848: Fix bitstring allocation on 32-bit platforms.

I see how this can over allocate on platforms with long > 8bits, but I'm missing how 32bit long platforms are special and can get too little space allocated. Can you provide an example in the checkin comment?

Jun 14 2016, 11:35 PM

May 23 2016

gibbs accepted D6255: Add bit_count to the bitstring(3) api.
May 23 2016, 7:08 PM

May 17 2016

gibbs added inline comments to D6255: Add bit_count to the bitstring(3) api.
May 17 2016, 8:31 AM

May 10 2016

gibbs accepted D6270: Spelling fixes for aic7xxx driver.
May 10 2016, 4:40 PM
gibbs requested changes to D6270: Spelling fixes for aic7xxx driver.

Just a few minor nits. Otherwise LGTM.

May 10 2016, 3:33 AM

May 9 2016

gibbs added a comment to D6255: Add bit_count to the bitstring(3) api.

In the description for this change, under the subr_unit.c heading, I think you mean bit_count, not bit_alloc.

May 9 2016, 2:02 PM

May 3 2016

gibbs added inline comments to D6004: Improve performance and functionality of the bitstring(3) api.
May 3 2016, 9:08 PM
gibbs accepted D6004: Improve performance and functionality of the bitstring(3) api.
May 3 2016, 8:02 PM

Apr 22 2016

gibbs added inline comments to D6004: Improve performance and functionality of the bitstring(3) api.
Apr 22 2016, 8:05 PM

Apr 20 2016

gibbs added a comment to D6004: Improve performance and functionality of the bitstring(3) api.

check_unhdr() still must validate the count in the header. The current brute force "bitset_count" in check_unhdr() works, but bitset itself could do better (e.g. word at a time accumulation using mask, plus, and shift).

Apr 20 2016, 8:52 PM
gibbs added a comment to D6004: Improve performance and functionality of the bitstring(3) api.

Given the small size of the bitmap, and the improved performance of the bitset_ffc/bitset_ffs calls you'd need, i think that would be fine for the non-diagnostic code. For the diganostic code (which isn't performance critical), you'd need to add a bitset_count() API. Doing a proper count of the bitmap seems a more robust check than relying on the locally maintained count anyway (no chance that two bugs in the subr_unit code cancel each other out and cause the diagnostic to fail to catch a bug).

Apr 20 2016, 6:11 PM
gibbs added a comment to D6004: Improve performance and functionality of the bitstring(3) api.

Is this the same as D1408? I didn't push that revision because I wanted to update subr_unit.c to avoid the janky union stuff. The accessors should just use the last 8 bits in the bitmap for the count and assemble/decompose the value via mask and shift.

Apr 20 2016, 2:30 AM

Mar 12 2016

gibbs committed rS296775: Provide high precision conversion from ns,us,ms -> sbintime in kevent.
Provide high precision conversion from ns,us,ms -> sbintime in kevent
Mar 12 2016, 11:03 PM
gibbs closed D5397: Provide high precision conversion from ns,us,ms -> sbintime in kevent by committing rS296775: Provide high precision conversion from ns,us,ms -> sbintime in kevent.
Mar 12 2016, 11:03 PM

Feb 22 2016

gibbs retitled D5397: Provide high precision conversion from ns,us,ms -> sbintime in kevent from to Provide high precision conversion from ns,us,ms -> sbintime in kevent.
Feb 22 2016, 10:38 PM

Jan 2 2015

gibbs updated the diff for D1408: Improve performance and add "find at" APIs to bitstring(3).

Improve man pages. Fix compilation errors in blkback.c.

Jan 2 2015, 6:13 PM

Dec 31 2014

gibbs retitled D1408: Improve performance and add "find at" APIs to bitstring(3) from to Improve performance and add "find at" APIs to bitstring(3).
Dec 31 2014, 10:52 PM
gibbs added inline comments to D1247: Prevent live-lock and access of destroyed data in taskqueue_drain_all()..
Dec 31 2014, 8:15 PM
gibbs updated the diff for D1247: Prevent live-lock and access of destroyed data in taskqueue_drain_all()..

Fix spelling errors in comments.

Dec 31 2014, 8:08 PM
gibbs updated the diff for D1247: Prevent live-lock and access of destroyed data in taskqueue_drain_all()..

Improve man page documentation for taskqueue_drain_all().

Dec 31 2014, 8:06 PM
gibbs updated the diff for D1247: Prevent live-lock and access of destroyed data in taskqueue_drain_all()..

Dec -> December.

Dec 31 2014, 6:23 PM
gibbs updated the diff for D1247: Prevent live-lock and access of destroyed data in taskqueue_drain_all()..

Bump .Dd in tasqueue.9.

Dec 31 2014, 6:12 PM

Dec 3 2014

gibbs updated the diff for D1247: Prevent live-lock and access of destroyed data in taskqueue_drain_all()..

Ignore the second diff. It was pulled from the wrong tree.

Dec 3 2014, 7:42 PM
gibbs updated the diff for D1247: Prevent live-lock and access of destroyed data in taskqueue_drain_all()..

Fix typo in man page: .Pr -> .Pp.

Dec 3 2014, 7:39 PM

Nov 30 2014

gibbs retitled D1247: Prevent live-lock and access of destroyed data in taskqueue_drain_all(). from to Prevent live-lock and access of destroyed data in taskqueue_drain_all()..
Nov 30 2014, 9:53 PM

Nov 19 2014

gibbs added inline comments to D888: x86/dma_bounce: rework _bus_dmamap_load_ma implementation.
Nov 19 2014, 6:36 PM
gibbs added a comment to D888: x86/dma_bounce: rework _bus_dmamap_load_ma implementation.

Disallowing unaligned buffers from userland would be a huge POLA violation. If we want to go down this route, I would be okay with detecting unaligned buffers upon entry to the kernel (in the syscall handlers or a common top-level API all of these syscalls invoke) and thunking them there. We'd want to track these alignment faults and make them visible via sysctl and tools like ktrace.

Nov 19 2014, 5:26 PM