00:02:28 Can bhyve hot swap interfaces/ disks? 00:28:46 jclulow: it's been a while since I thought about this issue, but one idea towards that direction is to add a new mblk flag that is only set when a packet crosses mac-loopback, as that's the problem datapath. And then something higher up the Rx path could look for that flag and decide to copy the mblk. I had something like that in mac for a while (HW_LOCAL_MAC) in SmartOS to serve other purposes, but ripped it out later. 00:29:48 But honestly I think I like sommerfeld's idea a lot. 00:30:34 mac-loopback is really a double edged sword 00:31:04 because we pretend its like going across the wire, but of course its not in subtle ways 00:32:01 Also, for a long time I've been of the mind we should just have a tunable to disable mac loopback either globally, per link, or both 00:32:21 because at least then when you hit Weird Shit (TM) you have a way to get out of trouble in production 00:32:58 'help! i'm trapped in a stack deeper than the marianas trench' 01:18:57 rzezeski: which? the adaptive copy? 01:19:53 jbk: yeah, there are cases where "punt to a queue that someone will look at while their stack is shallower" is the right answer. 05:49:08 So now that I am awake again: 1) close the current man page cr and bugas the consensus is this is not the right thing to do? 2) Open a new bug linked to 13463 to change the default in viona to always copy (but leave the logic for bnx in place) ? 05:49:51 That gets us in a safe place without the sysadmin having to do anything, then when someone has $time_to_spend look at a proper fix for 13463? 05:50:08 s/bugas/bug as/ 05:52:49 I didn't really do a/b benchmarks but for me the performance impact was not really noticeable, might be because without copying even when the vm completely locking up, it would have random mini stalls (I guess because it also ran out of tx buffers but got them back before completely locking up) so the overal performance I'm seeing now (mostly on NFS) is better because it can now consistently hit my disk performance bottle neck. 05:53:17 s/vm completely/did not completely/ 15:56:28 Trying to compile https://github.com/meetecho/janus-gateway on SmartOS, don't know if this is gonna work 😄 15:57:27 first ./configure error: checking for dlopen in -ldl... no - configure: error: libdl not found. 15:57:35 Any clues what it's trying to tell me here? 15:59:03 dig into config.log to see what the actual error is 16:06:05 sjorge: I think documenting the tunable is useful if we change the default. Someone might notice the performance regression, be using it in a config that works with the buffer loaning, and want the speed back. 16:09:10 sjorge: that's for the viona buffers stuck in queues elsewhere problem? 16:10:10 yes 16:10:33 sommerfeld OK, so I guess that needs to go in in tandem with the change of default. I'm not sure how to do the later. 16:10:50 As we still want the logic for bnx to always copy 16:11:08 And I'd need to reword it so it's the inverse of what it says now 16:17:44 is there anyone with the relevant bnx hardware who is also using bhyve? 16:17:58 it would be nice to collect some actual data around that 16:19:54 *bnxe 16:20:55 I only have intel hardware myself, nic wise at least 16:21:09 only ixgbe tbh, the i40e is a non working garbage fire for me 16:21:20 That logic came from pluribus, and they were reportedly on an old OpenSolaris-y codebase of an unknown vintage 16:23:22 I'm willing to bet that they were using the old closed driver, and that the open source one we have is not plagued by the same issue(s) 16:38:08 jperkin (LIBERA-IRC): thanks, will do 18:23:50 [illumos-gate] 15438 dlled fails to build if fprintf() is marked _PRINTFLIKE() -- Robert Mustacchi 19:27:31 I'm fairly sure I've seen #15461 (fenix?) and thought I was somehow an idiot or going crazy 19:27:31 BUG 15461: Deletion of IPv6 addrconf address before static IPv6 address on same interface results in undeletable addrconf address (New) 19:27:32 ↳ https://www.illumos.org/issues/15461 19:27:46 I'm so glad someone got to the bottom of it 19:32:23 I think I've run into that before too. 20:03:49 i've got a fun one i have to chase down w/ zfs... 20:04:08 resumable receives can fail at the _very_ end with 'dataset has been modified' 20:04:32 (using zfs recv -F fixes it, but would be nice to figure out the problem) 20:07:05 Does anybody know what could cause dladm: warning: failed to activate varpd instance: Bad file number when creating an overlay? I tried checking all files being present and all, but all seems to be as it should 20:24:36 is /var/run/varpd/varpd.door there, etc? 20:25:33 Yep and varpd is online and working 20:27:31 it only fails with the files search plugin 20:45:31 What file did you specify? 20:55:46 I was trying with "/etc/vpcs/search/testnet1.json" as files/config property the file exists 22:09:12 Huh, I found the problem. create-overlay must have an empty json object inside the file for it to work 22:18:31 What were the contents of the file otherwise? 22:18:47 Empty 22:18:54 after a simple touch 22:19:06 We need to improve the error message, but that won't work. 22:19:27 https://illumos.org/man/5/overlay_files 22:19:48 I mean, an empty object also is going to not help you very well at all. Nothing will work. 22:20:42 Well at that point no ZOnes are configured yet :) Or are you telling me I can't modify the file at all after? 22:21:23 It is read and used at the time the overlay is created. 22:21:38 It's intended where you know the design up front for experimenting. 22:21:49 Oh 22:22:17 It's been too long so I don't remember if you can ask it to change the property and it'll do something useful there, but I'd guess probably not. 22:22:37 So we have no multihost support other than direct at the moment? 22:22:50 I mean, files works for that. 22:23:13 But the direct bit is the most common thing that you'd use in a cross-platform env. 22:23:20 I could probably re load varpd 22:23:35 Otherwise the directory implementation has to come from somewhere. 22:23:44 varpd doesn't read the file every time you try to use it. 22:23:54 It reads it when it sets things up. 22:26:32 Anyways, things could definitely be made better here, just wanted to give you context for what to expect. 22:27:11 Thank. It will help set the API leayer I am making up proper 22:27:16 *Thanks 22:27:38 Yeah, if you're trying to build something more dynamic, I would write your own plugin. 22:27:57 That was what we did at Joyent when I did this originally. 22:28:16 I can get away with direct but was thinking files would be more scalable before I make my own plugin :) 22:28:19 We would go to the directory service that hosted this information and get it dynamically. 22:28:21 Haven't played with rusts c export 22:28:22 yet 22:28:42 Just remember it's a private interface. 22:28:55 But the thing to think about are what semantics you're trying to achieve. 22:28:57 pretty much my idea aswell. 22:29:06 I am ok with private interfaces :) 22:29:19 The files backend as the manual page mentions is for static configurations. 22:29:42 Otherwise, you could fix multicast groups and just use that to get going in a small-scale depolyment. 22:29:55 Otherwise if it's API driven, your directory store needs to be able to issue invalidations. 22:30:10 Yeah adding and removing zoney dynamically is required. 22:30:21 Yeah, files is wrong for this then. 22:30:30 At least, as I implemented a long time ago. 22:31:11 https://github.com/TritonDataCenter/illumos-joyent/blob/master/usr/src/lib/varpd/svp/common/libvarpd_svp.c#L18-L337 is the starting point for the dynamic module we actually used as part of this. 22:31:52 Yep :) I'll stick with direct for now. I'tll get me started and then I can go from there.