[libvirt] [PATCH libvirt-site v2] Add information about libvirt-php new location [was Change PHP binding link to new one hosted on libvirt.org]
by Michal Novotny
Signed-off-by: Michal Novotny <minovotn(a)redhat.com>
---
docs/bindings.html.in | 8 +++---
docs/php.html.in | 57 ++----------------------------------------------
2 files changed, 7 insertions(+), 58 deletions(-)
diff --git a/docs/bindings.html.in b/docs/bindings.html.in
index 87d894d..2d936a0 100644
--- a/docs/bindings.html.in
+++ b/docs/bindings.html.in
@@ -28,16 +28,16 @@
<li>
<p>
<strong>PHP</strong>: Radek Hladik started developing
- <a href="http://phplibvirt.cybersales.cz/">PHP bindings</a> in 2010.
+ <a href="http://libvirt.org/php">PHP bindings</a> in 2010.
</p>
<p>
- In February 2011 the binding development has been moved to the
- <a href="http://libvirt.org/git/?p=libvirt-php.git;a=summary">libvirt.org as libvirt-php project</a>.
+ In February 2011 the binding development has been moved to the libvirt.org website as
+ libvirt-php project.
</p>
<p>
The project is now maintained by Michal Novotny and it's heavily based
on Radek's version. For more information including the information on posting
- the patches you to libvirt-php please refer to <a href="php.html">PHP binding page</a>.
+ the patches you to libvirt-php please refer to <a href="http://libvirt.org/php">PHP binding</a>.
</p>
</li>
<li>
diff --git a/docs/php.html.in b/docs/php.html.in
index ea4f76a..5283e67 100644
--- a/docs/php.html.in
+++ b/docs/php.html.in
@@ -24,60 +24,9 @@ It can also be browsed at
</pre>
<p></p>
-<h2>Building</h2>
-<p>The code is using autotools to generate the files necessary for compilation. The preferred way of building is
- to run autogen.sh to generate configure script and then go on with the standard linux make commands, i.e.</p>
-
-<pre>
-$ cd libvirt-php
-$ ./autogen.sh
-$ make
-</pre>
-
-
-<h2>Enabling the module in PHP</h2>
-<p>Before you start using the module you have to install the module first. The module
-php_libvirt.so is being generated when you compile it. This is necessary to be loaded
-in the extensions sections of php.ini file for PHP version older than PHP-5.</p>
-<p>
-Starting with PHP-5 you can create a file called libvirt.ini in /etc/php.d having just
-one line <code>extension=php_libvirt.so</code> to enable the extension. Of course, you
-need to have this module copied in the directory with the rest of your PHP modules to
-make PHP find the module for you.</p>
-<p>
-If you're using PHP as a module (mod_php5.so) in the Apache webserver you need to
-restart your Apache to trigger configuration reload for PHP.
-</p>
-<p>
-If you're not sure that you have everything set up right and you don't want to restart
-your Apache webserver before you're sure everything will be working fine you could try
-running the test using cli-based PHP interpreter. There are some example scripts coming
-along the source codes in the <code>example</code> subdirectory so you can try to run
-php on the index.php script to check whether it's working fine to establish connection or not.
-</p>
-<p>
-When you're having some issues with the connection make sure the apache user is having
-access to libvirt. For more information please see <a href="auth.html">Libvirt access control</a> page.
-</p>
-<h2>Contribution</h2>
-<p>
-If you would like to contribute to the libvirt-php project you could write patches for it but please
-make sure you're following the procedure below:
-
-<ol>
- <li>Sign up to libvirt list if you're not on it yet (libvir-list(a)redhat.com)</li>
- <li>Clone the repository from libvirt.org site using:
- <pre>git clone git://libvirt.org/libvirt-php</pre>
- </li>
- <li>Set your git username and e-mail and also set the subject prefix in the project's repository using:
- <pre>git config --local format.subjectprefix "libvirt-php"</pre>
- </li>
- <li>Create the patch in the form of the commits and include also information about usage (example source codes maybe) and testing</li>
- <li>Format it using <code>git format-patch -X</code> where X is the number of patch parts to be posted, for multipart patch (X is greater than 1) please use also numbering (-n) option and include the cover-letter (--cover-letter).</li>
- <li>Send to libvir-list(a)redhat.com using the <code>git send-email <files> --to libvir-list(a)redhat.com</code> command where <files> can be <i>000*</i> to send all the patches formatted by git format-patch since git format-patch names the files starting with the 4 digit numbers.</li>
-</ol>
-
-When you send the patch you're patch will be reviewed and later committed to the libvirt-php repository. You'll be contacted in case some flaws are found during the review.
+<h2>Project pages</h2>
+<p>Since February 2011 the project have it's own pages hosted at libvirt.org. For more information on the project
+ please refer to <a href="http://libvirt.org/php">http://libvirt.org/php</a>.
</p>
--
1.7.3.2
13 years, 10 months
Re: [libvirt] [PATCH] Basic support for VDE networking
by LiuCougar
On 12/01/2011, at 11:29 PM, Daniel P. Berrange wrote:
> On Tue, Jan 11, 2011 at 04:12:57PM +0100, Renzo Davoli wrote:
>> I have seen several messages asking for VDE networking support.
>> There is an item also in your todo web page.
>> http://libvirt.org/todo.html
>> I have developed a patch to provide a basic support for VDE.
>> It defines and manages the syntax:
>>
>> <domain ....>
>> <device>
>> <interface type='vde'>
>> ...
>> <switch path='/tmp/vde.ctl'/>
>> </interface>
>> </device>
>> </domain>
>>
>> the switch tag can be omitted: vde uses the default switch.
>> I have tested the qemu/kvm support.
>> user-mode linux support is included but not tested yet.
>> libvirt vde support for virtualbox has not been coded yet (virtualbox
>> itself supports vde).
...
> eg, so you'd be able to create/delete/manage VDE daemon instances
> using the 'virsh net-XXX' command set. The guest domains would be
> connected to VDE using the existing <interface type='network'>
> syntax, and not expose any 'vde' syntax in the guest XML directly.
> I think letting apps manage VDE daemon instances via the libvirt
> APi would make this functionality much more friendly & useful
The patch as it's submitted in this thread is very useful for all
users of qemu/kvm with VDE: it makes it possible for these users to
directly migrated to libvirt to manage VMs without too much hassle.
If it can be managed automatically by libvirt, that would be a plus,
but even then, I think it would be good to still support exposing VDE
directly in the XML so users can manually handle VDE configuration if
they choose to do so.
Is it possible to merge this patch into libvirt so VDE users can
benefit from libvirt?
thanks,
liucougar
13 years, 10 months
[libvirt] [PATCH] build: distribute 'make syntax-check' tweaks
by Eric Blake
* Makefile.am (EXTRA_DIST): Distribute cfg.mk.
---
I noticed that the 0.8.7 tarball lacks cfg.mk, so running 'make
syntax-check' on that tarball is bound to have problems (without that
file, you don't exempt tests in gnulib's maint.mk that libvirt is not
interested in, and you miss out on lots of other tests that are
libvirt-specific).
Tested with 'make distcheck', then inspecting the resulting tarball.
I almost pushed this under a trivial rule, but restrained myself to
wait for a proper review. :)
Makefile.am | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
diff --git a/Makefile.am b/Makefile.am
index 597ec61..882e676 100644
--- a/Makefile.am
+++ b/Makefile.am
@@ -51,6 +51,7 @@ EXTRA_DIST = \
autobuild.sh \
Makefile.nonreentrant \
autogen.sh \
+ cfg.mk \
examples/domain-events/events-python \
$(syntax_check_exceptions) \
$(XML_EXAMPLES)
--
1.7.3.5
13 years, 10 months
[libvirt] [PATCH] maint: whitespace cleanup
by Eric Blake
* cfg.mk (sc_TAB_in_indentation): Check more files.
* .dir-locals.el (html-mode): Let emacs help out.
* docs/internals/command.html.in: Fix offenders.
* docs/formatdomain.html.in: Likewise.
* docs/internals.html.in: Likewise.
Reported by Jiri Denemark.
---
Here's the git diff -b output; actual patch below the diffstat.
diff --git c/.dir-locals.el w/.dir-locals.el
index 7c483d2..f24ec61 100644
--- c/.dir-locals.el
+++ w/.dir-locals.el
@@ -5,4 +5,7 @@
(c-indent-level . 4)
(c-basic-offset . 4)
))
+ (html-mode . (
+ (indent-tabs-mode . nil)
+ ))
)
diff --git c/cfg.mk w/cfg.mk
index 7664bdf..120f452 100644
--- c/cfg.mk
+++ w/cfg.mk
@@ -322,13 +322,13 @@ sc_prohibit_ctype_h:
halt="don't use ctype.h; instead, use c-ctype.h" \
$(_sc_search_regexp)
-# Ensure that no C source file or rng schema uses TABs for
+# Ensure that no C source file, docs, or rng schema uses TABs for
# indentation. Also match *.h.in files, to get libvirt.h.in. Exclude
# files in gnulib, since they're imported.
sc_TAB_in_indentation:
@prohibit='^ * ' \
- in_vc_files='(\.(rng|[ch](\.in)?)|(daemon|tools)/.*\.in)$$' \
- halt='use spaces, not TAB, for indentation in C, sh, and RNG schemas' \
+ in_vc_files='(\.(rng|[ch](\.in)?|html.in)|(daemon|tools)/.*\.in)$$' \
+ halt='use leading spaces, not TAB, in C, sh, html, and RNG schemas' \
$(_sc_search_regexp)
ctype_re = isalnum|isalpha|isascii|isblank|iscntrl|isdigit|isgraph|islower\
.dir-locals.el | 3 +
cfg.mk | 6 +-
docs/formatdomain.html.in | 224 ++++++++++++++++++++--------------------
docs/internals.html.in | 4 +-
docs/internals/command.html.in | 32 +++---
5 files changed, 136 insertions(+), 133 deletions(-)
diff --git a/.dir-locals.el b/.dir-locals.el
index 7c483d2..f24ec61 100644
--- a/.dir-locals.el
+++ b/.dir-locals.el
@@ -5,4 +5,7 @@
(c-indent-level . 4)
(c-basic-offset . 4)
))
+ (html-mode . (
+ (indent-tabs-mode . nil)
+ ))
)
diff --git a/cfg.mk b/cfg.mk
index 7664bdf..120f452 100644
--- a/cfg.mk
+++ b/cfg.mk
@@ -322,13 +322,13 @@ sc_prohibit_ctype_h:
halt="don't use ctype.h; instead, use c-ctype.h" \
$(_sc_search_regexp)
-# Ensure that no C source file or rng schema uses TABs for
+# Ensure that no C source file, docs, or rng schema uses TABs for
# indentation. Also match *.h.in files, to get libvirt.h.in. Exclude
# files in gnulib, since they're imported.
sc_TAB_in_indentation:
@prohibit='^ * ' \
- in_vc_files='(\.(rng|[ch](\.in)?)|(daemon|tools)/.*\.in)$$' \
- halt='use spaces, not TAB, for indentation in C, sh, and RNG schemas' \
+ in_vc_files='(\.(rng|[ch](\.in)?|html.in)|(daemon|tools)/.*\.in)$$' \
+ halt='use leading spaces, not TAB, in C, sh, html, and RNG schemas' \
$(_sc_search_regexp)
ctype_re = isalnum|isalpha|isascii|isblank|iscntrl|isdigit|isgraph|islower\
diff --git a/docs/formatdomain.html.in b/docs/formatdomain.html.in
index 43c78fc..b048bb5 100644
--- a/docs/formatdomain.html.in
+++ b/docs/formatdomain.html.in
@@ -304,20 +304,20 @@
omitted, it defaults to the OS provided defaults.</dd>
<dt><code>hard_limit</code></dt>
<dd> The optional <code>hard_limit</code> element is the maximum memory
- the guest can use. The units for this value are kilobytes (i.e. blocks
- of 1024 bytes)</dd>
+ the guest can use. The units for this value are kilobytes (i.e. blocks
+ of 1024 bytes)</dd>
<dt><code>soft_limit</code></dt>
<dd> The optional <code>soft_limit</code> element is the memory limit to
- enforce during memory contention. The units for this value are
- kilobytes (i.e. blocks of 1024 bytes)</dd>
+ enforce during memory contention. The units for this value are
+ kilobytes (i.e. blocks of 1024 bytes)</dd>
<dt><code>swap_hard_limit</code></dt>
<dd> The optional <code>swap_hard_limit</code> element is the maximum
- swap the guest can use. The units for this value are kilobytes
- (i.e. blocks of 1024 bytes)</dd>
+ swap the guest can use. The units for this value are kilobytes
+ (i.e. blocks of 1024 bytes)</dd>
<dt><code>min_guarantee</code></dt>
<dd> The optional <code>min_guarantee</code> element is the guaranteed
- minimum memory allocation for the guest. The units for this value are
- kilobytes (i.e. blocks of 1024 bytes)</dd>
+ minimum memory allocation for the guest. The units for this value are
+ kilobytes (i.e. blocks of 1024 bytes)</dd>
<dt><code>vcpu</code></dt>
<dd>The content of this element defines the maximum number of virtual
CPUs allocated for the guest OS, which must be between 1 and
@@ -387,8 +387,8 @@
match the specification.</dd>
</dl>
- <span class="since">Since 0.8.5</span> the <code>match</code>
- attribute can be omitted and will default to <code>exact</code>.
+ <span class="since">Since 0.8.5</span> the <code>match</code>
+ attribute can be omitted and will default to <code>exact</code>.
</dd>
<dt><code>model</code></dt>
@@ -436,8 +436,8 @@
CPU.</dd>
</dl>
- <span class="since">Since 0.8.5</span> the <code>policy</code>
- attribute can be omitted and will default to <code>require</code>.
+ <span class="since">Since 0.8.5</span> the <code>policy</code>
+ attribute can be omitted and will default to <code>require</code>.
</dd>
</dl>
@@ -566,101 +566,101 @@
<dl>
<dt><code>clock</code></dt>
<dd>
- <p>The <code>offset</code> attribute takes four possible
- values, allowing fine grained control over how the guest
- clock is synchronized to the host. NB, not all hypervisors
- support all modes.</p>
- <dl>
- <dt><code>utc</code></dt>
- <dd>
- The guest clock will always be synchronized to UTC when
- booted</dd>
- <dt><code>localtime</code></dt>
- <dd>
- The guest clock will be synchronized to the host's configured
- timezone when booted, if any.
- </dd>
- <dt><code>timezone</code></dt>
- <dd>
- The guest clock will be synchronized to the requested timezone
- using the <code>timezone</code> attribute.
- <span class="since">Since 0.7.7</span>
- </dd>
- <dt><code>variable</code></dt>
- <dd>
- The guest clock will have an arbitrary offset applied
- relative to UTC. The delta relative to UTC is specified
- in seconds, using the <code>adjustment</code> attribute.
- The guest is free to adjust the RTC over time an expect
- that it will be honoured at next reboot. This is in
- contrast to 'utc' mode, where the RTC adjustments are
- lost at each reboot. <span class="since">Since 0.7.7</span>
- </dd>
- </dl>
- <p>
- A <code>clock</code> may have zero or more
- <code>timer</code>sub-elements. <span class="since">Since
- 0.8.0</span>
- </p>
+ <p>The <code>offset</code> attribute takes four possible
+ values, allowing fine grained control over how the guest
+ clock is synchronized to the host. NB, not all hypervisors
+ support all modes.</p>
+ <dl>
+ <dt><code>utc</code></dt>
+ <dd>
+ The guest clock will always be synchronized to UTC when
+ booted</dd>
+ <dt><code>localtime</code></dt>
+ <dd>
+ The guest clock will be synchronized to the host's configured
+ timezone when booted, if any.
+ </dd>
+ <dt><code>timezone</code></dt>
+ <dd>
+ The guest clock will be synchronized to the requested timezone
+ using the <code>timezone</code> attribute.
+ <span class="since">Since 0.7.7</span>
+ </dd>
+ <dt><code>variable</code></dt>
+ <dd>
+ The guest clock will have an arbitrary offset applied
+ relative to UTC. The delta relative to UTC is specified
+ in seconds, using the <code>adjustment</code> attribute.
+ The guest is free to adjust the RTC over time an expect
+ that it will be honoured at next reboot. This is in
+ contrast to 'utc' mode, where the RTC adjustments are
+ lost at each reboot. <span class="since">Since 0.7.7</span>
+ </dd>
+ </dl>
+ <p>
+ A <code>clock</code> may have zero or more
+ <code>timer</code>sub-elements. <span class="since">Since
+ 0.8.0</span>
+ </p>
</dd>
<dt><code>timer</code></dt>
<dd>
- <p>
- Each timer element requires a <code>name</code> attribute,
- and has other optional attributes that depend on
- the <code>name</code> specified. Various hypervisors
- support different combinations of attributes.
- </p>
- <dl>
- <dt><code>name</code></dt>
- <dd>
- The <code>name</code> attribute selects which timer is
- being modified, and can be one of "platform", "pit",
- "rtc", "hpet", or "tsc".
- </dd>
- <dt><code>track</code></dt>
- <dd>
- The <code>track</code> attribute specifies what the timer
- tracks, and can be "boot", "guest", or "wall".
- Only valid for <code>name="rtc"</code>
- or <code>name="platform"</code>.
- </dd>
- <dt><code>tickpolicy</code></dt>
- <dd>
- The <code>tickpolicy</code> attribute determines how
- missed ticks in the guest are handled, and can be "delay",
- "catchup", "merge", or "discard". If the policy is
- "catchup", there can be further details in
- the <code>catchup</code> sub-element.
- <dl>
- <dt><code>catchup</code></dt>
- <dd>
- The <code>catchup</code> element has three optional
- attributes, each a positive integer. The attributes
- are <code>threshold</code>, <code>slew</code>,
- and <code>limit</code>.
- </dd>
- </dl>
- </dd>
- <dt><code>frequency</code></dt>
- <dd>
- The <code>frequency</code> attribute is an unsigned
- integer specifying the frequency at
- which <code>name="tsc"</code> runs.
- </dd>
- <dt><code>mode</code></dt>
- <dd>
- The <code>mode</code> attribute controls how
- the <code>name="tsc"</code> timer is managed, and can be
- "auto", "native", "emulate", "paravirt", or "smpsafe".
- Other timers are always emulated.
- </dd>
- <dt><code>present</code></dt>
- <dd>
- The <code>present</code> attribute can be "yes" or "no" to
- specify whether a particular timer is available to the guest.
- </dd>
- </dl>
+ <p>
+ Each timer element requires a <code>name</code> attribute,
+ and has other optional attributes that depend on
+ the <code>name</code> specified. Various hypervisors
+ support different combinations of attributes.
+ </p>
+ <dl>
+ <dt><code>name</code></dt>
+ <dd>
+ The <code>name</code> attribute selects which timer is
+ being modified, and can be one of "platform", "pit",
+ "rtc", "hpet", or "tsc".
+ </dd>
+ <dt><code>track</code></dt>
+ <dd>
+ The <code>track</code> attribute specifies what the timer
+ tracks, and can be "boot", "guest", or "wall".
+ Only valid for <code>name="rtc"</code>
+ or <code>name="platform"</code>.
+ </dd>
+ <dt><code>tickpolicy</code></dt>
+ <dd>
+ The <code>tickpolicy</code> attribute determines how
+ missed ticks in the guest are handled, and can be "delay",
+ "catchup", "merge", or "discard". If the policy is
+ "catchup", there can be further details in
+ the <code>catchup</code> sub-element.
+ <dl>
+ <dt><code>catchup</code></dt>
+ <dd>
+ The <code>catchup</code> element has three optional
+ attributes, each a positive integer. The attributes
+ are <code>threshold</code>, <code>slew</code>,
+ and <code>limit</code>.
+ </dd>
+ </dl>
+ </dd>
+ <dt><code>frequency</code></dt>
+ <dd>
+ The <code>frequency</code> attribute is an unsigned
+ integer specifying the frequency at
+ which <code>name="tsc"</code> runs.
+ </dd>
+ <dt><code>mode</code></dt>
+ <dd>
+ The <code>mode</code> attribute controls how
+ the <code>name="tsc"</code> timer is managed, and can be
+ "auto", "native", "emulate", "paravirt", or "smpsafe".
+ Other timers are always emulated.
+ </dd>
+ <dt><code>present</code></dt>
+ <dd>
+ The <code>present</code> attribute can be "yes" or "no" to
+ specify whether a particular timer is available to the guest.
+ </dd>
+ </dl>
</dd>
</dl>
@@ -1490,7 +1490,7 @@ qemu-kvm -net nic,model=? /dev/null
</dd>
<dt><code>"spice"</code></dt>
<dd>
- <p>
+ <p>
Starts a SPICE server. The <code>port</code> attribute specifies the TCP
port number (with -1 as legacy syntax indicating that it should be
auto-allocated), while <code>tlsPort</code> gives an alternative
@@ -1502,8 +1502,8 @@ qemu-kvm -net nic,model=? /dev/null
to use. It is possible to set a limit on the validity of the password
be giving an timestamp <code>passwdValidTo='2010-04-09T15:51:00'</code>
assumed to be in UTC. NB, this may not be supported by all hypervisors.
- </p>
- <p>
+ </p>
+ <p>
When SPICE has both a normal and TLS secured TCP port configured, it
can be desirable to restrict what channels can be run on each port.
This is achieved by adding one or more <channel> elements inside
@@ -1511,8 +1511,8 @@ qemu-kvm -net nic,model=? /dev/null
<code>main</code>, <code>display</code>, <code>inputs</code>,
<code>cursor</code>, <code>playback</code>, <code>record</code>;
and <span class="since">since 0.8.8</span>: <code>smartcard</code>.
- </p>
- <pre>
+ </p>
+ <pre>
<graphics type='spice' port='-1' tlsPort='-1' autoport='yes'>
<channel name='main' mode='secure'/>
<channel name='record' mode='insecure'/>
@@ -1569,7 +1569,7 @@ qemu-kvm -net nic,model=? /dev/null
<dd>
The <code>model</code> element has a mandatory <code>type</code>
attribute which takes the value "vga", "cirrus", "vmvga", "qxl",
- "xen" or "vbox", depending on the hypervisor features available.
+ "xen" or "vbox", depending on the hypervisor features available.
You can also provide the amount of video memory in kilobytes using
<code>vram</code> and the number of screen with <code>heads</code>.
</dd>
@@ -2167,8 +2167,8 @@ qemu-kvm -net nic,model=? /dev/null
<dd>
<p>
The required <code>model</code> attribute specifies what type
- of balloon device is provided. Valid values are specific to
- the virtualization platform
+ of balloon device is provided. Valid values are specific to
+ the virtualization platform
</p>
<ul>
<li>'virtio' — default with QEMU/KVM</li>
diff --git a/docs/internals.html.in b/docs/internals.html.in
index dc88eab..6fa2de3 100644
--- a/docs/internals.html.in
+++ b/docs/internals.html.in
@@ -10,10 +10,10 @@
<ul>
<li>Introduction to basic rules and guidelines for <a href="hacking.html">hacking<a>
- on libvirt code</li>
+ on libvirt code</li>
<li>Guide to adding <a href="api_extension.html">public APIs<a></li>
<li>Approach for <a href="internals/command.html">spawning commands</a> from
- libvirt driver code</li>
+ libvirt driver code</li>
</ul>
</body>
diff --git a/docs/internals/command.html.in b/docs/internals/command.html.in
index 95d2b81..27dcf9c 100644
--- a/docs/internals/command.html.in
+++ b/docs/internals/command.html.in
@@ -20,27 +20,27 @@
<ul>
<li><code>fork+exec</code>: The lowest & most flexible
- level, but very hard to use correctly / safely. It
- is easy to leak file descriptors, have unexpected
- signal handler behaviour and not handle edge cases.
- Furthermore, it is not portable to mingw.
- </li>
+ level, but very hard to use correctly / safely. It
+ is easy to leak file descriptors, have unexpected
+ signal handler behaviour and not handle edge cases.
+ Furthermore, it is not portable to mingw.
+ </li>
<li><code>system</code>: Convenient if you don't care
- about capturing command output, but has the serious
- downside that the command string is interpreted by
- the shell. This makes it very dangerous to use, because
- improperly validated user input can lead to exploits
- via shell meta characters.
+ about capturing command output, but has the serious
+ downside that the command string is interpreted by
+ the shell. This makes it very dangerous to use, because
+ improperly validated user input can lead to exploits
+ via shell meta characters.
</li>
<li><code>popen</code>: Inherits the flaws of
- <code>system</code>, and has no option for bi-directional
- communication.
+ <code>system</code>, and has no option for bi-directional
+ communication.
</li>
<li><code>posix_spawn</code>: A half-way house between
- simplicity of system() and the flexibility of fork+exec.
- It does not allow for a couple of important features
- though, such as running a hook between the fork+exec
- stage, or closing all open file descriptors.</li>
+ simplicity of system() and the flexibility of fork+exec.
+ It does not allow for a couple of important features
+ though, such as running a hook between the fork+exec
+ stage, or closing all open file descriptors.</li>
</ul>
<p>
--
1.7.4
13 years, 10 months
[libvirt] [PATCH libvirt-site v2] Add information about libvirt-php new location [was Change PHP binding link to new one hosted on libvirt.org]
by Michal Novotny
Signed-off-by: Michal Novotny <minovotn(a)redhat.com>
---
docs/bindings.html.in | 8 +++---
docs/php.html.in | 57 ++----------------------------------------------
2 files changed, 7 insertions(+), 58 deletions(-)
diff --git a/docs/bindings.html.in b/docs/bindings.html.in
index 87d894d..2d936a0 100644
--- a/docs/bindings.html.in
+++ b/docs/bindings.html.in
@@ -28,16 +28,16 @@
<li>
<p>
<strong>PHP</strong>: Radek Hladik started developing
- <a href="http://phplibvirt.cybersales.cz/">PHP bindings</a> in 2010.
+ <a href="http://libvirt.org/php">PHP bindings</a> in 2010.
</p>
<p>
- In February 2011 the binding development has been moved to the
- <a href="http://libvirt.org/git/?p=libvirt-php.git;a=summary">libvirt.org as libvirt-php project</a>.
+ In February 2011 the binding development has been moved to the libvirt.org website as
+ libvirt-php project.
</p>
<p>
The project is now maintained by Michal Novotny and it's heavily based
on Radek's version. For more information including the information on posting
- the patches you to libvirt-php please refer to <a href="php.html">PHP binding page</a>.
+ the patches you to libvirt-php please refer to <a href="http://libvirt.org/php">PHP binding</a>.
</p>
</li>
<li>
diff --git a/docs/php.html.in b/docs/php.html.in
index ea4f76a..5283e67 100644
--- a/docs/php.html.in
+++ b/docs/php.html.in
@@ -24,60 +24,9 @@ It can also be browsed at
</pre>
<p></p>
-<h2>Building</h2>
-<p>The code is using autotools to generate the files necessary for compilation. The preferred way of building is
- to run autogen.sh to generate configure script and then go on with the standard linux make commands, i.e.</p>
-
-<pre>
-$ cd libvirt-php
-$ ./autogen.sh
-$ make
-</pre>
-
-
-<h2>Enabling the module in PHP</h2>
-<p>Before you start using the module you have to install the module first. The module
-php_libvirt.so is being generated when you compile it. This is necessary to be loaded
-in the extensions sections of php.ini file for PHP version older than PHP-5.</p>
-<p>
-Starting with PHP-5 you can create a file called libvirt.ini in /etc/php.d having just
-one line <code>extension=php_libvirt.so</code> to enable the extension. Of course, you
-need to have this module copied in the directory with the rest of your PHP modules to
-make PHP find the module for you.</p>
-<p>
-If you're using PHP as a module (mod_php5.so) in the Apache webserver you need to
-restart your Apache to trigger configuration reload for PHP.
-</p>
-<p>
-If you're not sure that you have everything set up right and you don't want to restart
-your Apache webserver before you're sure everything will be working fine you could try
-running the test using cli-based PHP interpreter. There are some example scripts coming
-along the source codes in the <code>example</code> subdirectory so you can try to run
-php on the index.php script to check whether it's working fine to establish connection or not.
-</p>
-<p>
-When you're having some issues with the connection make sure the apache user is having
-access to libvirt. For more information please see <a href="auth.html">Libvirt access control</a> page.
-</p>
-<h2>Contribution</h2>
-<p>
-If you would like to contribute to the libvirt-php project you could write patches for it but please
-make sure you're following the procedure below:
-
-<ol>
- <li>Sign up to libvirt list if you're not on it yet (libvir-list(a)redhat.com)</li>
- <li>Clone the repository from libvirt.org site using:
- <pre>git clone git://libvirt.org/libvirt-php</pre>
- </li>
- <li>Set your git username and e-mail and also set the subject prefix in the project's repository using:
- <pre>git config --local format.subjectprefix "libvirt-php"</pre>
- </li>
- <li>Create the patch in the form of the commits and include also information about usage (example source codes maybe) and testing</li>
- <li>Format it using <code>git format-patch -X</code> where X is the number of patch parts to be posted, for multipart patch (X is greater than 1) please use also numbering (-n) option and include the cover-letter (--cover-letter).</li>
- <li>Send to libvir-list(a)redhat.com using the <code>git send-email <files> --to libvir-list(a)redhat.com</code> command where <files> can be <i>000*</i> to send all the patches formatted by git format-patch since git format-patch names the files starting with the 4 digit numbers.</li>
-</ol>
-
-When you send the patch you're patch will be reviewed and later committed to the libvirt-php repository. You'll be contacted in case some flaws are found during the review.
+<h2>Project pages</h2>
+<p>Since February 2011 the project have it's own pages hosted at libvirt.org. For more information on the project
+ please refer to <a href="http://libvirt.org/php">http://libvirt.org/php</a>.
</p>
--
1.7.3.2
13 years, 10 months
[libvirt] [PATCH libvirt site] Change PHP binding link to new one hosted on libvirt.org
by Michal Novotny
Signed-off-by: Michal Novotny <minovotn(a)redhat.com>
---
docs/bindings.html.in | 8 ++++----
docs/sitemap.html.in | 4 ----
2 files changed, 4 insertions(+), 8 deletions(-)
diff --git a/docs/bindings.html.in b/docs/bindings.html.in
index 87d894d..2d936a0 100644
--- a/docs/bindings.html.in
+++ b/docs/bindings.html.in
@@ -28,16 +28,16 @@
<li>
<p>
<strong>PHP</strong>: Radek Hladik started developing
- <a href="http://phplibvirt.cybersales.cz/">PHP bindings</a> in 2010.
+ <a href="http://libvirt.org/php">PHP bindings</a> in 2010.
</p>
<p>
- In February 2011 the binding development has been moved to the
- <a href="http://libvirt.org/git/?p=libvirt-php.git;a=summary">libvirt.org as libvirt-php project</a>.
+ In February 2011 the binding development has been moved to the libvirt.org website as
+ libvirt-php project.
</p>
<p>
The project is now maintained by Michal Novotny and it's heavily based
on Radek's version. For more information including the information on posting
- the patches you to libvirt-php please refer to <a href="php.html">PHP binding page</a>.
+ the patches you to libvirt-php please refer to <a href="http://libvirt.org/php">PHP binding</a>.
</p>
</li>
<li>
diff --git a/docs/sitemap.html.in b/docs/sitemap.html.in
index ac0af71..c987c49 100644
--- a/docs/sitemap.html.in
+++ b/docs/sitemap.html.in
@@ -266,10 +266,6 @@
<a href="csharp.html">C#</a>
<span>overview of the C# API bindings</span>
</li>
- <li>
- <a href="php.html">PHP</a>
- <span>overview of the PHP API bindings</span>
- </li>
</ul>
</li>
<li>
--
1.7.3.2
13 years, 10 months
Re: [libvirt] [virt-tools-list] difference between blkid of a system and uuid of virtual machine by virt-manager
by Cole Robinson
On 02/08/2011 02:06 PM, Tapas Mishra wrote:
> I want to know what is the difference between the output blkid command
> shows and the uuid which is set by virt-manager
> while creating a guest.
> Suppose in case of a re installation sort of situation I want to do a
> fresh install and restore things from a backup then
> where does this UUID thing comes into picture and what is its role
> with respect to Virtual Machines.
>
>
AFAIU it's just a unique identifier for use with libvirt, though nowadays it
might be passed down to the guest for other purposes. cc-ing libvirt-list
- Cole
13 years, 10 months
[libvirt] [PATCH] Adjust some log levels in udev driver
by Daniel P. Berrange
Most of te VIR_INFO calls in the udev driver are only relevant
to developers so can switch to VIR_DEBUG. Failure to initialize
libpciaccess though is a fatal error
* src/node_device/node_device_udev.c: Adjust log levels
---
src/node_device/node_device_udev.c | 44 ++++++++++++++++++------------------
1 files changed, 22 insertions(+), 22 deletions(-)
diff --git a/src/node_device/node_device_udev.c b/src/node_device/node_device_udev.c
index 93390af..475cbb5 100644
--- a/src/node_device/node_device_udev.c
+++ b/src/node_device/node_device_udev.c
@@ -116,8 +116,8 @@ static int udevGetDeviceProperty(struct udev_device *udev_device,
udev_value = udev_device_get_property_value(udev_device, property_key);
if (udev_value == NULL) {
- VIR_INFO(_("udev reports device '%s' does not have property '%s'"),
- udev_device_get_sysname(udev_device), property_key);
+ VIR_DEBUG("udev reports device '%s' does not have property '%s'",
+ udev_device_get_sysname(udev_device), property_key);
ret = PROPERTY_MISSING;
goto out;
}
@@ -205,8 +205,8 @@ static int udevGetDeviceSysfsAttr(struct udev_device *udev_device,
udev_value = udev_device_get_sysattr_value(udev_device, attr_name);
if (udev_value == NULL) {
- VIR_INFO(_("udev reports device '%s' does not have sysfs attr '%s'"),
- udev_device_get_sysname(udev_device), attr_name);
+ VIR_DEBUG("udev reports device '%s' does not have sysfs attr '%s'",
+ udev_device_get_sysname(udev_device), attr_name);
ret = PROPERTY_MISSING;
goto out;
}
@@ -950,9 +950,9 @@ static int udevKludgeStorageType(virNodeDeviceDefPtr def)
{
int ret = -1;
- VIR_INFO("Could not find definitive storage type for device "
- "with sysfs path '%s', trying to guess it",
- def->sysfs_path);
+ VIR_DEBUG("Could not find definitive storage type for device "
+ "with sysfs path '%s', trying to guess it",
+ def->sysfs_path);
if (STRPREFIX(def->caps->data.storage.block, "/dev/vd")) {
/* virtio disk */
@@ -963,8 +963,8 @@ static int udevKludgeStorageType(virNodeDeviceDefPtr def)
}
if (ret != 0) {
- VIR_INFO("Could not determine storage type for device "
- "with sysfs path '%s'", def->sysfs_path);
+ VIR_DEBUG("Could not determine storage type for device "
+ "with sysfs path '%s'", def->sysfs_path);
} else {
VIR_DEBUG("Found storage type '%s' for device "
"with sysfs path '%s'",
@@ -1062,8 +1062,8 @@ static int udevProcessStorage(struct udev_device *device,
} else if (STREQ(def->caps->data.storage.drive_type, "floppy")) {
ret = udevProcessFloppy(device, def);
} else {
- VIR_INFO("Unsupported storage type '%s'",
- def->caps->data.storage.drive_type);
+ VIR_DEBUG("Unsupported storage type '%s'",
+ def->caps->data.storage.drive_type);
goto out;
}
@@ -1141,9 +1141,9 @@ static int udevGetDeviceType(struct udev_device *device,
goto out;
}
- VIR_INFO("Could not determine device type for device "
- "with sysfs path '%s'",
- udev_device_get_sysname(device));
+ VIR_DEBUG("Could not determine device type for device "
+ "with sysfs path '%s'",
+ udev_device_get_sysname(device));
ret = -1;
out:
@@ -1209,8 +1209,8 @@ static int udevRemoveOneDevice(struct udev_device *device)
dev->def->name, name);
virNodeDeviceObjRemove(&driverState->devs, dev);
} else {
- VIR_INFO("Failed to find device to remove that has udev name '%s'",
- name);
+ VIR_DEBUG("Failed to find device to remove that has udev name '%s'",
+ name);
ret = -1;
}
nodeDeviceUnlock(driverState);
@@ -1237,8 +1237,8 @@ static int udevSetParent(struct udev_device *device,
parent_sysfs_path = udev_device_get_syspath(parent_device);
if (parent_sysfs_path == NULL) {
- VIR_INFO("Could not get syspath for parent of '%s'",
- udev_device_get_syspath(parent_device));
+ VIR_DEBUG("Could not get syspath for parent of '%s'",
+ udev_device_get_syspath(parent_device));
}
dev = virNodeDeviceFindBySysfsPath(&driverState->devs,
@@ -1350,8 +1350,8 @@ static int udevProcessDeviceListEntry(struct udev *udev,
if (device != NULL) {
if (udevAddOneDevice(device) != 0) {
- VIR_INFO("Failed to create node device for udev device '%s'",
- name);
+ VIR_DEBUG("Failed to create node device for udev device '%s'",
+ name);
}
ret = 0;
}
@@ -1598,8 +1598,8 @@ static int udevDeviceMonitorStartup(int privileged ATTRIBUTE_UNUSED)
if ((pciret = pci_system_init()) != 0) {
char ebuf[256];
- VIR_INFO("Failed to initialize libpciaccess: %s",
- virStrerror(pciret, ebuf, sizeof ebuf));
+ VIR_ERROR("Failed to initialize libpciaccess: %s",
+ virStrerror(pciret, ebuf, sizeof ebuf));
ret = -1;
goto out;
}
--
1.7.4
13 years, 10 months
[libvirt] [libvirt-snmp][PATCH] Created .gitignore to ignore generated/compiled files.
by Michal Privoznik
I've forgotten to add .gitignore to let git ignore some garbage.
---
.gitignore | 27 +++++++++++++++++++++++++++
src/.gitignore | 10 ++++++++++
2 files changed, 37 insertions(+), 0 deletions(-)
create mode 100644 .gitignore
create mode 100644 src/.gitignore
diff --git a/.gitignore b/.gitignore
new file mode 100644
index 0000000..f4821fb
--- /dev/null
+++ b/.gitignore
@@ -0,0 +1,27 @@
+#*#
+*.#*#
+*.a
+*.exe
+*.gcda
+*.gcno
+*.gcov
+*.o
+*.orig
+*.rej
+*~
+.git
+.git-module-status
+/Makefile
+/Makefile.in
+/aclocal.m4
+/autom4te.cache/
+/config.h
+/config.h.in
+/config.log
+/config.status
+/configure
+/depcomp
+/install-sh
+/libvirt-snmp.spec
+/missing
+/stamp-h1
diff --git a/src/.gitignore b/src/.gitignore
new file mode 100644
index 0000000..2c8801e
--- /dev/null
+++ b/src/.gitignore
@@ -0,0 +1,10 @@
+Makefile
+Makefile.in
+.deps
+.libs
+*.lo
+*.loT
+*.la
+*.exe
+*.cov
+/libvirtMib_subagent
--
1.7.3.5
13 years, 10 months
[libvirt] [PATCH] Reserve PCI addresses 3 and 4 on qemu-system-ppc
by Niels de Vos
On PPC emulated by recent versions of qemu, PCI-bus 0 already has a
macio connected in slot 3 and OHCI on slot 4.
Reference:
- https://bugzilla.redhat.com/show_bug.cgi?id=667345
Signed-off-by: Niels de Vos <ndevos(a)redhat.com>
---
Imho this patch is relatively ugly. Unfortunately I did not find a better
way of changing the reserved PCI-addresses on a per architecture basis. It
can well be that qemuAssignDevicePCISlots() needs to be updated for other
architectures as well. A more modular/dynamic approach might be more
suitable.
Feel free to suggest an alternative way to solve this. Thanks,
Niels
src/qemu/qemu_command.c | 8 ++++++++
1 files changed, 8 insertions(+), 0 deletions(-)
diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c
index f78ce71..50e3ad7 100644
--- a/src/qemu/qemu_command.c
+++ b/src/qemu/qemu_command.c
@@ -983,6 +983,14 @@ qemuAssignDevicePCISlots(virDomainDefPtr def, qemuDomainPCIAddressSetPtr addrs)
goto error;
}
+ /* qemu-system-ppc has macio on slot 3 and ohci on slot 4 */
+ if (STREQ(def->os.arch, "ppc")) {
+ if (qemuDomainPCIAddressReserveSlot(addrs, 3) < 0)
+ goto error;
+ if (qemuDomainPCIAddressReserveSlot(addrs, 4) < 0)
+ goto error;
+ }
+
/* Network interfaces */
for (i = 0; i < def->nnets ; i++) {
if (def->nets[i]->info.type != VIR_DOMAIN_DEVICE_ADDRESS_TYPE_NONE)
--
1.7.4
13 years, 10 months