CFT/CFR: NUMA policy branch
Adrian Chadd
adrian at freebsd.org
Tue Jul 7 22:53:19 UTC 2015
On 7 July 2015 at 02:37, Konstantin Belousov <kostikbel at gmail.com> wrote:
> On Sun, Jul 05, 2015 at 07:06:27PM -0700, Adrian Chadd wrote:
>> Hi,
>>
>> I've done another update. kib@ has been beating me with the clue stick a bit.
>>
>> https://github.com/freebsd/freebsd/compare/master...erikarn:local/adrian_numa_policy
>>
>> * (kib) (numactl.c) fix up sorting of include files
>> * (kib) (numactl.c) consistent use of values when calling err()
>> * (kib) (numactl.c) consistently wrap lines at 78 characters, don't
>> prematurely wrap lines
>> * (kib) don't use the old-style BSD licence mentioning "regents", use
>> the updated one
>> * (kib) (vm_domain.c) don't break out after iterating a few times and
>> have the API be unpredictable - so now the API will always succeed in
>> reading a vm_policy
>>
>> I've tested the policies (first-touch, fixed-domain, round-robin) and
>> they all still work as advertised, both on threads and processes.
>>
>> I'd appreciate more reviews and some further testing.
>
> I did not found a fix for the wrong locking of seq_t.
Which locking is wrong?
* the global policy is locked via the global mutex;
* the process/thread policy is locked via PROC_LOCK.
What did I miss?
> Am I reading sys_numa_getaffinity() right that it does copyout() while
> owning the process lock ?
I've fixed and push that, thanks.
> The things are still syscalls instead of procctl() commands.
I haven't done that yet. procctl() doesn't have a concept of per-TID
operations at all, and it currently has a framework for iterating over
things that this would have to slot into somehow. I'm open to
suggestions on how you would integrate per-TID operations into
procctl().
> I did not read further, the patch is half-done at best.
That's lovely. Meanwhile, people are actively using this thing.
-adrian
More information about the freebsd-arch
mailing list