<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <br>
    <div class="moz-cite-prefix">On 06/13/2014 08:03 AM, Day, Phil
      wrote:<br>
    </div>
    <blockquote
cite="mid:BD26CCD58723F74AA8E6BCB31052A1F007125406@G6W2490.americas.hpqcorp.net"
      type="cite">
      <meta http-equiv="Content-Type" content="text/html;
        charset=ISO-8859-1">
      <meta name="Generator" content="Microsoft Word 15 (filtered
        medium)">
      <style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0cm;
        margin-bottom:.0001pt;
        font-size:12.0pt;
        font-family:"Times New Roman","serif";}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:blue;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:purple;
        text-decoration:underline;}
span.hoenzb
        {mso-style-name:hoenzb;}
span.EmailStyle18
        {mso-style-type:personal-reply;
        font-family:"Calibri","sans-serif";
        color:#1F497D;}
.MsoChpDefault
        {mso-style-type:export-only;
        font-family:"Calibri","sans-serif";}
@page WordSection1
        {size:612.0pt 792.0pt;
        margin:72.0pt 72.0pt 72.0pt 72.0pt;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
      <div class="WordSection1">
        <p class="MsoNormal">>Theoretically impossible to reduce disk
          unless you have some really nasty guest additions.<o:p></o:p></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D">That’s
            what I thought – but many of the drivers seem to at least
            partially support it based on the code, hence the question
            on here to find out of that is really supported and works –
            or is just inconsistent error checking across drivers.</span></p>
      </div>
    </blockquote>
    <br>
    My grumpy dev answer is that what works is not resizing down.  I'm
    familiar with the xen driver resize operation and will say that it
    does work when the guest filesystem and partition sizes are
    accommodating, but there's no good way to know whether or not it
    will succeed without actually trying it.  So when it fails it's
    after someone was waiting on a resize that seemed like it was
    working and then suddenly didn't.<br>
    <br>
    If we want to aim for what's going to work consistently across
    drivers, it's probably going to end up being not resizing disks
    down.<br>
    <br>
    <blockquote
cite="mid:BD26CCD58723F74AA8E6BCB31052A1F007125406@G6W2490.americas.hpqcorp.net"
      type="cite">
      <div class="WordSection1">
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p></o:p></span></p>
        <p class="MsoNormal"><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif";color:#1F497D"><o:p> </o:p></span></p>
        <div style="border:none;border-left:solid blue 1.5pt;padding:0cm
          0cm 0cm 4.0pt">
          <div>
            <div style="border:none;border-top:solid #E1E1E1
              1.0pt;padding:3.0pt 0cm 0cm 0cm">
              <p class="MsoNormal"><b><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif"">From:</span></b><span
style="font-size:11.0pt;font-family:"Calibri","sans-serif"">
                  Aryeh Friedman [<a class="moz-txt-link-freetext" href="mailto:aryeh.friedman@gmail.com">mailto:aryeh.friedman@gmail.com</a>]
                  <br>
                  <b>Sent:</b> 13 June 2014 11:12<br>
                  <b>To:</b> OpenStack Development Mailing List (not for
                  usage questions)<br>
                  <b>Subject:</b> Re: [openstack-dev] [nova] Do any
                  hyperviors allow disk reduction as part of resize ?<o:p></o:p></span></p>
            </div>
          </div>
          <p class="MsoNormal"><o:p> </o:p></p>
          <div>
            <p class="MsoNormal">Theoretically impossible to reduce disk
              unless you have some really nasty guest additions.<o:p></o:p></p>
          </div>
          <div>
            <p class="MsoNormal" style="margin-bottom:12.0pt"><o:p> </o:p></p>
            <div>
              <p class="MsoNormal">On Fri, Jun 13, 2014 at 6:02 AM, Day,
                Phil <<a moz-do-not-send="true"
                  href="mailto:philip.day@hp.com" target="_blank">philip.day@hp.com</a>>
                wrote:<o:p></o:p></p>
              <blockquote style="border:none;border-left:solid #CCCCCC
                1.0pt;padding:0cm 0cm 0cm
                6.0pt;margin-left:4.8pt;margin-right:0cm">
                <div>
                  <div>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">Hi
                      Folks,<o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">I
                      was looking at the resize code in libvirt, and it
                      has checks which raise an exception if the target
                      root or ephemeral disks are smaller than the
                      current ones – which seems fair enough I guess
                      (you can’t drop arbitary disk content on resize),
                      except that the  because the check is in the virt
                      driver the effect is to just ignore the request
                      (the instance remains active rather than going to
                      resize-verify).<o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">It
                      made me wonder if there were any hypervisors that
                      actually allow this, and if not wouldn’t it be
                      better to move the check to the API layer so that
                      the request can be failed rather than silently
                      ignored ? <o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">As
                      far as I can see:<o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">baremetal:
                      Doesn’t support resize<o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">hyperv:
                      Checks only for root disk (<a
                        moz-do-not-send="true"
href="https://github.com/openstack/nova/blob/master/nova/virt/hyperv/migrationops.py#L99-L108"
                        target="_blank">https://github.com/openstack/nova/blob/master/nova/virt/hyperv/migrationops.py#L99-L108</a>
                       )<o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">libvirt:  
                        fails for a reduction of either root or
                      ephemeral  (<a moz-do-not-send="true"
href="https://github.com/openstack/nova/blob/master/nova/virt/libvirt/driver.py#L4918-L4923"
                        target="_blank">https://github.com/openstack/nova/blob/master/nova/virt/libvirt/driver.py#L4918-L4923</a>
                      )<o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">vmware:  
                      doesn’t seem to check at all ?<o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">xen:
                      Allows resize down for root but not for ephemeral
                      (<a moz-do-not-send="true"
href="https://github.com/openstack/nova/blob/master/nova/virt/xenapi/vmops.py#L1015-L1032"
                        target="_blank">https://github.com/openstack/nova/blob/master/nova/virt/xenapi/vmops.py#L1015-L1032</a>
                      )<o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"> <o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto">It
                      feels kind of clumsy to have such a wide variation
                      of behavior across the drivers, and to have the
                      check performed only in the driver ?<o:p></o:p></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span
                        style="color:#888888"> <o:p></o:p></span></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span
                        style="color:#888888">Phil<o:p></o:p></span></p>
                    <p class="MsoNormal"
                      style="mso-margin-top-alt:auto;mso-margin-bottom-alt:auto"><span
                        style="color:#888888"> <o:p></o:p></span></p>
                  </div>
                </div>
                <p class="MsoNormal" style="margin-bottom:12.0pt"><br>
                  _______________________________________________<br>
                  OpenStack-dev mailing list<br>
                  <a moz-do-not-send="true"
                    href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
                  <a moz-do-not-send="true"
                    href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev"
                    target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><o:p></o:p></p>
              </blockquote>
            </div>
            <p class="MsoNormal"><br>
              <br clear="all">
              <br>
              -- <o:p></o:p></p>
            <div>
              <p class="MsoNormal">Aryeh M. Friedman, Lead Developer, <a
                  moz-do-not-send="true"
                  href="http://www.PetiteCloud.org" target="_blank">
                  http://www.PetiteCloud.org</a><o:p></o:p></p>
            </div>
          </div>
        </div>
      </div>
      <br>
      <fieldset class="mimeAttachmentHeader"></fieldset>
      <br>
      <pre wrap="">_______________________________________________
OpenStack-dev mailing list
<a class="moz-txt-link-abbreviated" href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a>
<a class="moz-txt-link-freetext" href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a>
</pre>
    </blockquote>
    <br>
  </body>
</html>