- User Since
- Oct 1 2014, 5:42 PM (219 w, 6 d)
May 9 2017
Apr 21 2017
Jul 13 2016
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".
Jun 24 2016
Please fix the extra whitespace and test both with and without a roundup2 defined prior to including the header before landing.
I'm just not sure about the new dependency on sys/param.h. I leave that for you to decide.
Jun 23 2016
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.
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 14 2016
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?
May 23 2016
May 17 2016
May 10 2016
Just a few minor nits. Otherwise LGTM.
May 9 2016
In the description for this change, under the subr_unit.c heading, I think you mean bit_count, not bit_alloc.
May 3 2016
Apr 22 2016
Apr 20 2016
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).
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).
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.
Mar 12 2016
Feb 22 2016
Jan 2 2015
Improve man pages. Fix compilation errors in blkback.c.
Dec 31 2014
Fix spelling errors in comments.
Improve man page documentation for taskqueue_drain_all().
Dec -> December.
Bump .Dd in tasqueue.9.
Dec 3 2014
Ignore the second diff. It was pulled from the wrong tree.
Fix typo in man page: .Pr -> .Pp.
Nov 30 2014
Nov 19 2014
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.