Tuesday, 2019-03-19

*** elod has joined #openstack-nova00:02
*** markvoelker has joined #openstack-nova00:03
*** dpawlik has joined #openstack-nova00:06
*** markvoelker has quit IRC00:07
*** dpawlik has quit IRC00:11
*** dave-mccowan has quit IRC00:11
*** sapd1_x has joined #openstack-nova00:11
*** tetsuro has joined #openstack-nova00:14
openstackgerritMerged openstack/nova master: qemu: Make disk image conversion dramatically faster  https://review.openstack.org/64078100:14
*** gyee has quit IRC00:15
*** luksky has quit IRC00:15
*** sapd1_x has quit IRC00:21
openstackgerritAdam Spiers proposed openstack/nova master: Remove unnecessary default provider_tree when getting traits  https://review.openstack.org/64445200:30
*** markvoelker has joined #openstack-nova00:35
*** markvoelker has quit IRC00:49
*** slaweq has quit IRC00:58
*** slaweq has joined #openstack-nova01:10
*** hongbin has joined #openstack-nova01:12
*** dustinc has quit IRC01:22
*** slaweq has quit IRC01:24
*** wolverineav has joined #openstack-nova01:24
*** whoami-rajat has joined #openstack-nova01:25
*** wolverineav has quit IRC01:30
*** eharney_ has quit IRC01:40
*** dave-mccowan has joined #openstack-nova01:52
openstackgerritRui Zang proposed openstack/nova-specs master: support virtual persistent memory  https://review.openstack.org/60159601:54
*** lbragstad has quit IRC01:56
*** nicolasbock has quit IRC02:01
*** dpawlik has joined #openstack-nova02:07
*** lbragstad has joined #openstack-nova02:09
*** dpawlik has quit IRC02:12
*** dave-mccowan has quit IRC02:23
*** wolverineav has joined #openstack-nova02:36
*** itlinux has joined #openstack-nova03:05
*** zzzeek has quit IRC03:10
*** zzzeek has joined #openstack-nova03:16
*** cfriesen has quit IRC03:31
*** igordc has quit IRC03:32
*** janki has joined #openstack-nova03:44
*** wolverineav has quit IRC03:45
*** sapd1_x has joined #openstack-nova03:52
*** sapd1_x has quit IRC04:04
*** dpawlik has joined #openstack-nova04:08
*** hongbin has quit IRC04:12
*** dpawlik has quit IRC04:13
*** udesale has joined #openstack-nova04:14
*** diablo_rojo has quit IRC04:15
*** wolverineav has joined #openstack-nova04:18
*** cfriesen has joined #openstack-nova04:20
*** sridharg has joined #openstack-nova04:25
*** tetsuro has quit IRC04:33
openstackgerritchenker proposed openstack/python-novaclient master: Optimize limit option docs string description for novaclient  https://review.openstack.org/64303504:41
*** dpawlik has joined #openstack-nova04:44
*** dklyle has quit IRC04:44
*** dklyle has joined #openstack-nova04:45
openstackgerritchenker proposed openstack/python-novaclient master: Optimize limit option docs string description for novaclient  https://review.openstack.org/64303504:46
*** dpawlik has quit IRC04:48
*** wolverineav has quit IRC04:49
openstackgerritRui Zang proposed openstack/nova-specs master: Virtual persistent memory libvirt driver implementation  https://review.openstack.org/62289305:11
*** udesale has quit IRC05:31
*** wolverineav has joined #openstack-nova05:42
*** sajauddin has joined #openstack-nova05:45
*** ratailor has joined #openstack-nova05:46
*** wolverineav has quit IRC05:51
*** ravirjn has quit IRC05:57
*** liuyulong has quit IRC06:01
*** dpawlik has joined #openstack-nova06:15
*** brinzhang has joined #openstack-nova06:17
*** ivve has joined #openstack-nova06:19
*** markvoelker has joined #openstack-nova06:20
*** markvoelker has quit IRC06:25
*** minmin has joined #openstack-nova06:29
Kevin_Zhengping gmann06:35
*** ccamacho has quit IRC06:37
*** lbragstad has quit IRC06:38
*** markvoelker has joined #openstack-nova06:51
*** cfriesen has quit IRC06:51
openstackgerritmelanie witt proposed openstack/nova master: Add a prelude release note for the 19.0.0 Stein GA  https://review.openstack.org/64441206:53
*** jaosorior has quit IRC06:55
*** jaosorior has joined #openstack-nova06:57
*** itlinux has quit IRC06:57
*** itlinux has joined #openstack-nova06:58
*** Luzi has joined #openstack-nova06:59
*** pcaruana has joined #openstack-nova07:14
*** zkzmmrc has joined #openstack-nova07:18
*** dpawlik has quit IRC07:19
*** itlinux has quit IRC07:21
*** wolverineav has joined #openstack-nova07:22
*** tosky has joined #openstack-nova07:25
*** dpawlik has joined #openstack-nova07:29
*** pcaruana has quit IRC07:33
*** pcaruana has joined #openstack-nova07:34
*** slaweq has joined #openstack-nova07:38
*** maciejjozefczyk has joined #openstack-nova07:46
*** owalsh has quit IRC07:48
*** owalsh has joined #openstack-nova07:54
openstackgerritMerged openstack/nova master: Remove stale aggregates notes from scheduler evolution doc  https://review.openstack.org/64361307:56
*** rpittau|afk is now known as rpittau07:56
*** wolverineav has quit IRC07:57
*** tetsuro has joined #openstack-nova07:58
*** zzzeek has quit IRC08:00
*** zzzeek has joined #openstack-nova08:02
*** jangutter has quit IRC08:04
*** minmin has quit IRC08:06
*** luksky has joined #openstack-nova08:07
*** ttsiouts has joined #openstack-nova08:08
*** udesale has joined #openstack-nova08:09
*** awalende has joined #openstack-nova08:11
*** jangutter has joined #openstack-nova08:12
*** ccamacho has joined #openstack-nova08:14
*** luksky has quit IRC08:16
*** tesseract has joined #openstack-nova08:16
*** dtantsur|afk is now known as dtantsur08:18
*** tssurya has joined #openstack-nova08:19
*** alex_xu has quit IRC08:21
*** phasespace has joined #openstack-nova08:22
*** alex_xu has joined #openstack-nova08:23
*** brault has joined #openstack-nova08:24
*** ttsiouts has quit IRC08:25
*** mdbooth_ has joined #openstack-nova08:26
kashyapefried: Thank you for putting it through.08:26
*** mdbooth has quit IRC08:30
*** helenafm has joined #openstack-nova08:32
*** priteau has joined #openstack-nova08:38
openstackgerritYongli He proposed openstack/nova master: Clean up orphan instances  https://review.openstack.org/62776508:39
*** wolverineav has joined #openstack-nova08:48
*** ttsiouts has joined #openstack-nova08:49
openstackgerritSeyeong Kim proposed openstack/nova stable/rocky: Extract compute API _create_image to compute.utils  https://review.openstack.org/64385208:56
openstackgerritSeyeong Kim proposed openstack/nova stable/rocky: Share snapshot image membership with instance owner  https://review.openstack.org/64385308:56
*** Luzi has quit IRC08:59
*** zhongjun2 has joined #openstack-nova09:03
*** panda|pto is now known as panda09:04
*** dklyle has quit IRC09:08
*** dklyle has joined #openstack-nova09:09
*** kukacz has quit IRC09:11
*** xek has joined #openstack-nova09:15
*** alex_xu has quit IRC09:18
*** tkajinam has quit IRC09:18
*** luksky has joined #openstack-nova09:19
*** wolverineav has quit IRC09:19
*** wolverineav has joined #openstack-nova09:27
*** kukacz has joined #openstack-nova09:28
*** wolverineav has quit IRC09:29
*** kukacz has quit IRC09:29
*** kukacz has joined #openstack-nova09:30
*** ttsiouts has quit IRC09:31
*** ttsiouts has joined #openstack-nova09:32
openstackgerritzhangyangyang proposed openstack/nova master: Drop py35 jobs and add py36 jobs  https://review.openstack.org/64387109:32
*** wolverineav has joined #openstack-nova09:35
*** kukacz has quit IRC09:39
*** kukacz has joined #openstack-nova09:39
*** derekh has joined #openstack-nova09:40
*** sajauddin has quit IRC09:54
*** IvensZambrano has joined #openstack-nova09:55
*** tbachman has joined #openstack-nova09:57
*** dustinc has joined #openstack-nova10:03
gibimelwitt: I don't think https://bugs.launchpad.net/nova/+bug/1820588 is rc potential, I left some reasoning in the bug10:05
openstackLaunchpad bug 1820588 in OpenStack Compute (nova) "Bandwidth resource is leaked if a bound port is deleted in neutron" [Low,Confirmed]10:05
sean-k-mooneygibi: that will be fixed by handeling the networks-status event in the periodic jobs right?10:06
sean-k-mooneygibi: have you been working on a fix for that already or is it still todo?10:06
sean-k-mooneyi vaguely rememebr talking about it a week or two ago that we would have to do something to handel this edgecase10:07
kashyapaspiers: No problem; I myself will be off next week10:07
sean-k-mooneygibi: even if its not rc potential which i kind of agree with i think this should be backportable shortly after GA10:09
*** wolverineav has quit IRC10:09
gibisean-k-mooney: when the bound port is deleted in neutron nova gets the notification and detaches the port from the server. I don't know how the periodic is involved here10:11
gibisean-k-mooney: moreover I till not conviced that why the admin cannot detach the port in nova first and only delete it after in neutron10:11
gibidetach +  delete works properly with bandwidth10:12
*** mikal has quit IRC10:15
sean-k-mooneygibi: when a bound port is delete neutron send a notification to nova which the periodic jobs will recive10:19
sean-k-mooneygibi: this also does not require admin acess10:20
sean-k-mooneya tenant can simple do a openstack port delete to cause this issue10:20
aspierskashyap: you wanted me to split out the addition of getDomainCapabilities() from the <sev> parsing, right?10:21
kashyapaspiers: Yes, please10:21
aspierskashyap: the problem is, that code doesn't parse anything else in the output10:22
sean-k-mooneygibi: but you are right that this should be done by a nova interface detach in general10:22
aspierskashyap: so the first patch would introduce nonsensical code10:22
sean-k-mooneywe should however be able to process the network-status event we get form neutron and heal the placement allocation regardless of why it was done so its not something i would worry too much about10:23
aspierskashyap: the only thing it parses is <sev> under <features>10:23
aspierskashyap: so splitting it would result in 3 new LibvirtConfigObject classes which do absolutely nothing10:23
kashyapHmm10:24
aspiersI could make it parse something else just for the sake of it10:24
kashyapWhy would it be "nonsensical code" to split out a logically separate part?10:24
aspiersNot sure whether that makes sense though10:24
aspiersBecause that separate part is non-functional noop code10:25
aspiersThere'd be nothing to test10:25
gibisean-k-mooney: I disagree. Why end user wants to delete a bound port instead of deatching it?10:26
gibisean-k-mooney: what is the use case for this?10:26
sean-k-mooneygibi: its something that we have supported for many releases. there is not a defined usecase but neutron has never prevented it and until now nova has alreays correctly detached the port10:27
sean-k-mooneythe only other fix we could do is modify neutron to make deleteing a bound port illegal10:27
*** cdent has joined #openstack-nova10:27
sean-k-mooneywe could do that but that is a seperate issue10:28
aspierskashyap: unless you can think of something to test?10:28
aspiers but if it's not parsing anything I can't really see how10:28
gibisean-k-mooney: to support bandwidth cleanup at bound port delete is not a trivial thing. It adds complexity for someting that has no clear use case and I don't like that10:28
kashyapaspiers: /me needs to fully re-load this context; but if you think it is not helping in anyway (even for review), then leave it as-is10:29
kashyapaspiers: And note this reasoning somewhere in the commit message or the change10:29
sean-k-mooneygibi: that is true but the only way to prevent needeing to handle this is to modify the neutron api to prevent deletion of bound ports which will require a spec and my have unintended sideffects10:29
sean-k-mooneyanyway we could fix it in the periodic job but that does not mean we have too10:30
aspierskashyap: I've split out the move of machine type calculation to utils.py10:30
aspierskashyap: which already helps a bit10:30
gibisean-k-mooney: I'm not sure we can easly fix it in the periodic job. Also I think it would make sense to discuss why neutron allows deleteing a bound port10:30
kashyapaspiers: Yeah, that helps10:31
aspierskashyap: take a look at https://review.openstack.org/#/c/633855/11/nova/virt/libvirt/config.py10:31
aspierskashyap: if I remove parsing of <sev>, then LibvirtConfigDomainCapsFeatures becomes a noop (no features ever get parsed and added to self._features)10:32
aspiersand in that case LibvirtConfigDomainCaps is also a noop10:32
aspiersparse_dom() would do absolutely nothing10:32
sean-k-mooneygibi: yep we porablly should bring it up in the cross project session10:32
gibisean-k-mooney: OK, I'm adding it to the etherpad10:33
sean-k-mooneygibi: the asymitry has always annoyed me that we can detach port via neutron but not attach them10:33
aspierskashyap: like I said, I could make it parse something simple like <path> and/or <arch> just so that there is something to test10:33
kashyapaspiers: Dealing with 4 pings, please bear with me.10:33
sean-k-mooneygibi: but yes to your original point this proably does not need to be fix in the RC and can be "fixed" what ever way we decided in train and backported if needed10:33
aspierskashyap: that would give just enough excuse to split it out, but whatever I parsed would not be consumed by anything, at least until you start using it10:34
aspierskashyap: haha sure :)10:34
gibisean-k-mooney: yeah. I don't want to rush this fix as honetly I don't see how can this be easily fixed10:34
sean-k-mooneygibi: if we block it in the neutron api that wont be backportable but the osc-placement plugin can always be used to fix it by hand if needed10:35
cdent"how can this be easily fixed" the story of nova's life10:36
sean-k-mooneycdent: well you can always just delete the vm and that will make everything better :)10:36
gibicdent: especially that we "need to fix" even if we don't know what is the use case10:37
cdentthat's the other half of the story: "we're using this cloud as a home for our pets"10:37
sean-k-mooneycdent: of cource clouds and nice and fluffy places for our pets to live with totally no sharp edges10:38
cdentmade by magical open source bunnies!10:38
gibisean-k-mooney: no edges?! :) we want EDGE in the cloud :D10:38
sean-k-mooneygibi: hehe ture but hopefully said edges wont be sharp :)10:39
gibiwe need fluffy edges!10:39
*** dpawlik has quit IRC10:40
sean-k-mooneynew goal for summit. get "fluffy edges" into someones marketing deck10:40
cdentfluffy edges sounds like a pretty good term for dynamically scalable edge nodes10:44
*** dpawlik has joined #openstack-nova10:44
*** janki has quit IRC10:45
*** derekh has quit IRC10:45
*** nicolasbock has joined #openstack-nova10:45
*** derekh has joined #openstack-nova10:48
kashyapaspiers: "Not consumed by anything" is okay so long as it (a) helps with clarity; (b) makes way for future patches to cherry-pick it for a particular use case10:48
*** dpawlik has quit IRC10:49
*** dpawlik has joined #openstack-nova10:53
*** udesale has quit IRC10:53
aspierskashyap: yeah but needs to be testable still!10:55
kashyapaspiers: Agreed :-)  Don't let this block you.10:56
*** nicolasbock has quit IRC10:59
*** mrch_ has joined #openstack-nova10:59
openstackgerritMatthew Booth proposed openstack/nova master: Eventlet monkey patching should be as early as possible  https://review.openstack.org/62695211:03
*** psachin has joined #openstack-nova11:07
*** priteau has quit IRC11:08
*** ttsiouts has quit IRC11:09
kashyapmdbooth_: When you get a moment, since we always return a non-None 'disk_cachemode' here: https://review.openstack.org/#/c/641981/10/nova/virt/libvirt/driver.py@44311:09
kashyapmdbooth_: Are you implying to remove the check there?11:10
*** mdbooth_ is now known as mdbooth11:10
mdboothkashyap: No, that comment was wrt the release note11:10
mdboothBecause we never return non-None there, we never use the qemu default11:10
mdboothSo to the qemu default is irrelevant11:10
kashyapAh, guessed as much.11:11
kashyapYou wrote it in reference to the help text11:11
kashyapOkay, elided the irrelevant bit.11:11
kashyapThanks!11:11
mdbooths/release note/docs/11:11
openstackgerritGorka Eguileor proposed openstack/nova master: Fix unnecessary locking when connecting volumes  https://review.openstack.org/61419011:16
*** tetsuro has quit IRC11:21
*** mrch_ has quit IRC11:21
openstackgerritKashyap Chamarthy proposed openstack/nova master: libvirt: Use 'writeback' QEMU cache mode when 'none' is not viable  https://review.openstack.org/64198111:22
openstackgerritKashyap Chamarthy proposed openstack/nova master: libvirt: vzstorage: Use 'writeback' QEMU cache mode  https://review.openstack.org/64337611:22
openstackgerritKashyap Chamarthy proposed openstack/nova master: libvirt: smbfs: Use 'writeback' QEMU cache mode  https://review.openstack.org/64337711:22
sean-k-mooneykashyap: you are not enableing writeback by defualt when none is not available are you?11:23
*** mrch_ has joined #openstack-nova11:23
kashyapsean-k-mooney: That's exactly what it's doing; please read the commit message.  I spent 3 hours writing it.11:24
kashyaphttps://review.openstack.org/#/c/641981/11:24
*** nicolasbock has joined #openstack-nova11:24
*** rcernin has quit IRC11:24
sean-k-mooneykashyap: if none is not an option we shoudl default to the safet alternitive either directsync or writethrough and only use writeback if there is no other option11:24
kashyapFWIW, : I ran the patch by QEMU Block Layer maintainer over an e-mail thread.11:24
kashyapsean-k-mooney: No, that is wrong.  See the commit message and the comment in the code, again.11:24
sean-k-mooneyi just saw the ping. i had not opened it yet11:24
sean-k-mooneykashyap: i had under stood that writback did not honer guest fush commands. is that not the case?11:28
sean-k-mooneyif it does the ok11:28
sean-k-mooney*then11:28
kashyapsean-k-mooney: It does honour it11:32
kashyapsean-k-mooney: Also see: http://git.openstack.org/cgit/openstack/nova/commit/?h=master&id=e7b64eaad811:33
sean-k-mooneyok ya looking at the docs it does11:33
kashyapNod11:33
* kashyap --> AFK; bbiab11:33
sean-k-mooneyi had tought there was still an edgecase with virtio scsi not informing the guest os that it was in writeback mode and that this only worked with virtio-block but maybe not11:34
sean-k-mooneyi could be tinking of discard instead of flush11:34
sean-k-mooneykashyap: anywya i trust your and the qemu maintiners knoladge of this better then my own. its been a while since i dug into the cahce modes in any detail11:36
*** pawel-baclawski has joined #openstack-nova11:36
*** wolverineav has joined #openstack-nova11:37
*** adrianc has quit IRC11:41
sean-k-mooneykashyap: ah i found the ceph note i was missremembering. when using caching with RBD you expcitly have to use writeback cache mode not that you sould not use cach=writeback. http://docs.ceph.com/docs/master/rbd/qemu-rbd/#running-qemu-with-rbd the last time i looked into this was determing the correct way to use qemu safely with ceph storage with caching which at the time was virio-scsi for11:44
sean-k-mooneydiscard/trim support + writeback cache if i wanted safe caching11:44
*** janki has joined #openstack-nova11:49
*** ratailor has quit IRC11:49
*** klindgren_ has quit IRC11:51
*** psachin has quit IRC11:54
*** dave-mccowan has joined #openstack-nova11:58
*** brinzhang has quit IRC11:58
*** klindgren has joined #openstack-nova12:03
*** finucannot is now known as stephenfin12:05
*** luksky has quit IRC12:07
*** panda is now known as panda|lunch12:07
*** ccamacho has quit IRC12:08
*** adrianc has joined #openstack-nova12:10
*** ttsiouts has joined #openstack-nova12:10
*** wolverineav has quit IRC12:12
*** dustinc has quit IRC12:20
*** luksky has joined #openstack-nova12:20
*** adrianc has quit IRC12:24
*** markvoelker has quit IRC12:24
*** luksky has quit IRC12:29
kashyapsean-k-mooney: Just back from lunch12:31
kashyapsean-k-mooney: Yep, I also suggest you think about the cache modes in terms of the three booleans each mode toggles.12:32
kashyapIt allows better reasoning of the concept12:32
kashyapsean-k-mooney: (Yeah, that Ceph thing is accounted for by our own NOTE in the Nova config help docs.)12:32
*** mchlumsky has joined #openstack-nova12:33
openstackgerritAdam Spiers proposed openstack/nova master: Move libvirt calculation of machine type to utils.py  https://review.openstack.org/64455412:35
*** adrianc has joined #openstack-nova12:36
sean-k-mooneykashyap: well i generally use boot from volume or rbd image driver so i generally have not needed to resonable about cachemodes for qemu/raw image backend12:39
kashyapNoted; was only saying as a future note :-)12:40
sean-k-mooneythe only time i tend to have local images is devstack :) but yes i look this up about once a year when i need to but its one of those things that i generaly dont rememebr off the top of my head unfortunetly12:41
*** luksky has joined #openstack-nova12:42
*** alex_xu has joined #openstack-nova12:44
kashyapNod; /me does a yearly "refresher course" on QEMU's caching behaviour...because damned if I could ever remember the details12:45
mdboothThere seems to be a problem with the openstack-tox-docs job12:48
mdboothIt's failed for me twice in a row now.12:48
mdboothhttp://logs.openstack.org/52/626952/7/check/openstack-tox-docs/d4bea1d/job-output.txt.gz#_2019-03-19_11_13_38_08882812:49
openstackgerritKashyap Chamarthy proposed openstack/nova master: libvirt: Rework 'EBUSY' (SIGKILL) error handling code path  https://review.openstack.org/63909112:49
*** adrianc has quit IRC12:51
aspierskashyap: trying to split getDomCaps out, but another issue is that the design decision to use a nested dict of dicts was heavily influenced by SEV https://review.openstack.org/#/c/633855/11/nova/virt/libvirt/host.py@70612:52
* mdbooth wants a 'kill this run and recheck' option in zuul12:52
aspiersmdbooth: that would be nice :)12:52
mdboothOr even better, a 'only recheck this single job'12:52
kashyapmdbooth: Sounds like a nice request for the fine folks on #openstack-infra12:52
fricklerkashyap: seems this is your real error, probably related to your patch http://logs.openstack.org/52/626952/7/check/openstack-tox-docs/d4bea1d/job-output.txt.gz#_2019-03-19_11_13_31_48814512:53
kashyapfrickler: You mean mdbooth's ^12:53
aspierskashyap: so either the preliminary getDomCaps patch prematurely references SEV before introducing support for it, or it makes a design decision without explaining it12:53
fricklerkashyap: yes, mangled up scrollback, sorry12:53
kashyapaspiers: Reading ...12:53
mdboothfrickler: Ah, thanks!12:54
mdboothThat was a super-unhelpful error message!12:54
*** mriedem has joined #openstack-nova12:54
mdboothfrickler: Out of curiosity, what grep-fu did you use to find that?12:55
mdboothNM, I suppose it's just above the other error.12:56
fricklermdbooth: none, I just know that failure to copy "../doc/build" mostly results from the docs build having failed earlier. so I scrolled back a bit more to find the other error12:56
*** mchlumsky has quit IRC12:56
fricklermdbooth: another way to approach this is to look at the ara report, where you can easily spot that not only the docs-post job failed, but also the main run, which most of the time has the more interesting errors http://logs.openstack.org/52/626952/7/check/openstack-tox-docs/d4bea1d/ara-report/12:57
*** mchlumsky has joined #openstack-nova12:58
mriedemdansmith: i'm assuming you want to just mark this as won't fix or something https://bugs.launchpad.net/nova/+bug/182085112:58
openstackLaunchpad bug 1820851 in OpenStack Compute (nova) "Please do cell mapping without periodic task or active admin involvment" [Wishlist,Opinion]12:58
*** adrianc has joined #openstack-nova12:59
mdboothfrickler: That's awesome. Thanks.13:00
* mdbooth needs a more surgical whack-a-mole hammer.13:00
*** liuyulong has joined #openstack-nova13:00
*** wolverineav has joined #openstack-nova13:01
*** panda|lunch is now known as panda13:01
*** udesale has joined #openstack-nova13:02
*** eharney has joined #openstack-nova13:03
kashyapaspiers: Hmm.  Still thinking on the nested dictionary of arch–machine type mapping ...13:04
aspiersok13:04
kashyapaspiers: Can you put what you just wrote in the review, please?13:04
kashyapAs a "consciousness strem"13:04
kashyaps/strem/stream/13:04
*** wolverineav has quit IRC13:12
openstackgerritBoris Bobrov proposed openstack/nova master: Extract SEV-specific bits on host detection  https://review.openstack.org/63633413:14
openstackgerritBoris Bobrov proposed openstack/nova master: Fix memtune parameters according to libvirt docs  https://review.openstack.org/63630113:14
openstackgerritBoris Bobrov proposed openstack/nova master: Add configs for AMD SEV  https://review.openstack.org/63631813:14
openstackgerritBoris Bobrov proposed openstack/nova master: Add iommu driver to devices  https://review.openstack.org/64456413:14
openstackgerritBoris Bobrov proposed openstack/nova master: [wip] Driver changes for sev  https://review.openstack.org/64456513:14
*** mikal has joined #openstack-nova13:16
sean-k-mooneykashyap: nested dict of arch machine type mappings? in the nova.conf or image. i dont think i makes sense in the image and we basically aready have that in the nova.conf13:16
kashyapsean-k-mooney: For more context, check out the "returns" here: https://review.openstack.org/#/c/633855/11/nova/virt/libvirt/host.py@70613:17
kashyapsean-k-mooney: The context is to separate out the getDomainCapabilities() method from that file13:17
mdboothHmm. Unless I can differentiate between workloads which are simply loading Nova classes to gather metadata and workloads which actually plan to execute Nova code, I'm going to have to remove the monkey patching asserts :/13:18
mdboothAlthough the former really shouldn't be monkey patching at all13:18
mdboothBut they always have been, so I guess it doesn't matter in practise13:18
*** tssurya has quit IRC13:18
sean-k-mooney kashyap will a machine type ever be suppoted by two archs? i dont think so right. so it could jsut be a dict of machine_type to capablities13:19
*** jmlowe has quit IRC13:19
sean-k-mooneyif your going with the nested structure however i would strongly think of make really OVO however instead of dicts of dicts of capablity dicts13:20
*** mikal has quit IRC13:20
kashyapsean-k-mooney: So far we have AArch64 that has 'virt' machine type -- now there is upstream QEMU talk to introduce something similar for x86_6413:22
kashyapsean-k-mooney: Please note your point on the change pointed earlier.13:22
sean-k-mooneykashyap: ah and the capablitys fo the virt machine type would be different for aarch64 vs x8613:22
kashyapExactly13:23
mriedemyay this is old https://github.com/openstack/nova/blob/master/nova/scheduler/client/report.py#L1549-L155213:25
sean-k-mooneykashyap: when i +1'd it previously it retruned a  config.LibvirtConfigDomainCaps object by the way13:26
sean-k-mooneykashyap: so i have not reviewed it since this changed to a dict of dicts of objectss13:26
*** pawel-baclawski has quit IRC13:27
sean-k-mooneyim not sure how the change to detect sev suport which will only work on amd x86 some how morphed to include generic multi arch multi machiche type capablity discovery code13:27
sean-k-mooneythat proably should be in a different patch or the commit needs to be updated as we have conflated two different change in this one patch13:28
kashyapsean-k-mooney: We've had some back and forth on the change.  I still need to fully read the lengthy design doc myself (although I pointed out a potential blocker)13:28
sean-k-mooneywell it would not be a blocker for sev13:29
sean-k-mooneyas sev will only ever work on x86 amd cpus13:29
kashyapsean-k-mooney: This is not the blocker, a different topic13:29
kashyapsean-k-mooney: Check out the points from Dan Berrange and myself on the re-proposed spec: https://review.openstack.org/#/c/641994/13:30
sean-k-mooneysure but my point is that adding the more complex logic to this patch mean we basicaly block sev support until we figure out this multi arch multi machine type proablem which is not germain to enabling sev suppot13:30
kashyapThe machine types figuring out is a lesser problem than the more thorny blocker identified in the re-proposed spec.13:32
sean-k-mooneythe memory hard limit was previously discussed. we determined that it woudl only be needed if you did not use hugepages i think. the sev limt is a new factoide but that can be handeled via a placment inventory. that is new work.13:32
sean-k-mooneykashyap: what is the issue you are refering to?13:33
kashyapHard-coding a memory value.13:33
sean-k-mooneyya but we dont need to do that if we use hugepages which i suggested last cycle13:34
kashyapAlso each AMD machine has some limit on the number of VMs.  That is also something that needs to be worked into the spec13:34
*** lbragstad has joined #openstack-nova13:34
sean-k-mooneyya that is new. it was not raised previously but that is simple enough to fix with a inventory of sev context in placement13:35
sean-k-mooneyassuming we can auto discover that limit form either libvirt or sysfs13:35
kashyapI don't think this is just limited to hugepages.  The core point about protecting the host from getting DoSed needs to be addressed.13:35
sean-k-mooneyif we really needed too we could have a config option for it. that shoudl be in the spec i agree but i still dont see a hard blocker here13:36
kashyapPlease see the cgroups idea DanPB mentioned in his remark.13:36
kashyapI think this is hard blocker.  I'm even more convinced of it (that's why I gave a "-1", FWIW) after reading DanPB's message and talking to a developer who implemented SEV bits in libvirt13:36
kashyapLet's work it out on the spec.  IRC is too real-time for me sometimes :-)13:37
sean-k-mooneykashyap: well if you require the use of hugepage then you disable over commit and dont need to use a hard memory limit as the vm memory is preallcoated and fixed13:37
kashyapsean-k-mooney: So you're saying when using SEV one should "mandate" huge pages?13:37
sean-k-mooneyyes13:37
kashyapHmm, I don't know the full implications of it.  Need to think more.13:38
sean-k-mooneyi suggested it last cycle to not need to set the hardlimit13:38
sean-k-mooneythe main implication is no over commit13:38
sean-k-mooneyand an implict numa topology13:38
sean-k-mooneythe memory for sev i think i memlocked so it cant be swapped anyway so you would have disabled over commit already13:39
sean-k-mooneyso requireing hugepages would remove some of the complexity of this feature and give a performacne boost13:39
kashyapOkay, I see the pinning the memory by using `hw:mem_page_size=large` point in the spec.13:40
mriedemefried: cdent: edleafe: semi interesting but also for an older release bug about forced live migration failing during PUT /allocations https://bugs.launchpad.net/nova/+bug/182061213:41
openstackLaunchpad bug 1820612 in OpenStack Compute (nova) "Logging is hard to read if there is a problem with resources during live migration" [Undecided,Incomplete]13:41
kashyapsean-k-mooney: Please respond to Dan on the review, for the discussion to be "sticky".13:41
sean-k-mooneyya i didnt push too hard because it would be nice to not require hugepages but it make this a hole lot eaiser as not useing htem has other accounting issues13:41
mriedemefried: cdent: edleafe: i've pieced together that they are forcing a live migration to a dest host before queens where we'd move the source node allocations from the instance to the migration record,13:41
* cdent reads13:42
sean-k-mooneykashyap: sure.13:42
mriedemso in this code, it's doubling up the allocations for the instance consumer by putting the same source node allocations to the source provider and the new allocations to the dest provider,13:42
mriedembut placement pukes on the source provider PUT13:42
mriedemwhich makes me wonder if placement is trying to make a new allocation rather than replace it13:42
mdboothThis monkey patching change is a hydra :(13:43
*** marst has joined #openstack-nova13:44
mriedemcdent: anyway if they were queens+ they wouldn't have this problem, but that isn't a very helpful response to someone at ocata or pike13:45
mriedemif we know about a bug fix in placement though i could say 'yup this is fixed here, backport it'13:45
kashyapmdbooth: Seems like it is turning into "cthulhu patching"13:45
cdentmriedem: I'm still digesting.13:45
edleafemriedem: I don't remember ever doubling the resources on the source when migrating to a different host13:45
mdboothkashyap: Eventlet is just awful.13:46
kashyapmdbooth: Nod, I only hear about it (I didn't have to faff with it much so far).  Skimmed your e-mail; thanks for the write-up!13:46
mdboothI still don't understand what problem it solves, tbh. Seems to me it just makes your multi-threading even jankier.13:46
edleafemdbooth: One of my first tasks in OpenStack was to replace the Twisted code with eventlet, because people were having so much trouble tracking down bugs in Twisted :)13:47
kashyapmdbooth: I saw your second email about using "Python's APIs except when not possible" for multi-threading13:47
openstackgerritAdam Spiers proposed openstack/nova master: Add detection of SEV support from QEMU/AMD-SP/libvirt on AMD hosts  https://review.openstack.org/63385513:48
mdboothedleafe: Hah. There's always something worse :)13:48
edleafemdbooth: Yup13:48
mdboothedleafe: But at a top level, why not just use python's multi-threading?13:48
cdentmriedem: Is there any chance there's a race. Something else ate a bit more more RAM during the transaction. That shouldn't be possible (at least not in more recent allocation handling) but it's very hard to keep track of changes...13:49
edleafemdbooth: I really don't remember. The original nova code used Twisted for async, and it caused a lot of problems, so someone suggested eventlet, and...13:49
mdboothPython already had fake concurrency, so why implement fake concurrency on top of fake concurrency?13:49
kashyapaspiers: Thanks for addressing the docs bit.  You saw what I "discovered" with my comment :D  Writing that out helped me understand it better13:49
mriedemcdent: it's possible, this was pre-generations13:50
openstackgerritMatt Riedemann proposed openstack/nova master: Cleanup comments around claim_resources method  https://review.openstack.org/64457613:50
mriedemcdent: i guess one way to find out is write a functional regression test with at-capacity source compute and then try to live migrate off it13:51
mriedemtests against at-capacity computes is not our strong suit in nova13:51
cdentquite13:51
mriedemanyway, while in here i've cleaned up a bunch of old comments https://review.openstack.org/64457613:51
cdenthuzzah13:52
* cdent sticks in queue13:52
*** BjoernT has joined #openstack-nova13:53
sean-k-mooneyaspiers: kashyap i replied in the spec reproposal13:54
*** Luzi has joined #openstack-nova13:54
*** whoami-rajat has quit IRC13:55
aspierskashyap: yep, that extra clarity helped me too. Have just replied inline in the review13:55
aspierssean-k-mooney: thanks13:55
openstackgerritAdam Spiers proposed openstack/nova master: Add new "supports_amd_sev" capability to libvirt driver  https://review.openstack.org/63868014:04
mriedemalex_xu: replied in https://review.openstack.org/#/c/644293/ - thanks for those questions14:05
*** wolverineav has joined #openstack-nova14:05
efriedmriedem: This ready to go? https://review.openstack.org/#/c/644423/ I didn't want to rubber-stamp it if you wanted another look.14:05
mriedemefried: looking14:06
mriedemgot it14:06
efriedthx14:07
*** needscoffee is now known as kmalloc14:09
*** wolverineav has quit IRC14:11
*** mlavalle has joined #openstack-nova14:11
openstackgerritMatt Riedemann proposed openstack/nova master: Add docs for compute capabilities as traits  https://review.openstack.org/64429314:12
mriedemefried: aspiers: alex_xu: ^ updated to use one of aspiers' suggestions and document the resource_provider_association_refresh  thing in the commit message14:12
*** sapd1_x has joined #openstack-nova14:13
efriedmriedem: +2, still looks good14:14
*** xek_ has joined #openstack-nova14:17
*** mvkr has quit IRC14:18
*** xek has quit IRC14:19
kashyapaspiers: I updated the machine types blueprint name (to "gracefully-handle-qemu-machine-types").  When I originally wrote it, discussions were hot on QEMU / libvirt & related lists about making 'q35' default.  But since then many things have changed.14:20
kashyapaspiers: When you next respin the patch, might want to update the reference to it.14:21
*** BjoernT has quit IRC14:24
*** mikal has joined #openstack-nova14:24
*** hongbin has joined #openstack-nova14:29
*** mikal has quit IRC14:29
*** phasespace has quit IRC14:32
*** dustinc has joined #openstack-nova14:36
*** adrianc has quit IRC14:36
kashyapaspiers: For later discussion, I'm still thinking if Nova should be in the business of deciding the default machine type fo 'x86'.  I'm updating the problem description in the specification.  Can discuss there14:38
kashyap(So feel free to disregard me here.)14:38
*** adrianc has joined #openstack-nova14:39
sean-k-mooneykashyap: right now you can set it in the config if you chooes to otherwise we leave it up to qemu14:41
sean-k-mooneykashyap: im not sure if we need to chage that or not as intaller tool like tripleO can always just set it in the config14:42
kashyapsean-k-mooney: Yes, I'm writing it up in the spec, if only for discussion, and that we considered it.14:42
kashyap(There was an elaborate discussion on the 'qemu-devel' and 'libvirt' lists some months ago to change the defaults.)14:42
sean-k-mooneyyes i know :)14:43
kashyapPeople seem to be overly paranoid about "backwards compat".14:43
sean-k-mooneywell it would break centos 6 vms14:43
sean-k-mooneywhich are apparently still a thing14:43
sean-k-mooneybut ya i generally say use a sane default and if there isnt one leave it up to the operator14:44
aspierskashyap: ah, got it thanks14:44
sean-k-mooneyyou could argue q35 is a sane default on security grounds but backwards comptiablity is also a good argument against it at least for a time14:45
dansmithmriedem: yeah, you marked it as wishlist...does it need further action to demote it?14:45
sean-k-mooneyeventrualy security will win and we will want to change the default. not sure if its now or not but its good to discusse in anycase14:46
*** BjoernT has joined #openstack-nova14:47
*** mvkr has joined #openstack-nova14:47
*** itlinux has joined #openstack-nova14:47
*** igordc has joined #openstack-nova14:49
mriedemdansmith: if you think it's a "never going to happen" thing, then you could mark it as won't fix with further words14:52
*** NostawRm has joined #openstack-nova14:52
mriedemdansmith: also for your awareness, https://review.openstack.org/#/c/640688/ is being discussed by the tc14:52
*** wolverineav has joined #openstack-nova14:53
*** cfriesen has joined #openstack-nova14:53
openstackgerritMatthew Booth proposed openstack/nova master: Eventlet monkey patching should be as early as possible  https://review.openstack.org/62695214:54
*** jmlowe has joined #openstack-nova14:54
dansmithmriedem: I don't know that I have a strong opinion on that (nor do I know why the tc would be involved in a discussion about it, but...)14:54
kashyapAnyone with an Ubuntu machine, can you please post this output in a pastebin: `qemu-system-x86 -machine help`14:54
dansmithmriedem: AFAICT, that's nova publishing metrics for which it is the authority to an external metrics-gathering service14:56
dansmithmriedem: I've previously been opposed to abusing nova to collect metrics on non-nova things "since it's already deployed on the compute node" instead of installing a proper metrics-gathering daemon14:56
dansmithbut this is not that thing14:56
mriedemkashyap: paste.openstack.org/show/748029/14:56
mriedemhttp://paste.openstack.org/show/748029/14:56
kashyapmriedem: Thank you!14:57
*** zkzmmrc has quit IRC14:57
mriedemdansmith: ack, see my comments about the smorgasbord of existing half baked metrics/usage/audit things we already expose14:58
*** luksky has quit IRC14:58
mriedemmy main opposition is piling on to that pile14:58
*** cfriesen has quit IRC14:58
dansmithyeah, this is not that, AFAICT14:58
*** cdent has quit IRC14:59
*** wolverineav has quit IRC15:00
*** diablo_rojo has joined #openstack-nova15:02
*** adrianc has quit IRC15:02
*** artom has joined #openstack-nova15:06
*** adrianc has joined #openstack-nova15:08
*** cdent has joined #openstack-nova15:10
*** awalende has quit IRC15:10
openstackgerritsahid proposed openstack/os-traits master: ci: re-enable openstack-python35-jobs  https://review.openstack.org/64459515:11
openstackgerritGorka Eguileor proposed openstack/nova master: Use os-brick locking for volume attach and detach  https://review.openstack.org/61419015:12
*** Luzi has quit IRC15:12
*** eharney has quit IRC15:14
openstackgerritMatt Riedemann proposed openstack/nova master: Address old TODO in claim_resources_on_destination  https://review.openstack.org/64459615:15
*** dpawlik is now known as dpawlik_15:16
*** awalende has joined #openstack-nova15:16
*** awalende has quit IRC15:16
*** sapd1_x has quit IRC15:19
*** whoami-rajat has joined #openstack-nova15:23
*** adrianc has quit IRC15:24
*** adrianc has joined #openstack-nova15:27
*** jmlowe has quit IRC15:29
*** ttsiouts has quit IRC15:38
mdboothThis is weird, and doesn't reproduce for me locally: http://logs.openstack.org/52/626952/8/check/openstack-tox-docs/0876468/ara-report/result/73a64a42-855e-4818-980a-0a106766e721/15:39
mdboothDoes anybody know how I can kick off a 'openstack-tox-docs' job in check in isolation?15:40
*** ttsiouts has joined #openstack-nova15:40
mdboothI don't see that job in our .zuul.yaml, so I assume it's defined elsewhere15:40
*** yan0s has joined #openstack-nova15:41
artommdbooth, tox -e docs? Or am I being a simpleton?15:42
mdboothartom: That's how I can run it locally. That works fine.15:42
mdboothIt failed in the check queue, though. I want to see if that happens again without having to wait 2 hours.15:42
artommdbooth, oh, you mean in CI15:42
mdboothIndeed.15:42
artommdbooth, I think if you just touch the docs subtree it'll only run those jobs15:43
mdboothDo you know where that's defined?15:43
artom... and you mean on your existing patches, don't you?15:43
artomWithout pushing a new docs-only DNM patch or w/e15:43
mdboothWell if I can find a way to kick it off in isolation I can layer a patch on top or something15:43
mdboothBut I don't know what's running it. It's not in nova's .zuul.yaml15:43
mriedemgibi: question for you in bence's neutron docs patch https://review.openstack.org/#/c/640390/5/doc/source/admin/config-qos-min-bw.rst@9815:44
sean-k-mooneymriedem: the check queue jsut use ansible to run the same tox env15:44
sean-k-mooneymriedem: sorry mdbooth ^15:44
mdboothsean-k-mooney: Where is it defined?15:45
sean-k-mooneymdbooth: ill get the link. its in either zull-jobs or openstack-zull-jobs15:45
mdboothsean-k-mooney: I want a way to actually run it on CI infrastructure.15:45
sean-k-mooneyit should be identically to how you run it locally as its using a tox env but you might need to recreate your tox env with -r to make sure its clean15:46
mdboothIt runs successfully in a local clean tox env15:47
mdboothI'm looking for a way to run it on CI15:47
sean-k-mooneyi think its this job https://github.com/openstack-infra/openstack-zuul-jobs/blob/master/zuul.d/jobs.yaml#L293-L32115:47
mdboothIt failed there for a reason which looks bizarre.15:47
sean-k-mooneyoh wait thats the old one15:47
sean-k-mooneythis one https://github.com/openstack-infra/openstack-zuul-jobs/blob/master/zuul.d/jobs.yaml#L618-L63215:47
sean-k-mooneymdbooth: do you have the failure so i can take a look15:48
mdboothhttp://logs.openstack.org/52/626952/8/check/openstack-tox-docs/0876468/ara-report/result/73a64a42-855e-4818-980a-0a106766e721/15:48
mdboothAttributeError: module 'select' has no attribute 'poll'15:48
mdboothGiven that this is against a monkey patching change, that's obviously suspect. However, it works locally.15:49
*** luksky has joined #openstack-nova15:51
sean-k-mooneywell you can see the command at the top it was "tox -edocs -vv"15:51
mdboothYep. That's how I know how to run it locally. That works ;)15:52
mdboothIt doesn't work in CI, though. I was looking for a lightweight way to run that in CI to see if it can be reproduced in CI without having to wait 2 hours.15:52
sean-k-mooneymdbooth: https://docs.python.org/3.6/library/select.html#select.poll15:53
sean-k-mooneyso apparently that is not suppored on all operating systems...15:53
mdboothsean-k-mooney: You think I might have been scheduled on a Windows CI worker?15:53
sean-k-mooneywe might be missing a depencny on the gate job15:53
mdboothThat seems improbable ;)15:54
artomsean-k-mooney, I'd thunk that meant Linux and Windows, not F29 and Ubuntu15:54
sean-k-mooneyit was on ubunut 18.0415:54
*** ttsiouts has quit IRC15:54
artommdbooth, actually wait, are *you* running in on Windows?15:54
artomYou might be, knowing you15:54
mdboothartom: Hmm....15:55
mdboothYes I am.15:55
sean-k-mooneymdbooth: can i have the link to the gerrit review15:55
sean-k-mooneyill run it on my laptop15:55
*** hamzy has quit IRC15:55
mdboothartom: Running in WSL. However, I'd expect to see that *I* don't have poll()15:56
mdboothLinux definitely has poll.15:56
* mdbooth will run it on native Linux15:56
artommdbooth, true.15:56
janguttermdbooth: It's not a Windows CI worker - the pre jobs installed some bindep packages in Ubuntu: http://logs.openstack.org/52/626952/8/check/openstack-tox-docs/0876468/ara-report/result/9863769a-0d01-4a5a-b45a-345628504cbf/15:56
*** BjoernT has quit IRC15:57
mdboothjangutter: Surely we don't have any Windows CI workers! ?15:57
sean-k-mooneymdbooth: we proably do for hyperv15:57
sean-k-mooneybut not for docs15:57
mriedemlyarwood: dansmith: can one of you fast approve https://review.openstack.org/#/c/643011/ ?15:57
*** mrch_ has quit IRC15:58
*** igordc has quit IRC15:58
*** wolverineav has joined #openstack-nova15:59
mriedembauzas: you want to get this rocky backport https://review.openstack.org/#/c/643098/ ?15:59
mdboothLinux is a bazillion times faster than WSL.15:59
bauzasmriedem: sure, looking15:59
sean-k-mooneymdbooth: cygwin was faster the WSL the last time i tried WSL15:59
openstackgerritMerged openstack/nova master: Remove unnecessary default provider_tree when getting traits  https://review.openstack.org/64445215:59
mriedemonce we get those in i think we can do a rocky release16:00
mriedemmelwitt: ^16:00
janguttermdbooth, sean-k-mooney: do the tox docs jobs normally run without the "Modules with known eventlet monkey patching issues were imported prior to eventlet monkey patching: oslo_context.context, urllib3." warning?16:02
lyarwoodmriedem: done16:02
*** ttsiouts has joined #openstack-nova16:02
mdboothjangutter: I just added that message16:02
*** jaosorior has quit IRC16:02
sean-k-mooneyjangutter: we should not be monkeypatch for docs16:02
*** BjoernT has joined #openstack-nova16:02
mdboothjangutter: However, we have always monkey patched for docs16:02
sean-k-mooneyjangutter: that said we might be16:03
mdboothThat warning message simply points it out16:03
mdboothOk, I can't run tox -edocs on Linux with or without my patch16:03
sean-k-mooneymdbooth: so i get the same error locally16:03
mdboothThat's annoying16:03
*** BjoernT has quit IRC16:04
mdboothAh, that will be a pyc thing16:04
sean-k-mooneyi had to recreate the env with "tox -e docs -vv -r"16:04
sean-k-mooneybut i got the same16:04
sean-k-mooneyException occurred:16:04
sean-k-mooney  File "/usr/lib/python3.6/selectors.py", line 348, in __init__16:04
* mdbooth recreated it with rm -rf16:04
sean-k-mooney    self._poll = select.poll()16:04
sean-k-mooneyAttributeError: module 'select' has no attribute 'poll'16:04
sean-k-mooneyerror16:04
sean-k-mooneythat works too16:05
sean-k-mooneyill try it on a centos vm16:05
mdboothSo, the only thing my patching is changing is where we monkey patch16:05
sean-k-mooneymdbooth: ya so i dont think we used to monkey patch docs16:06
*** cdent has quit IRC16:06
mdboothsean-k-mooney: Why do you think that?16:06
sean-k-mooneydocs only installed stuff for the vrsion number and then config stuff16:06
sean-k-mooneymdbooth: i dont think shinix loaded an entrypoint that incldued a path that invokded monky pataching16:07
mdboothDo you know what entrypoints it loads?16:07
sean-k-mooneyit just opened the nova/conf subtree i  think16:07
sean-k-mooneythat is a stephenfin question but ill see if i can find out quickly16:07
mdboothOk, I can't reproduce locally on F2916:07
mdboothsean-k-mooney: What eventlet version do you have?16:08
sean-k-mooneyhttps://github.com/openstack/nova/blob/master/doc/source/conf.py#L2216:08
mdboothAlthough that's tox installed, so should be the same16:08
sean-k-mooneyeventlet==0.24.116:09
mdboothHmm, same16:09
sean-k-mooneyam why do we do https://github.com/openstack/nova/blob/master/doc/source/conf.py#L20116:09
mdboothI don't know, but as that's not eventlet I assume that's ok16:10
sean-k-mooneyanyway the only thing we import form nova is nova.version16:10
mdboothsean-k-mooney: Where do you see that?16:10
sean-k-mooneyso before that would not have monkeypatch anything16:10
sean-k-mooneywhere do i see what?16:10
mdbooth<sean-k-mooney> anyway the only thing we import form nova is nova.version16:11
mdboothWhat's your basis for that?16:11
sean-k-mooneyoh well i just looked at the conf.py file that sphinx uses i think that is the only pyton file it uses to build the docs16:11
sean-k-mooneyim going to do a code search in a second16:12
*** mikal has joined #openstack-nova16:12
*** BjoernT has joined #openstack-nova16:12
sean-k-mooneymdbooth: so assuming my github foo hasnt failed me this is the only hit https://github.com/openstack/nova/search?l=Python&q=%22from+nova%22+path%3A%2Fdoc%2Fsource16:15
mdboothsean-k-mooney: that link doesn't work.16:15
mdboothWhat are you looking for?16:16
sean-k-mooneythis was the search query in the nova github '"from nova" path:/doc/source'16:16
stephenfinsean-k-mooney: Huh? Context?16:16
mdboothOk, sphinx does load_extension()16:16
* stephenfin is trying to parse log16:16
lyarwoodhttp://codesearch.openstack.org/ - might be easier to search with16:17
mdbooth mod = __import__(extname, None, None, ['setup'])16:17
*** itlinux has quit IRC16:17
sean-k-mooneystephenfin: we are trying to figur out what monkeypatch in the toplevel nova module would break the docs job16:17
mdboothThat ends up loading nova/tests/__init__.py, which in my patch does monkey patching16:17
*** mikal has quit IRC16:17
mdboothWhereas previously it was lower down separately in both unit and functional16:17
sean-k-mooneylyarwood: tried that first but its harder to make look a a single directory16:17
*** hamzy has joined #openstack-nova16:18
mdboothAlthough, why the hell would it load tests and not, for eg nova.cmd or nova.api.openstack?16:18
stephenfinNot an answer but various Sphinx extensions do load the nova source16:18
lyarwoodsean-k-mooney: kk16:18
*** eharney has joined #openstack-nova16:18
stephenfinsphinx.autodoc and oslo_config.sphinxext jump to mind16:18
mdboothstephenfin: I'd expect them to load the *whole* nova source though, right?16:18
* mdbooth tries to work out if sphinx really was doing monkey patching before16:19
stephenfinmdbooth: What are they loading?16:19
* mdbooth assumed yes16:19
stephenfineventlet monkeypatching?16:19
stephenfinor monkeypatching of other things16:19
sean-k-mooneymdbooth: we dont generate docs for the code directly so ingeneral i would have assuemd it should not load the nova code.16:19
mdboothstephenfin: eventlet. It's done just by loading certain modules.16:19
mdboothstephenfin: If we import everything, we do monkey patching eventually.16:20
stephenfinWe can monkeypatch the monkeypatch though...16:20
stephenfinif that was actually what was happening16:20
stephenfinstub out eventlet, so to speak16:20
sean-k-mooneystephenfin: ew16:20
* mdbooth is going to try to work out if we loaded everything16:20
stephenfinsean-k-mooney: That comment also applies to eventlet itself ;)16:21
mdboothstephenfin: If it was acceptable we could define an environment variable which, if set, would disable monkey patching16:21
mdboothHowever, I'd assumed that was not acceptable16:21
jangutterit would be really funny if rendering the docs accidentally caused an entire Nova deployment to spring up.16:21
stephenfinyou'd have to load the os module to do that16:21
stephenfinwhich I assume eventlet needs to monkeypatch16:21
sean-k-mooneywe should not be executing any of the code so we should not need to monkeypatch as monkeypatch should never change any of the api signiture and therefor should nto change the docs16:21
sean-k-mooneyin the eventlet case16:21
mdboothsean-k-mooney: coulda shoulda isn't relevant, though, as it's done at import time16:22
sean-k-mooneymdbooth: we do that for debug right16:22
stephenfinsean-k-mooney: Any code outside a function and not within a 'if __name__ == "__main__"' conditional is going to be executed tho16:22
mdboothsean-k-mooney: that's done with config16:22
mdboothsean-k-mooney: Actually by inspecting command line arguments16:22
sean-k-mooneyyes but you can now set config values via the environment16:23
sean-k-mooneyits new in a recent oslo config16:23
mdboothdef enabled():16:23
mdbooth    return ('--remote_debug-host' in sys.argv and16:23
mdbooth            '--remote_debug-port' in sys.argv)16:23
mdbooth^^^ is the guard16:23
sean-k-mooneyyes for debug16:23
sean-k-mooneyanyway stephenfin do you know what we use from nova beyond the version and config options for our docs. is that it or do we use other parts of the tree?16:24
stephenfinI'm trying to figure out if we still generate API docs. I don't think we do16:24
mdboothIt's safe to say that this interface is hairy AF, though16:25
*** ttsiouts has quit IRC16:25
mdboothThat is, even if we weren't doing it, somebody only had to sneeze and we were.16:25
sean-k-mooneyya that said i know the docs team wanted to get away from installing proejct deps and loading project in the doc env a while ago. i dont know if that effort did or not but its part of the reason why we created a seperate doc/requirement.txt16:27
mdboothNo, we weren't doing it before16:27
sean-k-mooneymonkeypatching?16:27
mdboothPreviously we monkey patched in nova/test.py and nova/tests/functional/__init__.py and sphinx didn't hit that16:28
sean-k-mooneyright16:28
mdboothI moved the test monkey patching to nova/tests/__init__.py, and now it does hit that16:28
mdboothGo figure16:28
mdboothIf anybody can explain that interface to me I'd be interested16:28
sean-k-mooneydoes that fix it our recreate teh breakage?16:28
mdboothI can't reproduce the failure locally, even with monkey patching16:29
mdboothOk, I'm just going to move the monkey patching points and add comments not to move them again16:29
mdboothI have no idea how you're supposed to understand what sphinx imports16:30
stephenfinmdbooth: The whole thing is basically a hack, but there's no easy way to do it16:30
*** ivve has quit IRC16:31
*** sdunixgeek has joined #openstack-nova16:33
sean-k-mooneystephenfin: the sane thing to do would be not import the nova source when building docs but that is an issue for generationg config docs if we want to do that with sphinx i guess16:33
*** BjoernT has quit IRC16:33
stephenfinsean-k-mooney: We either do it dynamically, like we do, or we have a tool to export config to a machine readable format (YAML) and parse that16:34
stephenfinand if we go with the latter, updating those definitions now becomes a manual step meaning we need to add tests to ensure it doesn't get out of date16:34
mdboothstephenfin: But even then presumably the tool which generated the yaml would import the source with a python interpreter16:35
janguttersean-k-mooney: http://www.sphinx-doc.org/en/master/usage/extensions/autodoc.html "Warning: autodoc imports the modules to be documented. If any modules have side effects on import, these will be executed by autodoc when sphinx-build is run."16:35
sean-k-mooneythere is prably an option 316:35
stephenfinautodocing APIs is even more complicated since you do need a full environment to be able to do introspection16:35
mdboothstephenfin: So we'd just be moving the problem elsewhere16:35
stephenfinmdbooth: Correct, but that's sometimes a reasonable thing to do16:36
sean-k-mooneyjangutter: ya im aware of how autodocs works.16:36
*** ttsiouts has joined #openstack-nova16:36
sean-k-mooneyjangutter: its both good and bad16:36
sean-k-mooneyjangutter: we have some module level stuff we caluate on import that is slow16:37
stephenfinmdbooth: We can either store this stuff as code and deal with these dependency issues or we store it separately and then deal with keeping it up-to-date. Choose one16:37
stephenfin(I'm very much in favour of the former, as noted by my work on (cliff|oslo_config|oslo_policy).sphinxext16:38
stephenfin*)16:38
sean-k-mooneymdbooth: did you determin if the issue is with monkey patching twice or not monkey patch at all or didnt find the root cause16:38
janguttersean-k-mooney: and the current theory is that autodoc and monkeypatching are fighting?16:38
sean-k-mooneyjangutter: i think we are possibly monkeypatching twice16:38
mdboothsean-k-mooney: I couldn't reproduce, so I have no idea.16:38
sean-k-mooneymdbooth: i can repoduce locally16:38
mdboothsean-k-mooney: On Ubuntu?16:38
stephenfinjangutter: Not necessarily autodoc. Probably oslo_config.sphinxext16:38
sean-k-mooneyyes..16:39
stephenfinDon't think we do autodoc16:39
janguttermdbooth: I reproduced on a CentOS 7 container.16:39
sean-k-mooneyok so it cross distro16:39
jangutterstephenfin: ah!16:39
* mdbooth is just going to bypass the problem by not changing the patching point for tests.16:39
stephenfinmdbooth: Good reading, fwiw http://python-notes.curiousefficiency.org/en/latest/python_concepts/import_traps.html16:39
sean-k-mooneymdbooth: we should proably open a bug and fix it later16:39
mdboothThat seems to avoid whatever sphinx is importing16:39
mdboothsean-k-mooney: For what?16:40
stephenfinmdbooth: It's loading the module. I suspect you'd get the same issue if you left it in 'nova/test.py' and added 'import .test' to 'nova/tests/__init__.py'16:41
stephenfin*'import nova.test'16:41
mdboothstephenfin: Which module is it loading?16:42
*** cdent has joined #openstack-nova16:42
stephenfinIt's loading 'nova', which is causing it to load 'nova.tests', I would imagine16:43
sean-k-mooneymdbooth: https://review.openstack.org/#/c/626952/8/nova/monkey_patch.py@5516:43
sean-k-mooneymdbooth: does that comment make sense.16:43
*** tstrul has joined #openstack-nova16:43
sean-k-mooneyactull i test it locally16:43
*** itlinux has joined #openstack-nova16:44
stephenfinand that's happening because of https://github.com/openstack/nova/blob/master/doc/source/conf.py#L2716:45
mdboothsean-k-mooney: Right, if the problem is importing twice that would work round it. However, if we previously weren't monkey patching at all by happy coincidence, I'm not sure if that's not just a dirtier hack.16:45
stephenfinthough that's clearly not necessary https://github.com/openstack/nova/blob/master/doc/source/conf.py#L2216:45
mdboothstephenfin: “Never add a package directory, or any directory inside a package, directly to the Python path”.16:46
*** mvkr has quit IRC16:47
mdboothFrom that traps doc you sent earlier16:47
*** sdunixgeek has quit IRC16:47
*** udesale has quit IRC16:48
stephenfinyuuuup16:48
stephenfinIn general, messing with the Python path is a bad idea16:48
stephenfinbut the alternative is making all these things installable16:48
mdbooths/(the|path) //16:48
mdboothg16:49
stephenfin:)16:49
stephenfinI like to live on the edge, personally16:49
mdboothOk, I'm going to do both16:50
mdboothI'm going to move the monkey patching points back to where they were, *and* add a guard to explicitly avoid double monkey patching16:51
stephenfinmdbooth: I think you might also be interested in some of Armin Ronacher's most recent presentations on all things Python http://lucumr.pocoo.org/talks/16:52
sean-k-mooneymdbooth: i tryed the guard locally and it did not seam to help16:52
stephenfinhe of Flask fame16:52
stephenfin ...openstack/nova/doc/source/reference/notifications.rst:142:Unknown directive type "automodule".16:54
stephenfinSo we are using autodoc16:54
*** luksky has quit IRC16:54
*** dtantsur is now known as dtantsur|afk16:56
stephenfinmdbooth: Try adding this to doc/source/conf.py16:58
stephenfinautodoc_mock_imports = ['nova.tests']16:58
*** amodi has quit IRC16:59
mdboothstephenfin: That's still really flaky, though, because it doesn't explain why we don't import the nova.cmd or nova.api.openstack.wsgi_app entry points16:59
mdboothstephenfin: I'd prefer to either go from flaky to non-flaky, or just leave well alone16:59
mdboothflaky->different flaky isn't worth the churn, I think17:00
sean-k-mooneymdbooth: im flipped the condition on my local gard to never monkey patch and that fixes it17:00
sean-k-mooneyso the issue is the docs only build if we never monkeypatch17:00
stephenfinOh, I didn't realize we did that there17:01
sean-k-mooneystephenfin: we monkey patch on the __init__.py in nova/cmd17:01
stephenfinYup, see that now17:01
stephenfinweirdddd17:01
*** jmlowe has joined #openstack-nova17:01
stephenfinmdbooth: Can you share the debug logs from Sphinx?17:02
sean-k-mooneyya anywya as i said above the issue is the sphinx only works if we do not do eventlet.monkeypatch17:02
mdboothstephenfin: In what configuration?17:02
mdboothstephenfin: FWIW, this doesn't fail for me on F29, even when monkey patched17:02
stephenfinOh, wherever it's failing17:03
mdboothAlthough apparently it does fail on Centos7 and Ubuntu, so I'm guessing it's some library version17:03
* mdbooth can't make it fail17:03
stephenfinI assume that's only on Ubuntu so?17:03
stephenfinAck17:03
sean-k-mooneystephenfin: jangutter mentioned its broken on centos 7 too17:03
sean-k-mooneymdbooth: are you running on py36 on fedora 29 or py3717:03
* mdbooth just hacked tracepoints into the code wherever we monkey patch to work out if we're hitting it and which one17:03
sean-k-mooneyubuntu and centos 7 use py3617:04
*** wolverineav has quit IRC17:04
stephenfinYeah, we need debug logs for this stuff17:04
mdbooth3717:04
sean-k-mooneyok so it could be a 36 vs 37 thing17:04
openstackgerritLance Bragstad proposed openstack/nova master: Give the policy vision document a facelift  https://review.openstack.org/64461517:05
sean-k-mooneyill install 3.7 and check17:05
lbragstadmriedem lumped it all in there ^ lemme know if you want that broken up17:05
lbragstadcc efried ^17:06
openstackgerritStephen Finucane proposed openstack/nova master: docs: Misc cleanups  https://review.openstack.org/64461617:07
*** luksky has joined #openstack-nova17:07
sean-k-mooneyso looks like ti works fine on python 3.7 with the gauard17:10
*** rpittau is now known as rpittau|afk17:10
sean-k-mooneyill revert to a clean copy of the patch and confrim its fine without the guard too17:10
mdboothHehe, with vim's standard highlighting in nova.monkey_patch, I see: NOTE, NOTE, TODO, NOTE, NOTE, NOTE, NOTE17:13
aspierssean-k-mooney: we got Brijesh from AMD to respond to your hugepages suggestion17:13
sean-k-mooneymdbooth: stephenfin so yes this only happens on python3.6 which is why it passes on fedora and not on ubuntu or centos which default to python 3.617:13
*** jmlowe has quit IRC17:13
*** helenafm has quit IRC17:13
mdboothWell, at least they're all in the same place, now17:13
sean-k-mooneyaspiers: oh ok i havent read it yet17:13
sean-k-mooneyaspiers: was it favorable or not?17:14
aspierssean-k-mooney: I don't think so. Bottom of https://review.openstack.org/#/c/641994/217:14
aspiersSEV by design prevents the kernel copying encrypted pages around17:15
aspiershe says using hugepages would pin it within the hugepages pool, but not pin each page to a single address17:15
aspiersI'm on a call with AMD now17:15
*** jaypipes has joined #openstack-nova17:16
*** igordc has joined #openstack-nova17:16
sean-k-mooneyaspiers: ya dan berrange replied and said hugepages may not be sufficent too as the roms and uefi pflash would not be pinned17:16
aspiersright17:16
aspierssean-k-mooney: how does it work for device passthrough?17:18
aspiersapparently that's a similar scenario in terms of pinning17:18
*** zhubx has quit IRC17:19
*** zhubx has joined #openstack-nova17:19
sean-k-mooneythe iommu maps the device mmio region to a fixed set of addresses that are maped to the memory regions listed in the pci VF config space i think. but honestly i tought that a hugepage was similarly fixed and could not migrate when we use explcit not transparent hugepages17:20
mdboothIt seems there's no need for a double-import guard unless you borked the python path, because python doesn't appear to import a second time anyway17:21
mdboothstephenfin: Is ^^^ your understanding?17:21
sean-k-mooneymdbooth: we dont need the import guard correct17:21
stephenfinmdbooth: That sounds reasonable, aye17:22
stephenfinBased on my understanding17:22
sean-k-mooneymdbooth: the issue is we never monkeypatched the docs before and under python 3.6 only it breaks things if we do. apparently17:22
mdboothIncidentally, that likely only breaks because we didn't patch earlier...17:24
mdboothPerhaps we should update sphinx to always monkey patch ;)17:24
*** gyee has joined #openstack-nova17:24
*** priteau has joined #openstack-nova17:25
sean-k-mooneymdbooth: you joke but we could proably write a tiny sphinx extenion to monky patch earlir. that said didnt you plane to patch in nova/__init__.py17:25
sean-k-mooneyoh your not doing that in that patch17:26
mdboothsean-k-mooney: Yeah, that breaks everything for different reasons.17:27
aspierssean-k-mooney: yeah, I get the impression Brijesh (AMD) thinks otherwise but TBH I'm out of my depth here :)17:27
sean-k-mooneyah ok :) well it is eventlets17:27
aspiersdefinitely not my area of expertise17:28
sean-k-mooneyaspiers: well we still lock the memory expiclitly when we use hugepages17:28
aspiersah17:28
sean-k-mooneyi.e. we set the locked element https://libvirt.org/formatdomain.html#elementsMemoryBacking17:28
*** janki has quit IRC17:29
openstackgerritMatthew Booth proposed openstack/nova master: Eventlet monkey patching should be as early as possible  https://review.openstack.org/62695217:29
mdboothThar she blows.17:29
sean-k-mooneyor maybe we only do that for realtime i can check17:29
mdboothLets see if that passes muster.17:29
aspierssean-k-mooney: ah OK, is that also done for device pass-through?17:30
sean-k-mooneyno its not done for device pass-though17:30
*** wolverineav has joined #openstack-nova17:31
*** BjoernT has joined #openstack-nova17:31
sean-k-mooneyaspiers: this is the only time we current lock the memory explcitly whic is for realtime guests17:32
sean-k-mooneyhttp://git.openstack.org/cgit/openstack/nova/tree/nova/virt/libvirt/driver.py#n481017:32
*** luksky has quit IRC17:32
*** yan0s has quit IRC17:33
*** jmlowe has joined #openstack-nova17:33
sean-k-mooneythe way dpdk work i am prtty sure the hugepage does not migrate to different phyical pages on the host as it is used for dma transfer for the vhost-user nics17:34
sean-k-mooneyaspiers: in anycase if you have hardware you can test it on it would be worth testing with hugepages17:34
aspierssean-k-mooney: AMD already tried hugepages in one of their earliest iterations17:36
sean-k-mooneyaspiers: but if dan's and brijesh's assertion regarding the rom+pflash issue are correct it may not be enough17:36
aspiersthat's what I just heard17:36
aspiersthey are also saying that mlock() is just a hint not a guarantee17:36
*** amodi has joined #openstack-nova17:36
sean-k-mooneyok well in that case i dont know what the best path forword is on the hardlimit issue17:37
aspiersone suggestion was to expose the right hardlimit via QEMU / libvirt17:37
aspiersso nova could just query it17:38
sean-k-mooneyaspiers: if qemu/libvirt can provide it that sounds resonable but it would make the relevent libvirt/qemu version that provides that the minium qemu/libivrt for that feature17:39
aspierscorrect, there's already a minimum version requirement anyway17:39
aspiersI think everyone is aware of the issue now though, so hopefully Dan and Brijesh can figure something out :)17:40
*** mrch_ has joined #openstack-nova17:40
*** ttsiouts has quit IRC17:40
sean-k-mooneyaspiers: so reading dan's comment again if we just remove the hard_limmit entirly then that may be suffienct to adress his orignial comment here https://review.openstack.org/#/c/641994/2/specs/train/approved/amd-sev-libvirt-support.rst@16717:45
sean-k-mooneyah but that wont work as that is how you are pinning the memory17:46
aspiersright17:46
*** bryan_stephenson has joined #openstack-nova17:48
aspiersbryan_stephenson: catch up on the conversation via http://eavesdrop.openstack.org/irclogs/%23openstack-nova/%23openstack-nova.2019-03-19.log.html#t2019-03-19T17:13:2717:49
sean-k-mooneyaspiers: honestly looking at the documentation of hard_limit i think relying on it for the behavior you desire is undocumented and not part of the contract at least form the libvirt perspective17:50
sean-k-mooneyaspiers: hard_limit does not guarntee teh meoeoy will not be swapped or that it will be preallocated17:50
sean-k-mooneyaspiers: thos poperties are conntoeld via allocation and locked in the memory backing17:51
bbobrovlets just ask on the libvirt mailing list17:53
bbobrov(hi)17:53
aspiersI agree with bbobrov17:53
aspiersthis probably requires libvirt changes17:53
*** BjoernT has quit IRC17:54
aspiersbbobrov: Do you want to kick off the thread there?17:54
sean-k-mooneybbobrov: aspiers sure let us know what they say17:54
bbobrovaspiers: yep, i will do it, but starting tomorrow17:55
aspierswe can just link to the spec review and say "please find us a solution" :-)17:55
sean-k-mooneybbobrov: aspiers but as i said the behavior that is being asserted for hard_limit. i.e. that it prevents the page form migrating is not documented in teh libvirt docs https://libvirt.org/formatdomain.html#elementsMemoryTuning17:55
aspiersbbobrov: great thanks17:55
aspierssean-k-mooney: ack17:55
aspiershttps://libvirt.org/formatdomain.html#elementsMemoryBacking seems to be the bit for pinning but if that just does an mlock() then apparently it's not enough17:56
aspiersfrom what I heard earlier17:56
aspiersalthough that seems strange to me, since then why would it be good enough for realtime?17:56
aspierssean-k-mooney: real-time also needs a hard guarantee, right?17:56
bbobrovwhy have we decided to use memtune for pinning in the first place?17:57
aspiersbecause that's what the libvirt/QEMU guys recommended initially17:57
bbobrovif there is no direct indication that it actually pins memory17:57
aspiersthey said it did17:57
bbobrovis there a mailing list thread about it?17:57
aspiersyes, on the internal list17:57
sean-k-mooneyaspiers: not entirly. for minium latency variance yes but it wont break the feature if there was host page migration in the background but it may break SLAs17:58
bbobroveh, internal lists17:58
aspiersbbobrov: our sev list17:58
bbobrovyeah, i got it, still ba17:58
bbobrov*bad17:58
sean-k-mooneybbobrov: well this is what the amdese repo does https://github.com/AMDESE/AMDSEV/blob/master/xmls/sample.xml#L21817:59
sean-k-mooneyit jsue set hard_limit17:59
sean-k-mooneythere is no other memory tuning or pinning but i would not have assumed that pinned any memory17:59
*** derekh has quit IRC18:00
aspiers"The value of the domain/memtune/hard_limit element will be used to setrlimit(RLIMIT_MEMLOCK, hard_limit) on the qemu process and in memory.limit_in_bytes setting of the processes memory controller (/sys/fs/cgroup/memory/machine.slice/machine-<vmid><vmname>.scope/memory.limit_in_bytes)"18:00
*** BjoernT has joined #openstack-nova18:00
aspiersthat's from our libvirt guy18:00
aspiersalso https://libvirt.org/git/?p=libvirt.git;a=blob;f=src/qemu/qemu_domain.c;h=ba3fff607a93533b9b47956cc2cfa70237e7c041;hb=HEAD#l1013418:01
*** itlinux has quit IRC18:02
gibimriedem: I've replied in https://review.openstack.org/#/c/640390/5/doc/source/admin/config-qos-min-bw.rst@9818:02
*** jmlowe has quit IRC18:04
bryan_stephensonAccoring to https://libvirt.org/formatdomain.html#elementsMemoryBacking setting "locked" reserves/locks the physical memory. One use is for DMA, which would only be useful if the memory did not move. Do we think that memory might move locations even if it is locked?18:07
*** priteau has quit IRC18:07
*** ivve has joined #openstack-nova18:07
*** gerrykopec has joined #openstack-nova18:07
aspiersbryan_stephenson: that's what Brijesh said on the call. he said mlock(2) was just a hint18:07
aspiersthe man page makes it sound like more than that, but I don't know18:08
bryan_stephensonThen how does DMA not get goofed up?18:08
sean-k-mooney bryan_stephenson we use hugepage memory for dma trasfer with dpdk so i think either hugepage or setting locked expclitly would be suffient18:08
aspiersHonestly it's beyond my paygrade ;-)18:08
bryan_stephensonSo the "locked" just calls mlock() which may not be sufficient. Is that a correct understanding?18:09
aspiersThat's what I think I heard from Brijesh18:09
sean-k-mooneyaspiers: so looking at that funtion it runtrun Unlimited if the memory is locked to this would not caluatle a valide limit for realtime guests18:12
sean-k-mooneyhttps://libvirt.org/git/?p=libvirt.git;a=blob;f=src/qemu/qemu_domain.c;h=ba3fff607a93533b9b47956cc2cfa70237e7c041;hb=HEAD#l1004918:12
*** wolverineav has quit IRC18:12
openstackgerritDan Smith proposed openstack/nova-specs master: Add request-filter-image-types spec  https://review.openstack.org/64462518:12
efriedaspiers: Want me to throw a procedural -2 on the bottom SEV patch so you don't have to keep chasing -Ws?18:14
openstackgerritMerged openstack/nova master: Remove additional policy configuration details from policy doc  https://review.openstack.org/64442318:14
openstackgerritMerged openstack/nova master: Clarify policy shortcomings in policy enforcement doc  https://review.openstack.org/64396018:14
sean-k-mooneyaspiers: so based on https://github.com/libvirt/libvirt/blob/0ec6343a069b21178d4580688a8380dbb6d76620/docs/news-2013.html.in#L152618:14
sean-k-mooneyaspiers: libvirt used to set RLIMIT_MEMLOCK when you set the locked value18:14
aspiersefried: that would be nice thanks, but depends on which you think is the bottom patch ;-)18:14
efriedaspiers: https://review.openstack.org/#/c/633855/ ?18:15
sean-k-mooneyaspiers: and it still does https://github.com/libvirt/libvirt/blob/b6aacfc435ce3b7e2665ddf5a422d2153bca88b8/src/util/virprocess.c#L74918:15
efriedaspiers: Done, lmk if there are any stragglers not in the series that you'd like similarly tagged.18:15
aspiersefried: yeah, I think 644554 could maybe merge pre-Stein without doing harm18:15
aspierssean-k-mooney: reading18:16
efriedagree18:16
efriedaspiers: if you can get that efried guy to approve it.18:16
aspiers:)18:16
aspiersefried: sounds like a tall order18:16
efriedaspiers: I almost did a full rewrite of that method, but I'll settle for nixing backslashes.18:17
aspiershrm, nix them how?18:18
efriedaspiers: Use parens, or use an if, or...18:18
aspiersOK18:19
efriedit's just a style rule that nova likes to follow. I'm pretty sure there was a time I didn't care, but now I'm brainwashed.18:20
aspierssure18:20
*** wolverineav has joined #openstack-nova18:20
*** tstrul has quit IRC18:22
aspierssean-k-mooney: seems like a key question is whether mlock(2) really is enough for SEV or not18:22
*** wolverineav has quit IRC18:25
aspierssean-k-mooney, bbobrov: I guess there's also #libvirt18:26
sean-k-mooneyaspiers: i think its calling https://linux.die.net/man/2/setrlimit but yes let use know what they determin18:30
*** amodi has quit IRC18:32
sean-k-mooneybut as i said before im pretry sure hard_limit is not actully locking the memory its just limiting how much memory can be locked by an unprivalaged process18:33
aspierssean-k-mooney: yes, I think it needs the combination of setrlimit and mlock18:33
sean-k-mooneywhich https://github.com/AMDESE/AMDSEV/blob/master/xmls/sample.xml does not do :)18:35
sean-k-mooneyanyway im going to grab something to eat18:35
sean-k-mooneybe back in a bit18:35
aspiersOK, me too. Cheers for the help!18:35
*** sridharg has quit IRC18:46
*** jmlowe has joined #openstack-nova18:47
*** IvensZambrano has quit IRC18:47
openstackgerritLance Bragstad proposed openstack/nova master: Give the policy vision document a facelift  https://review.openstack.org/64461518:49
*** wolverineav has joined #openstack-nova18:55
*** jmlowe has quit IRC18:58
*** diablo_rojo has quit IRC19:03
*** wolverineav has quit IRC19:04
*** awalende has joined #openstack-nova19:11
*** tstrul has joined #openstack-nova19:13
*** spbarbieri has joined #openstack-nova19:15
*** awalende has quit IRC19:16
*** jmlowe has joined #openstack-nova19:16
*** phasespace has joined #openstack-nova19:18
*** ttsiouts has joined #openstack-nova19:20
sean-k-mooney /away until noon gmt19:30
sean-k-mooneyextra space ....19:30
*** tstrul has quit IRC19:31
*** wolverineav has joined #openstack-nova19:33
*** gouthamr_ has joined #openstack-nova19:34
*** gouthamr_ has quit IRC19:38
*** imacdonn has quit IRC19:39
*** imacdonn has joined #openstack-nova19:40
spbarbieriI provision a server with a block_device that specifies a volume to be used as the boot volume. I'd like to use the REST API to determine if a block_device was used to boot the instance, and if so, which attached volume is the boot volume for the server. The "server details" api returns an empty "image" so I guess I can assume it used a volume as the boot device, but I don't know how to determine which attached volume is t19:45
*** jmlowe has quit IRC19:47
*** mikal has joined #openstack-nova19:48
artomspbarbieri, you can list volume attachments with https://developer.openstack.org/api-ref/compute/?expanded=list-volume-attachments-for-an-instance-detail,show-a-detail-of-a-volume-attachment-detail#list-volume-attachments-for-an-instance, but that wouldn't tell you whether one was used for boot19:50
*** mikal has quit IRC19:53
spbarbieriThanks for the pointer. When creating the server I can specify "block_device_mapping_v2.delete_on_termination". This is saved somewhere because my volume is deleted on server termination. I was hoping that the "this is the boot device" was saved there as well. But, I couldn't find it in any of the server/volume/volume_attach apis.19:58
*** ttsiouts has quit IRC20:01
*** cdent has quit IRC20:01
artomspbarbieri, I *think* boot_index is what you're looking for, but it doesn't look like we expose it anywhere in the API20:05
artomspbarbieri, you can also tag with 'boot' as a workaround20:06
*** jmlowe has joined #openstack-nova20:07
*** dustinc is now known as dustinc|afk20:09
*** tstrul has joined #openstack-nova20:10
*** itlinux has joined #openstack-nova20:13
spbarbieriyeah, boot_index would be perfect. I couldn't find it anywhere either. I'm actually trying to do this after the fact. I have a running server and I want to know which volume was used as the boot drive. I only have access to the REST API...sounds like a MacGyver episode...find the boot drive using a paperclip and some duct tape20:14
*** cdent has joined #openstack-nova20:19
*** artom has quit IRC20:20
openstackgerritMerged openstack/nova master: Use assertXmlEqual() helper for all XML comparison tests  https://review.openstack.org/64185220:23
openstackgerritMerged openstack/nova stable/rocky: Allow utime call to fail on qcow2 image base file  https://review.openstack.org/64301120:23
mriedemspbarbieri: that's eventually going to show up in the API here https://review.openstack.org/#/c/623981/2420:24
mriedeme.g. https://review.openstack.org/#/c/623981/24/doc/api_samples/os-volumes/v2.72/volume-attachment-detail-resp.json20:24
*** diablo_rojo has joined #openstack-nova20:25
mriedemif you're an admin, you could also see the OS-EXT-SRV-ATTR:root_device_name parameter in the response from the GET /servers/{server_id} API20:25
mriedemand match that to the volume with the same device name, although those aren't guaranteed to be where the root volume is mounted in the guest20:26
*** cdent has quit IRC20:26
spbarbieriThanks for the pointer to the volume-attach details. That will be helpful. I'm running against my local devstack, as admin, and I don't get that returned. I'm calling compute/v2.1/servers/{id}.20:27
*** tosky has quit IRC20:30
*** tstrul has quit IRC20:37
*** wolverineav has quit IRC20:43
*** hamzy has quit IRC20:46
*** tesseract has quit IRC20:52
*** wolverineav has joined #openstack-nova20:53
*** luksky has joined #openstack-nova20:54
*** ttsiouts has joined #openstack-nova20:54
melwittspbarbieri: are you using novaclient or openstackclient? if the latter, you need to pass the necessary compute API microversion to see the volume-attach info. i.e. --os-compute-api-version 2.3 (see https://docs.openstack.org/nova/latest/reference/api-microversion-history.html#maximum-in-kilo)20:55
melwitts/volume-attach info/root_device_name/20:55
spbarbierimelwitt: I'm using Postman with direct REST API calls20:57
melwittspbarbieri: OK, see this doc on how to specify compute API microversion with the HTTP header https://developer.openstack.org/api-guide/compute/microversions.html#client-interaction21:00
spbarbierimelwitt: Yes! Thanks. Adding that header works. I guess now I can match the root_device_name against all of the attached volumes to find a match. Does that seem reasonable?21:04
*** amodi_ has joined #openstack-nova21:04
*** amodi_ is now known as amodi21:04
melwittspbarbieri: I think so, based on what mriedem said earlier21:06
spbarbierimelwitt: Thank you for the help.21:07
melwittnp, good luck21:07
*** priteau has joined #openstack-nova21:07
*** eharney has quit IRC21:07
*** xek_ has quit IRC21:11
*** dustinc|afk is now known as dustinc21:21
*** BjoernT has quit IRC21:21
*** spbarbieri has quit IRC21:22
*** BjoernT has joined #openstack-nova21:23
*** cdent has joined #openstack-nova21:26
*** igordc has quit IRC21:31
*** cfriesen has joined #openstack-nova21:35
*** bryan_stephenson has quit IRC21:38
*** itlinux has quit IRC21:40
*** whoami-rajat has quit IRC21:52
*** diablo_rojo has quit IRC21:57
openstackgerritmelanie witt proposed openstack/nova master: Add a prelude release note for the 19.0.0 Stein GA  https://review.openstack.org/64441221:58
efriedmelwitt: it's like VOIP in the '90s.22:05
efriedor, you know, skype today.22:05
melwitthaha, yeah22:05
*** pcaruana has quit IRC22:08
*** mvkr has joined #openstack-nova22:09
*** itlinux has joined #openstack-nova22:16
*** rcernin has joined #openstack-nova22:16
mriedemmelwitt: efried: cdent: dansmith: also dumped comments in the prelude https://review.openstack.org/#/c/644412/ about vgpu22:20
mriedemi'd either remove that or really dumb it down22:20
melwittmriedem: thanks22:21
efriedmriedem: The part I was concerned about:22:21
efriedadmins will sometimes list resource providers22:21
mriedemthe vcenter driver also supports live migration, that's a long-standing thing that might be worth mentioning22:21
efriedNow they're gonna see two instead of one for some hosts22:21
efriedthat's a user-facing manifestation of the nrp-for-vgpus thing.22:22
efriedthat's the only reason I think it's worth mentioning22:22
melwittmriedem: ack22:22
efriedotherwise I agree there would be no reason to talk about it.22:22
efried"We did this thing, so don't be surprised if you see two resource providers for a libvirt host with VGPUs."22:22
melwittI see, yeah22:22
mriedemthere is an upgrade release note for it right? so as long as we can really distill the prelude comment on that to something short and sweet22:23
efriedsorry I've been entirely ineffectual phrasing that :(  I've been trying to nail down the zillion UT failures that happen when you change how ksa is mocked. Different headspace.22:24
melwittthere is an upgrade note, but it doesn't really spell out what an admin would see as a change when they list RPs22:24
mriedem"Upon restarting nova-compute services using the libvirt driver which expose VGPU inventory, the inventory will be moved from the root compute node resource provider to a child resource provider. See the upgrade notes for details."22:24
efriedwfm22:24
melwittyeah, that sounds good22:24
mriedemhow about, ""Upon restarting nova-compute services using the libvirt driver which expose VGPU inventory, the inventory will be moved from the root compute node resource provider to a child resource provider. As a result, when listing resource providers, you may see two for the same compute node where there was one before. See the upgrade notes for details."22:25
efriedeven better22:25
melwittthumbs up22:25
*** itlinux has quit IRC22:27
openstackgerritAdam Spiers proposed openstack/nova master: Move libvirt calculation of machine type to utils.py  https://review.openstack.org/64455422:29
*** diablo_rojo has joined #openstack-nova22:30
*** slaweq has quit IRC22:32
*** wolverineav has quit IRC22:32
*** wolverineav has joined #openstack-nova22:33
openstackgerritMatt Riedemann proposed openstack/nova master: Address old TODO in claim_resources_on_destination  https://review.openstack.org/64459622:34
openstackgerritmelanie witt proposed openstack/nova master: Add a prelude release note for the 19.0.0 Stein GA  https://review.openstack.org/64441222:40
*** wolverineav has quit IRC22:40
*** wolverineav has joined #openstack-nova22:41
*** igordc has joined #openstack-nova22:42
*** wolverineav has quit IRC22:45
*** mikal has joined #openstack-nova22:47
*** ttsiouts has quit IRC22:51
openstackgerritmelanie witt proposed openstack/nova master: Add known issue for minimum bandwidth resource leak  https://review.openstack.org/64469422:53
*** priteau has quit IRC22:54
melwittmriedem: gibi recommended the above is not an RC blocker, but I thought it might help to add a known issue reno about it ^22:55
*** tkajinam has joined #openstack-nova22:57
*** wolverineav has joined #openstack-nova23:00
*** marst has quit IRC23:00
openstackgerritEric Fried proposed openstack/nova master: WIP/PoC: Use openstacksdk for placement  https://review.openstack.org/64366423:04
openstackgerritEric Fried proposed openstack/nova master: WIP/PoC: Use SDK instead of ironicclient for node.get  https://review.openstack.org/64289923:04
efrieddustinc: Warning: update here ^23:04
dustincthanks, I'll check it23:04
efriedyou will need to refetch and put your changes onto the new commit23:04
dustincwas just working on sdk_wrapper.py23:04
efriedeasiest way if you haven't already committed locally would be to stash, review -d, and restore23:04
efrieddustinc: But we don't need sdk_wrapper.py23:05
efrieddo we?23:05
dustincI thought we do...maybe we need to sync up on CONF tomorrow...I thought we needed to read everything and pass it to the SDK?23:06
efrieddustinc: Oh, that's done already :)23:06
dustincok, I will stash my work and check yours out then I am going offline shortly23:07
dustinclet's sync back up tomorrow23:07
efrieddustinc: See the predecessor patch at https://review.openstack.org/#/c/643664/5/nova/utils.py@123923:07
*** mriedem is now known as mriedem_away23:07
*** mchlumsky has quit IRC23:08
efrieddustinc: So the only change needed to have ironic make use of that was here: https://review.openstack.org/#/c/642899/16/nova/virt/ironic/driver.py@18823:08
efrieddustinc: And tbc, this works, which you can tell by looking at the CI results, if you know what you're looking for:23:08
efriedThe job called ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-tinyipa only succeeds if ^ is copacetic23:08
efriedHere's the last run (before the latest rebase): http://logs.openstack.org/99/642899/15/check/ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-tinyipa/c032d49/23:09
efriedhttp://logs.openstack.org/99/642899/15/check/ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-tinyipa/c032d49/testr_results.html.gz23:09
efriedThe other red stuff in the CI report is the unit and functional tests - for those, it's the actual tests that need to be fixed, not the code.23:09
*** tesseract has joined #openstack-nova23:09
efriedand most of the test fixage needs to happen in the predecessor patch - which is what I've been working on.23:09
efriedmade a little progress today, but definitely didn't finish.23:10
efrieda couple of serious mysteries in there still.23:10
*** tesseract has quit IRC23:10
*** alex_xu has quit IRC23:14
*** yaawang has quit IRC23:17
*** yaawang has joined #openstack-nova23:18
*** luksky has quit IRC23:21
*** hongbin has quit IRC23:25
*** mikal has quit IRC23:26
*** mlavalle has quit IRC23:36
*** diablo_rojo has quit IRC23:46
*** penick has joined #openstack-nova23:56
*** diablo_rojo has joined #openstack-nova23:56

Generated by irclog2html.py 2.15.3 by Marius Gedminas - find it at mg.pov.lt!