[00:10:30] *** Quits: dlw (~Thunderbi@114.255.44.143) (Remote host closed the connection) [00:35:32] *** Joins: dlw (~Thunderbi@114.255.44.143) [00:50:46] *** Joins: tkulasek (~tkulasek@134.134.139.83) [01:21:42] *** Quits: pzedlews_ (uid285827@gateway/web/irccloud.com/x-zukojogpekpslrsc) (Quit: Connection closed for inactivity) [03:11:08] *** Quits: dlw (~Thunderbi@114.255.44.143) (Ping timeout: 256 seconds) [03:11:42] *** Joins: dlw (~Thunderbi@114.255.44.143) [04:04:45] *** Quits: dlw (~Thunderbi@114.255.44.143) (Ping timeout: 265 seconds) [04:45:54] *** Quits: vkon15 (cf8c2b51@gateway/web/freenode/ip.207.140.43.81) (Ping timeout: 260 seconds) [05:40:51] *** Quits: darsto (~darsto@89-68-135-211.dynamic.chello.pl) (Ping timeout: 256 seconds) [05:41:22] *** Joins: dlw (~Thunderbi@114.246.95.117) [06:03:21] *** Quits: tomzawadzki (~tomzawadz@192.55.54.38) (Ping timeout: 264 seconds) [07:16:34] *** Quits: dlw (~Thunderbi@114.246.95.117) (Ping timeout: 264 seconds) [07:35:21] *** Joins: dlw (~Thunderbi@114.246.95.117) [07:57:59] *** Joins: tomzawadzki (tomzawadzk@nat/intel/x-cqqrhhbjidmkhvot) [08:02:34] *** Joins: tzawadzki (~tomzawadz@134.134.139.73) [08:02:35] *** Quits: tomzawadzki (tomzawadzk@nat/intel/x-cqqrhhbjidmkhvot) (Remote host closed the connection) [08:08:09] *** Joins: tomzawadzki (~tomzawadz@134.134.139.73) [08:08:09] *** Quits: tzawadzki (~tomzawadz@134.134.139.73) (Remote host closed the connection) [08:27:54] bwalker: please review these two patches: https://review.gerrithub.io/#/c/407842/ - should fix the intermittent ASLR failures in the test pool [08:40:04] *** Quits: dlw (~Thunderbi@114.246.95.117) (Ping timeout: 268 seconds) [08:51:05] *** Joins: travis-ci (~travis-ci@ec2-54-147-20-153.compute-1.amazonaws.com) [08:51:06] (spdk/master) io_channel: Fix race between put channel and get channel (Ben Walker) [08:51:06] Diff URL: https://github.com/spdk/spdk/compare/27d47b9a1032...979d9997c9a8 [08:51:06] *** Parts: travis-ci (~travis-ci@ec2-54-147-20-153.compute-1.amazonaws.com) () [09:01:34] Great meeting just now - close to 20 people on the call! Thanks everyone for participating!!! [09:03:32] Hey, could you look at this RFC? https://review.gerrithub.io/c/407402/ (regarding this topic: https://trello.com/c/qEvmHGvm/124-cannot-fail-deletebdev-rpc) [09:24:08] *** Joins: travis-ci (~travis-ci@ec2-54-161-122-83.compute-1.amazonaws.com) [09:24:09] (spdk/master) test/vhost: move vhost migration test to nightly tests (Pawel Niedzwiecki) [09:24:09] Diff URL: https://github.com/spdk/spdk/compare/979d9997c9a8...876458478c60 [09:24:09] *** Parts: travis-ci (~travis-ci@ec2-54-161-122-83.compute-1.amazonaws.com) () [09:51:44] *** Quits: tkulasek (~tkulasek@134.134.139.83) (Ping timeout: 260 seconds) [10:28:16] ppelplin: I had some work in progress to add a similar RPC - I just pushed my patch as well: https://review.gerrithub.io/#/c/408084/ [10:28:31] mine just uses the existing unregister_bdev path for now, so I think with our approaches combined, we should have a full fix [10:29:14] *** Joins: travis-ci (~travis-ci@ec2-54-92-178-164.compute-1.amazonaws.com) [10:29:15] (spdk/master) test: disable ASLR for multi-process tests (Jim Harris) [10:29:15] Diff URL: https://github.com/spdk/spdk/compare/876458478c60...18f3a22b20c6 [10:29:15] *** Parts: travis-ci (~travis-ci@ec2-54-92-178-164.compute-1.amazonaws.com) () [10:34:22] *** Joins: travis-ci (~travis-ci@ec2-54-92-178-164.compute-1.amazonaws.com) [10:34:23] (spdk/master) bdev/lvol: add dump config mock (Pawel Wodkowski) [10:34:23] Diff URL: https://github.com/spdk/spdk/compare/18f3a22b20c6...f34fae94fe02 [10:34:23] *** Parts: travis-ci (~travis-ci@ec2-54-92-178-164.compute-1.amazonaws.com) () [10:55:49] so, after the demo this morning [10:56:07] I have a crazy idea - a fuse-based management tool [10:56:23] you mount the "spdk" filesystem, and then it looks otherwise mostly like sysfs [10:57:04] am I drinking too much of the unix kool-aid? [10:59:06] *** Joins: travis-ci (~travis-ci@ec2-54-92-178-164.compute-1.amazonaws.com) [10:59:07] (spdk/master) test/rbd: add configurable monitoring IP address for ceph (Tomasz Zawadzki) [10:59:07] Diff URL: https://github.com/spdk/spdk/compare/f34fae94fe02...0629b01d2130 [10:59:07] *** Parts: travis-ci (~travis-ci@ec2-54-92-178-164.compute-1.amazonaws.com) () [11:07:08] *** Joins: travis-ci (~travis-ci@ec2-54-147-20-153.compute-1.amazonaws.com) [11:07:09] (spdk/master) lvol: Creating 2 lvols simultaneously with same name (Maciej Szwed) [11:07:09] Diff URL: https://github.com/spdk/spdk/compare/0629b01d2130...208748b42351 [11:07:09] *** Parts: travis-ci (~travis-ci@ec2-54-147-20-153.compute-1.amazonaws.com) () [11:18:58] bwalker: i don't see any reason a fuse-based management tool wouldn't work - it wouldn't be as easy to use as spdk-cli but would provide another way to configure an spdk app [11:19:14] interesting idea [11:19:28] it would be a very familiar interface for a lot of people [11:20:10] since it wouldn't be located where the "real" sysfs is, maybe too many tools wouldn't work [11:20:16] so maybe it isn't worth pursuing [11:29:06] bwalker or jimharris: can one of you take a look at the virtio JSON-RPC config dump patch: https://review.gerrithub.io/#/c/405419/ [11:30:01] I'm almost done with that one [11:30:09] *** Joins: travis-ci (~travis-ci@ec2-54-92-178-164.compute-1.amazonaws.com) [11:30:10] (spdk/master) test/iscsi_tgt: merge the two steps of running fio_remote_nvme.sh (Liang Yan) [11:30:10] Diff URL: https://github.com/spdk/spdk/compare/208748b42351...aa749442cb16 [11:30:10] *** Parts: travis-ci (~travis-ci@ec2-54-92-178-164.compute-1.amazonaws.com) () [11:48:41] bwalker: i posted responses to your comments on https://review.gerrithub.io/#/c/407397/ from Shuhei [12:02:32] *** Quits: tomzawadzki (~tomzawadz@134.134.139.73) (Ping timeout: 256 seconds) [12:03:57] *** Joins: darsto (~darsto@89-68-135-211.dynamic.chello.pl) [12:04:21] *** darsto is now known as Guest51950 [12:04:42] *** Guest51950 is now known as darsti [12:06:38] *** darsti is now known as darsto [12:26:39] *** Joins: tomzawadzki (~tomzawadz@134.134.139.73) [12:30:36] *** Joins: pzedlews_ (uid285827@gateway/web/irccloud.com/x-ljckgbpjcdnyyfrr) [12:44:26] pulled klateck's spdkcli patch and it worked like a charm! [12:44:53] *** Joins: jkkariu (jkkariu@nat/intel/x-twnjjhkdwgdohdox) [12:45:04] i posted a few comments on it from a file location and documentation perspective: https://review.gerrithub.io/#/c/405039/ [12:45:37] i'm guessing drv may have his own opinions though that differ from mine :) [12:51:15] I'm OK with your suggestion - I don't really have a sense for how Python code is organized conventionally, but it seems fine to me [14:07:13] jimharris: I'm not following why moving SPDK_RPC_REGISTER is necessary [14:07:42] if you move that, how do you use any SPDK stuff without the event framework? [14:08:58] *** Joins: travis-ci (~travis-ci@ec2-54-161-122-83.compute-1.amazonaws.com) [14:08:59] (spdk/master) blobstore: clone-snapshot classification (Tomasz Kulasek) [14:08:59] Diff URL: https://github.com/spdk/spdk/compare/aa749442cb16...0d1c3aefc319 [14:08:59] *** Parts: travis-ci (~travis-ci@ec2-54-161-122-83.compute-1.amazonaws.com) () [14:09:32] I see why it would be convenient in terms of implementation effort - but it breaks the separation entirely [14:13:18] *** Joins: travis-ci (~travis-ci@ec2-54-147-20-153.compute-1.amazonaws.com) [14:13:19] (spdk/master) test/vhost: live migration test case 3 (Karol Latecki) [14:13:19] Diff URL: https://github.com/spdk/spdk/compare/0d1c3aefc319...8ebaed2eb578 [14:13:19] *** Parts: travis-ci (~travis-ci@ec2-54-147-20-153.compute-1.amazonaws.com) () [14:19:13] *** Joins: travis-ci (~travis-ci@ec2-54-161-122-83.compute-1.amazonaws.com) [14:19:14] (spdk/master) bdev/virito: add JSON config dump and generic create RPC (Pawel Wodkowski) [14:19:14] Diff URL: https://github.com/spdk/spdk/compare/8ebaed2eb578...1a6dac405b14 [14:19:14] *** Parts: travis-ci (~travis-ci@ec2-54-161-122-83.compute-1.amazonaws.com) () [14:19:16] bwalker: i guess i'm ok with just modifying all 70+ SPDK_RPC_REGISTER calls but was looking at ways to avoid it [14:19:28] but maybe it's worth it [14:19:51] well, if we don't modify can we assume the "state" is 0? [14:20:01] if we want to avoid modifying all of the SPDK_RPC_REGISTER calls, then the SPDK_RPC_REGISTER definition has to move [14:20:19] or the group - I don't know. We need to figure out what the semantics really are for grouping and controlling sets of rpcs [14:20:37] once we have that settled, then I think we can figure out the easiest way to get it in the code [14:20:52] agreed - we need to define how RPCs are grouped first [14:21:13] is the idea to use a 64 bit mask where each bit is a state? [14:21:25] and then on register you provide a mask of the states the rpc is allowed in? [14:21:43] because we could flip it around - 0 means allowed, 1 means disallowed [14:21:52] and SPDK_RPC_REGISTER just assumes the mask is 0 [14:22:07] or make SPDK_RPC_REGISTER set the mask to 1 and leave the meaning the intuitive way [14:22:13] I mean mask to all 1 [14:22:23] but we don't want current SPDK_RPC_REGISTER calls to be allowed before subsystems are started [14:22:45] well what currently starts the RPC server? [14:22:55] that's a subsystem in the event framework for most applications, right? [14:23:04] have it set the mask before it starts the rpc server [14:23:35] then for the few RPCs that are allowed, add a new SPDK_RPC_REGISTER_WITH_MASK or something [14:23:37] and change them to that [14:23:45] no - the RPC server is not started as part of a subsystem [14:24:04] what starts it? [14:24:53] it's started via spdk_app_start() [14:25:30] so today on master, that is done via an event after spdk_subsystem_init() completes - but Shuhei's patches change that [14:25:49] so wherever it is that the rpc server is started - set the mask first [14:26:08] the call to set the mask an API in rpc.h, but the code calling it can be in the framework [14:26:21] by default the mask should initialize as everything is allowed [14:26:22] yes - that's what I asked Shuhei to do in his patch [14:26:44] well I think you have to specify the starting mask as part of starting the rpc server [14:27:00] that works too [14:27:28] then the only challenge is finding a way to make SPDK_RPC_REGISTER work in a way that we can disable all of them, without modifying that call [14:27:34] i.e. selecting a smart default mask [14:27:47] maybe SPDK_RPC_REGISTER by default sets the mask to 0x1 [14:27:50] or we bite the bullet and modify the call if it makes the API easier to understand [14:28:31] either one is ok with me [14:28:36] currently we'll have 3 different states - before DPDK init, after DPDK init but before subsystems start, and then after subsystems start [14:29:00] i *think* every RPC is only allowed to run during one of these three states [14:29:23] so those can be bits 0, 1, and 2 [14:29:33] but if we use a bit mask instead of just an integer, we could modify that later if an exception comes up [14:29:34] yes - exactly [14:30:09] sounds good to me [14:31:08] what says you about trying to keep the existing SPDK_RPC_REGISTER or modifying it? [14:32:04] I'll always prefer making things backward compatible, but it's not a strong preference [14:43:43] *** Quits: tomzawadzki (~tomzawadz@134.134.139.73) (Ping timeout: 265 seconds) [14:51:53] *** Joins: tomzawadzki (tomzawadzk@nat/intel/x-dwxyhzgbxnnjyuow) [14:57:22] *** Joins: dlw (~Thunderbi@114.246.95.117) [14:58:15] I think my patch to the io channel stuff either introduced an intermittent issue, or uncovered an existing bug [14:58:20] *** Quits: tomzawadzki (tomzawadzk@nat/intel/x-dwxyhzgbxnnjyuow) (Ping timeout: 256 seconds) [14:58:24] the aer test is failing like 50% of the time now [14:59:03] and strangely enough, I think the bug is a known issue [14:59:09] that was just previously much rarer [14:59:22] and sethhowe is working on it already [15:09:28] so after looking at Karol's spdkcli patch I'm rethinking my response to Prital's question about putting this in the 18.04 release [15:09:38] if we clearly mark it as experimental [15:09:54] is the code as pretty as the UI? [15:10:27] it's about 450 lines of python code [15:10:38] let me dig through it [15:10:57] and see if I remember how to python [15:15:41] I'm OK with putting it in for 18.04, but I don't want to block the release for it if there is any question [15:22:06] Jim - your feedback looks exactly right [15:26:05] *** Joins: travis-ci (~travis-ci@ec2-54-92-178-164.compute-1.amazonaws.com) [15:26:06] (spdk/master) subsystem.c: make subsystem_remove_ns asynchronous (Seth Howell) [15:26:06] Diff URL: https://github.com/spdk/spdk/compare/1a6dac405b14...498f9add11bd [15:26:06] *** Parts: travis-ci (~travis-ci@ec2-54-92-178-164.compute-1.amazonaws.com) () [16:07:54] *** Quits: dlw (~Thunderbi@114.246.95.117) (Ping timeout: 256 seconds) [16:20:36] *** Joins: Shuhei (caf6fc61@gateway/web/freenode/ip.202.246.252.97) [16:26:10] Ben, Jim, thank you for discussing the patch about rpc registration. I'm following the log of IRC. [16:40:24] *** Quits: pzedlews_ (uid285827@gateway/web/irccloud.com/x-ljckgbpjcdnyyfrr) (Quit: Connection closed for inactivity) [16:44:58] Ben, Jim: I saw that you got mutual understanding but I didn't see the next step. [16:45:04] Q1. how about moving SPDK_RPC_REGISTER to event.h ? [16:45:11] Q2. use state_mask, b0: pre-dpdk, b1: post-dpdk&pre-subsys, b2: post-subsys is agreed? [16:45:18] Q3. if -w option is set in the command line, RPC starts with only b1 is 1 just after starting reactor ? [16:45:23] Q4. if -w option is not set, RPC starts with only b2 is 1 after completing spdk_subsystem_init() ? [16:45:59] Q2, Q3 and Q4 - all yes [16:46:15] Q1 we did not reach consensus [16:46:47] if we want to modify all existing SPDK_RPC_REGISTER calls, then we can just keep SPDK_RPC_REGISTER where it is currently and add a state mask parameter [16:47:02] the state masks would be defined in event.h (not rpc.h) [16:47:46] i think modifying the existing calls is probably the cleanest and most clear in the future, but requires a lot of mindless code changes [16:49:22] Thank you, code change is OK but unfortunately I don't have clear image of the code change for the existing calls yet. [16:50:25] If it's not heavy, will you add a little explanation? sorry for bothering you. [16:50:47] it is not a bother at all :) [16:51:03] for example: [16:51:14] SPDK_RPC_REGISTER("delete_bdev", spdk_rpc_delete_bdev) [16:51:51] it would need to change to something like SPDK_RPC_REGISTER("delete_bdev", spdk_rpc_delete_bdev, RPC_POST_SUBSYSTEM_START) [16:52:12] where RPC_POST_SUBSYSTEM_START is defined as (1ULL << 2) [16:52:47] Thank you, a simple question. [16:53:44] #define SPDK_RPC_REGISTER(name, method) rpc_register(method, name, RPC_POST_SUBSYSTEM_START) is not a solution ? [16:54:16] To use this idea, moving to event.h is necessary ? [16:54:23] it could be, but then we need to move SPDK_RPC_REGISTER out of rpc.h, because RPC_POST_SUBSYSTEM_START is specific to spdk event subsystem [16:54:25] yes - exactly [16:54:35] OK, make sense! [16:54:42] to be honest, I'm still not sure which is better [16:55:08] I am leaning towards just adding the extra parameter to SPDK_RPC_REGISTER() and updating all users, as jimharris mentioned [16:55:11] almost all RPCs will be "post-subsystem start" - so SPDK_RPC_REGISTER is fine for the most normal case [16:55:18] but I'm also not 100% sure :) [16:55:37] I think we have to touch every file that defines an RPC anyway [16:55:47] either to add the event.h include or to update the SPDK_RPC_REGISTER lines [16:55:54] good point [16:56:15] we need good names for these state masks too :) [16:56:35] RPC_POST_SUBSYSTEM_START [16:56:43] RPC_PRE_ENV_INIT [16:56:49] but what about the one in the middle? [16:57:00] jimharris: I think I'm going to prep a revert for https://github.com/spdk/spdk/commit/498f9add11bd439302f1a3d247b3f4c525696805 - this plus bwalker's io_channel changes seems to be causing a lot of aer test failures [16:57:01] RPC_POST_ENV_INIT_PRE_SUBSYSTEM_START...uh, no [16:57:21] drv: ack [16:57:43] i'll be here for the next 30 minutes or so - let me know when you have a patch for me to +2 [16:58:53] it looks like we end up with a NULL io_device somehow, which ends up being 0xffffffffffffffff after __bdev_from_io_dev() [17:00:14] jimharris: revert patch is here: https://review.gerrithub.io/#/c/408118/ (hasn't run yet) [17:01:52] Thank you for taking your time, number of files which uses SPDK_RPC_REGISTER is about 20 and may be not so many. [17:02:11] And I will consider the name in the middle too. [17:20:13] *** Joins: travis-ci (~travis-ci@ec2-54-147-20-153.compute-1.amazonaws.com) [17:20:14] (spdk/master) Revert "subsystem.c: make subsystem_remove_ns asynchronous" (Daniel Verkamp) [17:20:14] Diff URL: https://github.com/spdk/spdk/compare/498f9add11bd...0a162815d6eb [17:20:14] *** Parts: travis-ci (~travis-ci@ec2-54-147-20-153.compute-1.amazonaws.com) () [17:20:50] Shuhei: maybe just RPC_PRE_SUBSYSTEM_START is OK [17:21:40] the RPC_PRE_ENV_INIT RPCs will likely all be in one file (or at least only one library) - so as long as we describe them well in the header file, I don't think we need a name more complicated than that [17:35:14] *** Quits: sage_ (~quassel@2607:f298:5:101d:f816:3eff:fe21:1966) (Ping timeout: 255 seconds) [17:36:15] *** Joins: travis-ci (~travis-ci@ec2-54-147-20-153.compute-1.amazonaws.com) [17:36:16] (spdk/master) vpp: add support for vpp comm library (Tomasz Zawadzki) [17:36:16] Diff URL: https://github.com/spdk/spdk/compare/0a162815d6eb...5d94d6d3a5f1 [17:36:16] *** Parts: travis-ci (~travis-ci@ec2-54-147-20-153.compute-1.amazonaws.com) () [17:52:04] *** Joins: sage_ (~quassel@2607:f298:5:101d:f816:3eff:fe21:1966) [18:00:14] *** Quits: lhodev (~lhodev@66-90-218-190.dyn.grandenetworks.net) (Ping timeout: 256 seconds) [18:05:45] and RPC_PRE_POST_SUBSYSTEM_START is also defined in include/spdk_internal/event.h ? [18:36:12] *** Joins: dlw (~Thunderbi@114.255.44.143) [18:50:14] *** Joins: travis-ci (~travis-ci@ec2-54-147-20-153.compute-1.amazonaws.com) [18:50:15] (spdk/master) bdev: Fix race condition when testing whether QoS is enabled (Ben Walker) [18:50:15] Diff URL: https://github.com/spdk/spdk/compare/5d94d6d3a5f1...2e1dbc458758 [18:50:15] *** Parts: travis-ci (~travis-ci@ec2-54-147-20-153.compute-1.amazonaws.com) () [19:05:27] jimharris: Would you take a look at a patch series of JSON config dump for iSCSI tomorrow? (https://review.gerrithub.io/#/c/406493/) [19:14:32] *** Joins: tomzawadzki (tomzawadzk@nat/intel/x-mghcoweyajzrtrbp) [19:33:51] *** Quits: tomzawadzki (tomzawadzk@nat/intel/x-mghcoweyajzrtrbp) (Ping timeout: 256 seconds) [19:36:33] *** Joins: tomzawadzki (tomzawadzk@nat/intel/x-vkdfmhrawajofdqp) [19:55:27] *** Quits: tomzawadzki (tomzawadzk@nat/intel/x-vkdfmhrawajofdqp) (Ping timeout: 240 seconds) [20:27:36] *** Joins: lhodev (~lhodev@66-90-218-190.dyn.grandenetworks.net) [21:30:54] *** Quits: dlw (~Thunderbi@114.255.44.143) (Ping timeout: 256 seconds) [21:32:57] *** Joins: dlw (~Thunderbi@114.255.44.143) [22:47:59] *** Quits: Shuhei (caf6fc61@gateway/web/freenode/ip.202.246.252.97) (Ping timeout: 260 seconds) [23:34:49] *** Quits: dlw (~Thunderbi@114.255.44.143) (Ping timeout: 260 seconds)