[00:38:46] --- Russ has left: Disconnected [03:05:23] --- RedBear has left [03:07:47] --- dwbotsch has become available [03:35:36] --- Born Fool has become available [03:43:26] --- jaltman has left: Disconnected [03:43:34] --- jaltman has become available [03:46:32] --- jaltman has left: Replaced by new connection [03:46:33] --- jaltman has become available [03:47:03] --- Jeffrey Altman has become available [04:33:47] --- Born Fool has left [06:04:52] --- mdionne has become available [06:27:21] --- mdionne has left [08:48:13] --- haba has become available [10:27:07] Aha! I showed a couple of tracebacks to Robert Watson, and he points out that in 8.x, cred->cr_groups is now a dynamically-sized array, so we're trying to access the pag at an invalid spot in the array. [10:59:58] --- deason has become available [11:54:03] --- Russ has become available [12:14:08] --- Simon Wilkinson has become available [12:15:09] I suspect that anyone who reads the supergroups code will no longer want to run it ... [12:44:13] I am a bit confused as to why it is useful for afs_osi_proc2cred() to have a function-local afs_ucred_t that it returns a reference to. [12:46:08] I'm a bit confused as to why that function isn't in the per-OS directories, where it belongs. But anyway. Hang on. [12:48:13] I've ranted about this before, actually. [12:48:31] That function _only_ works because it has a single caller, which never puts the structure that it's given. [12:48:48] Heh. [12:49:14] If you were to ever put it, then the reference count would drop to 0, and we'd try to free using the normal allocator. And boom. [12:49:40] It will be ... interesting ... to make it work with a dynamically-sized grouplist (which is thus separately allocated). [12:50:00] I suspect that it should be fixed. [12:51:00] I will not argue with you on that. [12:52:45] The problem is that it's a bodge - it's creating something that on many systems only the kernel gets to make (a credentials structure), purely so that we can then pass it to PagInCred and get a PAG number out. [12:53:09] On FBSD, do processes have a cred structure? [12:53:42] Yes. [12:54:16] It might be easier just to throw that structure over into the GCPAGs function. [13:11:19] --- Russ has left: Disconnected [13:12:06] --- Russ has become available [13:26:38] --- jaltman has left: Replaced by new connection [13:26:39] --- jaltman has become available [13:31:36] --- Russ has left: Disconnected [13:44:28] --- Russ has become available [14:34:31] --- Simon Wilkinson has left [15:16:54] Ooh, fun, `fs sysname` also crashes. I'm almost wondering if this is memory corruption. [16:29:39] Where is the 'acred' variable from afs_pioctl.c initialized? [16:35:02] Hm, or am I blind? [17:38:04] Hm ... my pioctl errors seem to be because we are passing in a NULL credential. [17:48:31] don't do that [17:50:07] But where does the rabbit-hole end? [17:57:52] > Where is the 'acred' variable from afs_pioctl.c initialized? what gets passed in from the syscall, in afs3_syscall i assume (afs_syscall.c) [17:58:33] I had missed the fact that the prototypes were from a macro, in my first reading. [18:08:59] > isn't in the per-OS directories, where it belongs. Because the splitting up of platform-dependent stuff into nice, orderly per-OS directories was never fully completed. [18:09:18] But afs3_syscall is passing in p->p_ucred (which is NULL). I am kind of assuming that its argument p is somebody's curproc, so that kind of disturbs me ... [18:09:55] --- jaltman has left: Disconnected [18:10:03] --- jaltman has become available [18:16:24] Hm, but an afs_syscall_pioctl(...,curthread->td_ucred) succeeds. Maybe it's time to switch to using threads instead of procs :-/ [18:21:47] oh right. that work got partly done [18:22:44] partly? [18:23:00] some callees, istr, were converted to expecting threads [18:24:39] callees from afs3_syscall? [18:26:05] i don't remember [18:29:21] i should get a vm up and look at all this. but it's not going to happen today [22:25:18] Heh. It looks like some of the conversion to using thread instead of proc is getting undone by the packaging's local changes ... this could be fun. [22:57:45] --- deason has left [23:45:04] --- Russ has left: Disconnected