[00:02:05] *** Quits: weny (67412840@gateway/web/freenode/ip.103.65.40.64) (Ping timeout: 260 seconds) [01:12:32] *** Joins: dlw1 (~Thunderbi@114.255.44.143) [01:12:32] *** Quits: dlw (~Thunderbi@114.255.44.143) (Read error: Connection reset by peer) [01:12:33] *** dlw1 is now known as dlw [04:13:21] *** Quits: dlw (~Thunderbi@114.255.44.143) (Read error: Connection reset by peer) [04:20:43] *** Joins: dlw (~Thunderbi@114.255.44.143) [04:56:42] *** Joins: johnmeneghini (~johnmeneg@pool-100-0-53-181.bstnma.fios.verizon.net) [05:02:37] *** Quits: johnmeneghini (~johnmeneg@pool-100-0-53-181.bstnma.fios.verizon.net) (Ping timeout: 256 seconds) [05:28:40] *** Quits: dlw (~Thunderbi@114.255.44.143) (Quit: dlw) [07:21:54] *** Quits: tomzawadzki (~tomzawadz@192.55.54.44) (Ping timeout: 256 seconds) [08:01:25] *** Parts: lhodev (~Adium@66-90-218-190.dyn.grandenetworks.net) () [08:01:28] *** Joins: lhodev (~Adium@66-90-218-190.dyn.grandenetworks.net) [08:06:17] reminder: community meeting in about 13 hrs from now... see https://trello.com/b/DvM7XayJ/spdk-community-meeting-agenda to add topics! [08:33:32] *** Quits: sethhowe_ (~sethhowe@192.55.54.42) (Remote host closed the connection) [08:39:56] The SPDK's sample etc/spdk/iscsi.conf.in has a line: "AuthFile /usr/local/etc/spdk/auth.conf". I don't see any sample "auth.conf.in", nor any reference to "auth.conf" or AuthFile when I grep through the SPDK's doc directory. Any help where I can learn the contents/format of this auth.conf? [08:49:29] lhodev, so I don't know really anything about it but just looking at the code, assuming this isn't dead code, check out spdk_iscsi_chap_get_authinfo() or wait for someone else to jump in with some knowledge about the iscsi target code... [08:52:18] peluse: I did see in the CHANGELOG.md that the AuthFile was removed for nvmf.conf, but still so far nada for iscsi. I guess I'll have to crawl through the code. I was kinda hoping someone was gonna pipe up with something like, "oh yeah, that's just like the blah-blah configuration file that LIO uses". Oh well….(sigh) [08:52:43] wait long enough and I'm sure someone will :) [08:53:05] its not even 9am here... LOL [08:54:07] pelse: (chuckle), thanks Paul. As far as time, I was curious in what timezones some folks here resided. I'm central (Austin, TX). [08:56:48] drv, jimharris, bwalker , seth and a few others are here in AZ so we march to our own beat. I think we're same as CA now but I never really know... [08:57:41] a lot of folks in the evening hours are in Gdansk Poland, Shanghai or shuhei I'm pretty sure is just outside of Tokyo [08:59:49] Thx — good to know. And Jim is currently traveling in China or something? [09:00:27] yup [09:00:40] SPDK just had a summit event over there [09:01:24] I sure would like to attend the next one that's in the US. [09:02:48] for sure, dates are being finalized now so we should have some news soon... [09:04:50] we also did a developer meetup last Nov here in AZ. See http://www.spdk.io/news/2017/11/09/dev_meetup/ We're going to do a short version of that alongside the next US summit and probably another longer developer meetup later in the year like that last one [09:05:39] summits are big room presentation style stuff... developer meetups is where we all just get together in the same room and do real work :) [09:06:15] *** Joins: sethhowe (~sethhowe@134.134.139.76) [09:07:39] lhodev: iSCSI AuthFile should still work - there's a minimal example in the tests as ./test/iscsi_tgt/calsoft/auth.conf [09:07:52] but it definitely should be documented and have a real example with comments [09:09:54] * peluse knew drv would have the quick answer ;) [09:10:07] not too quick, haven't had my coffee yet :) [09:11:06] drv: Thanks Daniel. In the test/iscsi_tgt/calsoft/auth.conf, is the Auth line in the form of ? Or, are "root" and "tester" both usernames? [09:11:33] it's username password, yep [09:11:42] and you can have multiple Auth lines with more user/pass pairs [09:13:19] it looks like there's two more (optional?) values for the Auth line, but I'm not sure what they're for (my iSCSI is a little rusty) [09:13:34] you can see the parsing code in lib/iscsi/iscsi.c around val = spdk_conf_section_get_nval(sp, "Auth", i); [09:13:52] Thanks again Daniel. I'm hopeful that'll suffice for my barebones attempt to set up a configuration and get traffic moving. Man, the configuration stuff is consuming way more time than coding/testing, lol. I fought KVM guest stuff yesterday where my guest got caught in a loop attempting to boot due to balloon memory issues. Ugh. [09:18:46] drv: Given that there's full ASCII-readable/non-encrypted passwords in the auth.conf, is there the expectation that its file permissions are 600 (with owner root)? [09:19:21] yeah, plain text passwords are necessary because of the way iSCSI CHAP authentication works [09:19:50] so you should make sure it's only readable by the user running iscsi_tgt [09:20:26] (in theory, we could provide a tool to obfuscate them in some way at rest, but they'd still need to be decodable back to plain text) [09:22:09] So the user running iscsi_tgt isn't *required* to be root? And, if that's the case, then does one need to ensure the corresponding id has permissions to the hugetlbfs? [09:25:02] right, setup.sh can configure things so that a non-privileged user should be able to start SPDK apps [09:25:10] (you still need to run setup.sh itself as root, though) [09:25:53] there's the TARGET_USER environment variable, and if you run it via sudo, it tries to auto-detect the running user via $SUDO_USER [09:26:25] I think we have an outstanding bug that prevents this from working currently, though - the PCI device claiming code tries to create a file in a place that normal users don't normally have permission [09:26:34] need to re-check that [09:30:57] Thx for the heads up. For the sake of trying to get something running soon, I'll suspend my otherwise dedication to running as much as possible everything non-root ;-). I'll just clone my VM and be ready to instantiate another if I munge it good. [09:38:19] *** Joins: guerby_ (~guerby@ip165.tetaneutral.net) [09:39:33] *** Quits: guerby (~guerby@april/board/guerby) (Read error: Connection reset by peer) [10:14:57] *** Joins: travis-ci (~travis-ci@ec2-54-221-15-98.compute-1.amazonaws.com) [10:14:58] (spdk/master) bdev/virtio: minor cleanup (Dariusz Stojaczyk) [10:14:58] Diff URL: https://github.com/spdk/spdk/compare/36506448d430...94de7e91755a [10:14:58] *** Parts: travis-ci (~travis-ci@ec2-54-221-15-98.compute-1.amazonaws.com) () [10:20:32] *** guerby_ is now known as guerby [10:21:06] *** Quits: guerby (~guerby@ip165.tetaneutral.net) (Changing host) [10:21:07] *** Joins: guerby (~guerby@april/board/guerby) [10:24:57] *** Quits: lhodev (~Adium@66-90-218-190.dyn.grandenetworks.net) (Ping timeout: 264 seconds) [10:45:10] *** Joins: darsto (~dstojacx@89-68-135-211.dynamic.chello.pl) [11:18:25] *** Joins: param (~param@157.49.217.6) [11:26:24] Hi All, I want to know few details regarding CMB ( Controller Memory Buffer). Is reading the capabilities CMB as specified in spec the only way to figure if a controller supports it. In current peer to peer implementation IO Submission Queue is allocated in CMB and Completion Queue,Trackers is allocated in Host memory. Please corrent me if I am wrong [11:28:27] in the current SPDK implementation, we'll automatically put submission queues in CMB if supported by the controller [11:28:41] and the p2p patch allows the user to allocate data buffers in CMB if the controller supports it, but that isn't automatic [11:30:03] drv : yeah thanks . completion queue and tracker from host memory right? [11:30:08] right [11:30:42] the advantage of putting the SQ in CMB is that the controller doesn't need to DMA the SQ entries when the doorbell is updated, so there should be lower latency [11:31:17] but CQ in CMB doesn't really make sense; it would require the host to do MMIO reads to check for completions, which are much slower than host memory reads [11:35:54] yeah understood.. thanks for the explanation.. [11:37:05] How do we identify if a controller support CMB or not.. its like even before purchasing the drives to decide which one to get.. [11:37:47] i looked into product brief of NVMe drives but was not able to figure this out [11:56:39] *** Joins: lhodev (~Adium@inet-hqmc04-o.oracle.com) [13:02:57] *** Quits: param (~param@157.49.217.6) (Remote host closed the connection) [14:29:42] *** Quits: lhodev (~Adium@inet-hqmc04-o.oracle.com) (Remote host closed the connection) [14:31:19] *** Joins: lhodev (~Adium@66-90-218-190.dyn.grandenetworks.net) [15:14:18] *** Joins: sudheendrasampat (uid290301@gateway/web/irccloud.com/x-ajeogrwmucbblzch) [15:15:30] *** Parts: sudheendrasampat (uid290301@gateway/web/irccloud.com/x-ajeogrwmucbblzch) () [15:15:58] *** Joins: sudheendrasampat (uid290301@gateway/web/irccloud.com/x-ajeogrwmucbblzch) [15:52:23] *** Joins: Shuhei (caf6fc61@gateway/web/freenode/ip.202.246.252.97) [16:27:20] *** Quits: Shuhei (caf6fc61@gateway/web/freenode/ip.202.246.252.97) (Ping timeout: 260 seconds) [18:01:17] *** Joins: Shuhei (caf6fc61@gateway/web/freenode/ip.202.246.252.97) [18:38:51] *** Joins: dlw (~Thunderbi@114.255.44.143) [20:02:00] *** Quits: Shuhei (caf6fc61@gateway/web/freenode/ip.202.246.252.97) (Ping timeout: 260 seconds) [20:49:02] *** Quits: ziyeyang (ziyeyang@nat/intel/x-twkwgasrjahefcrf) (Ping timeout: 248 seconds) [20:49:02] *** Quits: Guest45589 (dstojacx@nat/intel/x-caufourfmwftfhfv) (Ping timeout: 248 seconds) [20:49:21] *** Quits: pwodkowx (pwodkowx@nat/intel/x-phamugrwiburmbls) (Ping timeout: 248 seconds) [20:49:42] *** Joins: darsto_ (dstojacx@nat/intel/x-vjeirohyegddvcjz) [20:50:05] *** darsto_ is now known as Guest79485 [20:51:12] *** Joins: ziyeyang (ziyeyang@nat/intel/x-jusuiukdurrarltt) [20:52:10] *** Joins: pwodkowx (pwodkowx@nat/intel/x-fknldpkjcytdftsh) [21:11:27] *** Joins: ziyeyang_ (ziyeyang@nat/intel/x-xtbmoymnfzuovpgt) [22:56:18] drv: looking at these intermittent nvmf failures - the "no poller found for device" ones [22:57:25] can you take a look at spdk_nvmf_tgt_listen? it does the for_each_channel call with the spdk_nvmf_tgt_listen_add_transport function pointer - this function is the one that fails, and it fails because device->map is NULL [22:57:54] spdk_nvmf_transport_listen() is the function that actually assigns device->map - and this is done after the for_each_channel call [22:58:30] i haven't dug in yet why this would be an intermittent failure, but it looks fishy to me [23:02:12] yeah, I'll take a look at it tomorrow