[03:41:10] *** Quits: ziyeyang_ (~ziyeyang@192.55.54.36) (Ping timeout: 240 seconds) [04:15:57] *** Joins: ziyeyang_ (~ziyeyang@134.134.139.70) [04:40:52] *** Quits: ziyeyang_ (~ziyeyang@134.134.139.70) (Remote host closed the connection) [04:41:00] *** Joins: ziyeyang_ (ziyeyang@nat/intel/x-xxkndqhjsuzmkoam) [05:14:28] *** Quits: ziyeyang_ (ziyeyang@nat/intel/x-xxkndqhjsuzmkoam) (Quit: Leaving) [08:03:05] *** Joins: jstern_ (~jstern@134.134.139.73) [08:07:02] drv: can you take a look at the spdk status page? [08:07:23] note the autotest.sh patch - says it's a "Review" but really it's a "Release" run [08:07:45] the one just before it was a rebase, after that finished I committed it [08:07:57] there is a bug in the pool script that causes it to run reviews twice in a row [08:08:26] doh! I didn't scroll down far enough to notice that [08:10:50] it's on the list of things to fix :) [08:11:22] seth is full time now right? [08:11:56] yeah [08:57:10] *** Quits: jstern_ (~jstern@134.134.139.73) (Ping timeout: 240 seconds) [09:07:04] *** Joins: jstern_ (~jstern@192.55.55.41) [09:30:15] jimharris: I am going to add some bdev accessors for getting block size and number of blocks; do you have any strong opinions about names? [09:30:24] they are currently called blocklen and blockcnt, but I don't like those very much [09:30:44] planning on doing spdk_bdev_get_block_size() and spdk_bdev_get_num_blocks() [09:34:17] your names look good to me [09:45:12] I think I'm also going to add spdk_bdev_get_size() to return size in bytes, since all of the offsets and I/O sizes are in bytes [09:45:17] not sure if that will be confusing given the other names, though [09:45:27] maybe get_size_bytes() and get_size_blocks()? although that is getting pretty verbose [10:08:39] *** Joins: sethhowe (~sethhowe@134.134.139.74) [11:04:14] jimharris: did we come to some consensus on what to do about resets in the bdev layer? [11:04:43] can I restrict reset to only work when there are no open channels? [13:29:18] jimharris: so I finally looked at PosixWritableFile::Close and I see that they're trying to reclaim space at the end when they close the file [13:29:30] are you thinking the root cause is that FALLOC_FL_KEEP_SIZE isn't working? [13:29:54] i think we don't want to keep the size [13:30:02] if I comment out that call entirely everything works [13:30:26] so that at least gets me unblocked on using xfs for testing [13:30:36] it's a don't care in the performance path [13:30:38] well, what size is written into the manifest? the shrunken size or the allocated size? [13:31:24] i.e. are they expecting the file to be size filesize_ or block_size *last_allocated_block [13:31:27] the shrunken size [13:31:41] if the manifest expects the shrunken size, then that's just a bug here [13:31:47] they need to drop the FALLOC_FL_KEEP_SIZE [13:32:07] maybe - i still need to work back through some of those options [13:48:33] jimharris: the use of that unique flag with channels is just used to set different queue depths dynamically [13:48:35] in blobstore/blobfs [13:48:49] I think it's probably fine to just make the size global instead [13:49:21] not quite as efficient, but much simpler [13:57:11] you could create different io_devices to get this same effect [13:57:23] i.e. one io_device for io channels, another for md channel [13:57:34] then you can differentiate between two different queue depths [13:59:13] yeah [14:01:47] one more complication - the blobfs uses two different channels [14:01:51] on the same thread [14:01:57] md vs. sync [14:02:04] again, we can use different I/O devices [14:23:33] yep [14:24:36] I'm going to work up the patches for this [14:24:41] it looks like it will all work out to me [14:27:10] the other problem was how to pass messages to channels allocated on non-event threads [14:27:15] and I think that is solvable too [14:27:24] make spdk_allocate_thread return a thread context [14:27:33] and that is passed to the user function that requests the message pass [14:27:53] *** Quits: jstern_ (~jstern@192.55.55.41) (Ping timeout: 260 seconds) [14:27:53] for the RocksDB implementation, we'll have to make queues or something to do the message passing [14:28:01] or signal somehow [14:28:19] yeah - that's the trick, there's no poller/event framework on the non-SPDK thread [14:37:29] it looks like Dariusz's vhost fix is working... that intermittent lockup hasn't happened today [16:23:48] *** Joins: ziyeyang_ (ziyeyang@nat/intel/x-kbhaixirlxqxkmad) [16:24:01] *** Quits: ziyeyang_ (ziyeyang@nat/intel/x-kbhaixirlxqxkmad) (Client Quit) [18:01:19] hmm, commit 7fa7f91ee34996144b272f9d2a02988cc35b49d6 (scsi: use SOFT reset when reseting bdev) removed the only call to spdk_scsi_lun_clear_all() [18:01:24] should we still be calling that somewhere or can it be removed? [19:23:50] *** Joins: jstern_ (~jstern@192.55.54.39) [19:39:49] *** Quits: jstern_ (~jstern@192.55.54.39) (Ping timeout: 246 seconds) [20:43:14] *** Quits: johnmeneghini (~johnmeneg@pool-173-76-8-123.bstnma.fios.verizon.net) (Quit: Leaving.)