- User Since
- Jun 4 2014, 10:38 AM (298 w, 4 d)
Ok, I'll write a patch which keeps the struct intact and only takes care of the non-spares area and then ask for a ports exp-run just in case.
Fri, Feb 21
Upon further testing this is buggy - sometimes the passed down value disagrees with what the syscall returns later as setugid call on exec happens only after copyout.
- use an extra flag instead of reldate
Thu, Feb 20
The flags argument is there specifically so these kind of extensions are possible without adding new syscalls. The only consumer does not use them and I think adding capability-aware realpath is a separate effort. Since this partially blocks other work I just went ahead with the commit.
So any incarnation of this patch makes the following fail contrib/netbsd-tests/lib/libc/c063/t_fstatat.c:
- rename to realpathat
Wed, Feb 19
I only have nitpicks I'm not going to insist on.
Tue, Feb 18
Same way as in the code prior to the patch -- routines resolve up to a point of reaching the passed 'rdir' vnode and I'm passing the same stuff getcwd does.
Mon, Feb 17
I think it's a fair worry that mixing hand-rolled atomics with compiler intrinsics may lead to trouble, but it's not hard to remedy.
- force strong cmpset since this seems to be the requirement right now
- push ~ lower in atomic_clear
- use relaxed barrier for failing (f)cmpset
Can I get further review on this?
Thank you for working on this.
Sun, Feb 16
- add 'debug' keyword to debug routines for consistency
The patch is intended be least disruptive: namely anyone who just references any of these is unaffected, while anyone using these is not regressed (and perhaps is improved because it exits with an error instead of hanging in the kernel).
Note the actual routine still have to be generated for filesystems like nullfs.
Not sure what you mean by everywhere. It can be next to whatever struct is at play. I'm confident that's a small price to pay for allowing the compiler to provide type checking.
I think this avoidably loses the pointer type.
- sync fences use with refcount as of D23709
- pass the failed assertion expression to panicking routine
- assert more things
Sat, Feb 15
I'm arguing for exclusion of the entire dtrace/ directory which would also take care of systrace.
I think building dtrace without KDTRACE_HOOKS partially defeats the point of not including it in the kernel config. The module is heavily neutered if not straight up useless.
- only set freebuf after success to match other routines
- handle rtld-elf
- add __getosreldate check as a temporary aid for upgrades. the value in there is to be changed
I think we should get another kernel config to build with tinderbox. Could be GENERIC without: SMP, NUMA, KDTRACE_HOOKS and maybe few others. Then not only we cover these, people can be asked to always make sure that kernel builds.
Fri, Feb 14
- rebase on top of D23685