[Qemu-devel] [PATCH 09/13] block: add bdrv_aio_copy_backing()

2011-06-14 Thread Stefan Hajnoczi
From: Anthony Liguori aligu...@us.ibm.com Add the bdrv_aio_copy_backing() function to the BlockDriver interface. This function copies unallocated sectors from the backing file and can be used to implement image streaming. Signed-off-by: Anthony Liguori aligu...@us.ibm.com Signed-off-by: Stefan

Re: [Qemu-devel] [PATCH] vga: Fix type of map_addr/end.

2011-06-14 Thread Jan Kiszka
On 2011-06-14 19:44, Richard Henderson wrote: These addresses have been passed through pci_to_cpu_addr, and thus need to be full target_phys_addr_t. Basically correct, but you also need to change the types of lfb_addr/end, no? Signed-off-by: Richard Henderson r...@twiddle.net Cc: Jan

[Qemu-devel] [PATCH 00/13] QED image streaming

2011-06-14 Thread Stefan Hajnoczi
Overview This patch series adds image streaming support for QED image files. Other image formats can also be supported in the future. Image streaming populates the file in the background while the guest is running. This makes it possible to start the guest before its image file has

[Qemu-devel] [PATCH 05/13] qed: make qed_aio_write_alloc() reusable

2011-06-14 Thread Stefan Hajnoczi
Copy-on-read requests will share the allocating write code path. This requires making qed_aio_write_alloc() reusable outside of a write request. This patch ensures that iovec setup is performed in a common place before qed_aio_write_alloc() is called. Signed-off-by: Stefan Hajnoczi

[Qemu-devel] [PATCH 07/13] qed: avoid deadlock on emulated synchronous I/O

2011-06-14 Thread Stefan Hajnoczi
The block layer emulates synchronous bdrv_read()/bdrv_write() for drivers that only provide the asynchronous interfaces. The emulation issues an asynchronous request inside a new async context and waits for that request to complete. If currently outstanding requests complete during this time,

[Qemu-devel] [PATCH 13/13] trace: trace bdrv_aio_readv/writev error paths

2011-06-14 Thread Stefan Hajnoczi
It is useful to understand why an I/O request was failed. Add trace events for the error paths in bdrv_aio_readv() and bdrv_aio_writev(). Signed-off-by: Stefan Hajnoczi stefa...@linux.vnet.ibm.com --- block.c | 24 +++- trace-events |7 +++ 2 files changed, 26

[Qemu-devel] [PATCH 10/13] qmp: add QMP support for stream commands

2011-06-14 Thread Stefan Hajnoczi
From: Anthony Liguori aligu...@us.ibm.com For leaf images with copy-on-read semantics, the stream commands allow the user to populate local blocks by manually streaming them from the backing image. Once all blocks have been streamed, the dependency on the original backing image can be removed.

[Qemu-devel] [PATCH 04/13] qed: extract qed_start_allocating_write()

2011-06-14 Thread Stefan Hajnoczi
Copy-on-read requests are a form of allocating write and will need to be queued like other allocating writes. This patch extracts the request queuing code for allocating writes so that it can be reused for copy-on-read in a later patch. Signed-off-by: Stefan Hajnoczi stefa...@linux.vnet.ibm.com

[Qemu-devel] [PATCH 12/13] qed: intelligent streaming implementation

2011-06-14 Thread Stefan Hajnoczi
From: Anthony Liguori aligu...@us.ibm.com Signed-off-by: Anthony Liguori aligu...@us.ibm.com --- block/qed.c | 248 +++ block/qed.h |3 +- 2 files changed, 234 insertions(+), 17 deletions(-) diff --git a/block/qed.c b/block/qed.c

[Qemu-devel] [PATCH 01/13] qemu-config: }, { - }, { to please checkpatch.pl

2011-06-14 Thread Stefan Hajnoczi
The checkpatch.pl coding style checker complains that there should be a space after the comma in },{. Make it easy for others to change qemu-config.c in the future by complying with the coding style here. A follow-up patch adds new options to qemu-config.c and therefore benefits from this fix.

[Qemu-devel] [PATCH 08/13] qerror: add qerror_from_args() to create qerror objects

2011-06-14 Thread Stefan Hajnoczi
There is no convenient way to create a QError object without reporting it immediately. This patch adds the qerror_from_args() function to make it easy to create an error in qerror_report() style but without reporting it. Signed-off-by: Stefan Hajnoczi stefa...@linux.vnet.ibm.com --- qerror.c |

[Qemu-devel] [PATCH 11/13] block: add -drive stream=on|off

2011-06-14 Thread Stefan Hajnoczi
This patch adds the -drive stream=on|off command-line option: stream=on|off stream is on or off and enables background copying of backing file contents into the image file until the backing file is no longer needed. Signed-off-by: Stefan Hajnoczi stefa...@linux.vnet.ibm.com ---

[Qemu-devel] [PATCH 02/13] block: add -drive copy-on-read=on|off

2011-06-14 Thread Stefan Hajnoczi
This patch adds the -drive copy-on-read=on|off command-line option: copy-on-read=on|off copy-on-read is on or off and enables whether to copy read backing file sectors into the image file. Copy-on-read avoids accessing the same backing file sectors repeatedly and is useful when the

[Qemu-devel] [PATCH 03/13] qed: replace is_write with flags field

2011-06-14 Thread Stefan Hajnoczi
Per-request attributes like read/write are currently implemented as bool fields in the QEDAIOCB struct. This becomes unwiedly as the number of attributes grows. For example, the qed_aio_setup() function would have to take multiple bool arguments and at call sites it would be hard to distinguish

Re: [Qemu-devel] [PATCH] vga: Fix type of map_addr/end.

2011-06-14 Thread Richard Henderson
On 06/14/2011 11:14 AM, Jan Kiszka wrote: On 2011-06-14 19:44, Richard Henderson wrote: These addresses have been passed through pci_to_cpu_addr, and thus need to be full target_phys_addr_t. Basically correct, but you also need to change the types of lfb_addr/end, no? Ah, yes, I see that

Re: [Qemu-devel] [PATCH-v3 2/2] kvm: Fix unused-but-set-variable warning

2011-06-14 Thread Christophe Fergeau
On Sat, Jun 11, 2011 at 02:06:00PM +0100, Stefan Hajnoczi wrote: On Sat, Jun 11, 2011 at 8:46 AM, Jan Kiszka jan.kis...@web.de wrote: Please skip this one. I'll post a patch fixing the issue that this warning revealed (lacking save/restore of FPU OP, IP and DP). Okay, dropped from

Re: [Qemu-devel] [libvirt] [PATCH v2] Add support for fd: protocol

2011-06-14 Thread Corey Bryant
On 06/14/2011 12:13 PM, Eric Blake wrote: On 06/14/2011 07:31 AM, Corey Bryant wrote: - Starting Qemu with a backing file What do you mean by this? Taking a guess: In the case of a qcow2 image with a backing file, does that mean that both the qcow2 image and it's backing file can both

[Qemu-devel] [PATCH, v2] vga: Fix type of lfb/map_addr/end.

2011-06-14 Thread Richard Henderson
These addresses have been passed through pci_to_cpu_addr, and thus need to be full target_phys_addr_t. Signed-off-by: Richard Henderson r...@twiddle.net Cc: Jan Kiszka jan.kis...@siemens.com --- V1-V2: lfb_addr/end also widened to guest address width. hw/vga_int.h | 10 +- 1

[Qemu-devel] [PATCH v5 2/5] guest agent: qemu-ga daemon

2011-06-14 Thread Michael Roth
This is the actual guest daemon, it listens for requests over a virtio-serial/isa-serial/unix socket channel and routes them through to dispatch routines, and writes the results back to the channel in a manner similar to QMP. A shorthand invocation: qemu-ga -d Is equivalent to: qemu-ga -c

[Qemu-devel] [QAPI+QGA 3/3] QEMU Guest Agent (virtagent) v5

2011-06-14 Thread Michael Roth
This is Set 3/3 of the QAPI+QGA patchsets. These patches apply on top of qapi-backport-set2-v3, and can also be obtained from: git://repo.or.cz/qemu/mdroth.git qapi-backport-set3-v5 (Set1+2 are a backport of some of the QAPI-related work from Anthony's glib tree. The main goal is to get the

[Qemu-devel] [PATCH v5 1/5] guest agent: command state class

2011-06-14 Thread Michael Roth
Signed-off-by: Michael Roth mdr...@linux.vnet.ibm.com --- qga/guest-agent-command-state.c | 73 +++ qga/guest-agent-core.h | 25 + 2 files changed, 98 insertions(+), 0 deletions(-) create mode 100644 qga/guest-agent-command-state.c

[Qemu-devel] [PATCH v5 4/5] guest agent: add guest agent commands schema file

2011-06-14 Thread Michael Roth
Signed-off-by: Michael Roth mdr...@linux.vnet.ibm.com --- qapi-schema-guest.json | 202 1 files changed, 202 insertions(+), 0 deletions(-) create mode 100644 qapi-schema-guest.json diff --git a/qapi-schema-guest.json b/qapi-schema-guest.json

[Qemu-devel] [PATCH v5 3/5] guest agent: add guest agent RPCs/commands

2011-06-14 Thread Michael Roth
This adds the initial set of QMP/QAPI commands provided by the guest agent: guest-sync guest-ping guest-info guest-shutdown guest-file-open guest-file-read guest-file-write guest-file-seek guest-file-close guest-fsfreeze-freeze guest-fsfreeze-thaw guest-fsfreeze-status The input/output

[Qemu-devel] [PATCH v5 5/5] guest agent: Makefile, build qemu-ga

2011-06-14 Thread Michael Roth
This allows us to build qemu-ga with make qemu-ga. It pulls in the qemu-tools deps, but does not currently build by default. This may change to avoid bitrot and help with host-side-only unit tests. Signed-off-by: Michael Roth mdr...@linux.vnet.ibm.com --- Makefile | 22 +-

Re: [Qemu-devel] [libvirt] [PATCH v2] Add support for fd: protocol

2011-06-14 Thread Eric Blake
On 06/14/2011 01:55 PM, Corey Bryant wrote: So we would need something like -drive file=fd:4,format=qcow2,backing=fd:5 and since backing files can be nested, we'd need some way of specifying more than one level of backing file. Libvirt already knows how to walk a chain of backing images in

[Qemu-devel] [Bug 739785] Re: qemu-i386 user mode on ARMv5 host fails (bash: fork: Invalid argument)

2011-06-14 Thread Oleg
Hmm, it does not seem to work for me: [root@Plugbox cpu]# cat alignment User: 73412 System: 1 Skipped:0 Half: 5312 Word: 68091 DWord: 1 Multi: 0 User faults:2 (fixup) [root@Plugbox cpu]# cd /i386/ [root@Plugbox i386]# chroot .

Re: [Qemu-devel] [PATCH] for bug 754635: -d option outs wrong info about sections

2011-06-14 Thread Richard Henderson
On 06/12/2011 06:14 AM, ferux wrote: Patch to correct log output about sections from: startend size prot 0001-00019000 9000 r-x 00019000-0007b000 00062000 rw- 0004-00041000 1000 --- 00041000-00041800 0800 rw- 00041800-0005d800 0001c000 r-x 0005d800-0005e800

[Qemu-devel] [PATCH v2] target-ppc: Handle memory-forced I/O controller access

2011-06-14 Thread Andreas Färber
From: Hervé Poussineau hpous...@reactos.org On at least the PowerPC 601, a direct-store (T=1) with bus unit ID 0x07F is special-cased as memory-forced I/O controller access. It is supposed to be checked immediately if T=1, bypassing all protection mechanisms and acting cache-inhibited and global.

Re: [Qemu-devel] [libvirt] [PATCH v2] Add support for fd: protocol

2011-06-14 Thread Corey Bryant
On 06/14/2011 04:18 PM, Eric Blake wrote: On 06/14/2011 01:55 PM, Corey Bryant wrote: So we would need something like -drive file=fd:4,format=qcow2,backing=fd:5 and since backing files can be nested, we'd need some way of specifying more than one level of backing file. Libvirt

Re: [Qemu-devel] [PATCH] for bug 754635: -d option outs wrong info about sections

2011-06-14 Thread Andreas Färber
Hi, Am 12.06.2011 um 15:14 schrieb ferux: Patch to correct log output about sections from: startend size prot 0001-00019000 9000 r-x 00019000-0007b000 00062000 rw- 0004-00041000 1000 --- 00041000-00041800 0800 rw- 00041800-0005d800 0001c000 r-x

Re: [Qemu-devel] [PATCH RFC] target-ppc: Correctly handle translation address when bus unit ID = 0x07F

2011-06-14 Thread Andreas Färber
Am 13.06.2011 um 15:31 schrieb Alexander Graf: On 13.06.2011, at 12:13, Andreas Färber wrote: +/* Memory forced */ +ctx-raddr = ((sr 0xF) 28) | (eaddr 0x0FFF); This is exactly the same as ctx-raddr = eaddr, no? No, not that I see. The manual is explicit

Re: [Qemu-devel] [libvirt] [PATCH v2] Add support for fd: protocol

2011-06-14 Thread Eric Blake
On 06/14/2011 03:39 PM, Corey Bryant wrote: Incremental support is fine by me, but we'll need it sooner or later. Qemu currently opens the specified copy-on-write file, finds a backing file name in the opened file's header, opens that backing file, and repeats. So it seems that either a

[Qemu-devel] High speed polling

2011-06-14 Thread Clay Andreasen
I have a network device simulation that I am connecting to multiple instances of Qemu (nodes) via a shared memory queue. It works pretty well as long as all of the nodes are initiating communication but when one node is passive, it must poll to get packets. So far the fastest I have been

Re: [Qemu-devel] High speed polling

2011-06-14 Thread Mulyadi Santosa
Hi Clay. On Wed, Jun 15, 2011 at 05:32, Clay Andreasen c...@cray.com wrote: I have a network device simulation that I am connecting to multiple instances of Qemu (nodes) via a shared memory queue.  It works pretty well as long as all of the nodes are initiating communication but when one

[Qemu-devel] [PATCH 01/10] ppce500: move device/vendor/class id to qdev

2011-06-14 Thread Michael S. Tsirkin
Signed-off-by: Michael S. Tsirkin m...@redhat.com --- hw/ppce500_pci.c | 13 +++-- 1 files changed, 3 insertions(+), 10 deletions(-) diff --git a/hw/ppce500_pci.c b/hw/ppce500_pci.c index 069af96..fc11af4 100644 --- a/hw/ppce500_pci.c +++ b/hw/ppce500_pci.c @@ -304,20 +304,13 @@ static

[Qemu-devel] [PATCH 00/10] qemu: remove set but unused variables

2011-06-14 Thread Michael S. Tsirkin
Switched to FC15 and qemu build with -Werror fails. The reason is that with gcc 4.6.0, -Werror makes the build fail on variables that are set but never used. XXX: In function ‘xxx’: XXX:XXX:XX: error: variable ‘xx’ set but not used [-Werror=unused-but-set-variable] The following patchset removes

[Qemu-devel] [PATCH 06/10] kvm: remove unused variables

2011-06-14 Thread Michael S. Tsirkin
Signed-off-by: Michael S. Tsirkin m...@redhat.com --- hw/virtio-pci.h |8 +--- target-i386/kvm.c |3 +-- 2 files changed, 6 insertions(+), 5 deletions(-) diff --git a/hw/virtio-pci.h b/hw/virtio-pci.h index a4b5fd3..b518917 100644 --- a/hw/virtio-pci.h +++ b/hw/virtio-pci.h @@

[Qemu-devel] [PATCH 03/10] usb-ehci: remove unused variables

2011-06-14 Thread Michael S. Tsirkin
Signed-off-by: Michael S. Tsirkin m...@redhat.com --- hw/usb-ehci.c | 10 +- 1 files changed, 1 insertions(+), 9 deletions(-) diff --git a/hw/usb-ehci.c b/hw/usb-ehci.c index 4d6989a..c20ee22 100644 --- a/hw/usb-ehci.c +++ b/hw/usb-ehci.c @@ -523,11 +523,8 @@ static void

[Qemu-devel] [PATCH 07/10] alpha/translate: remve unused variables

2011-06-14 Thread Michael S. Tsirkin
Signed-off-by: Michael S. Tsirkin m...@redhat.com --- target-alpha/translate.c |3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) diff --git a/target-alpha/translate.c b/target-alpha/translate.c index ad6c2ca..5d7454c 100644 --- a/target-alpha/translate.c +++ b/target-alpha/translate.c

[Qemu-devel] [PATCH 02/10] usb-ehci: move device/vendor/class id to qdev

2011-06-14 Thread Michael S. Tsirkin
Signed-off-by: Michael S. Tsirkin m...@redhat.com --- hw/usb-ehci.c |9 - 1 files changed, 4 insertions(+), 5 deletions(-) diff --git a/hw/usb-ehci.c b/hw/usb-ehci.c index f63519e..4d6989a 100644 --- a/hw/usb-ehci.c +++ b/hw/usb-ehci.c @@ -1945,6 +1945,10 @@ static PCIDeviceInfo

[Qemu-devel] [PATCH 05/10] wdt: remove unused variables

2011-06-14 Thread Michael S. Tsirkin
Signed-off-by: Michael S. Tsirkin m...@redhat.com --- hw/wdt_i6300esb.c |3 --- 1 files changed, 0 insertions(+), 3 deletions(-) diff --git a/hw/wdt_i6300esb.c b/hw/wdt_i6300esb.c index bd57fd3..53786ce 100644 --- a/hw/wdt_i6300esb.c +++ b/hw/wdt_i6300esb.c @@ -381,7 +381,6 @@ static const

[Qemu-devel] [PATCH 04/10] lsi53c895a: remove unused variables

2011-06-14 Thread Michael S. Tsirkin
Signed-off-by: Michael S. Tsirkin m...@redhat.com --- hw/lsi53c895a.c |2 -- 1 files changed, 0 insertions(+), 2 deletions(-) diff --git a/hw/lsi53c895a.c b/hw/lsi53c895a.c index 3b75467..940b43a 100644 --- a/hw/lsi53c895a.c +++ b/hw/lsi53c895a.c @@ -889,7 +889,6 @@ static void

[Qemu-devel] [PATCH 09/10] exec: remove unused variable

2011-06-14 Thread Michael S. Tsirkin
Signed-off-by: Michael S. Tsirkin m...@redhat.com --- exec.c |4 1 files changed, 4 insertions(+), 0 deletions(-) diff --git a/exec.c b/exec.c index 81808f4..b784f08 100644 --- a/exec.c +++ b/exec.c @@ -1207,12 +1207,16 @@ static inline void tb_alloc_page(TranslationBlock *tb,

[Qemu-devel] [PATCH 08/10] alpha: remove unused variable

2011-06-14 Thread Michael S. Tsirkin
Signed-off-by: Michael S. Tsirkin m...@redhat.com --- target-alpha/translate.c |7 ++- 1 files changed, 6 insertions(+), 1 deletions(-) diff --git a/target-alpha/translate.c b/target-alpha/translate.c index 5d7454c..936760c 100644 --- a/target-alpha/translate.c +++

[Qemu-devel] [PATCH 10/10] linux-user: remove unused variables

2011-06-14 Thread Michael S. Tsirkin
Signed-off-by: Michael S. Tsirkin m...@redhat.com --- linux-user/flatload.c | 10 ++ linux-user/linuxload.c | 25 + linux-user/main.c |6 +++--- linux-user/signal.c|5 - linux-user/syscall.c |6 -- 5 files changed, 10

Re: [Qemu-devel] [PATCH 05/10] wdt: remove unused variables

2011-06-14 Thread Isaku Yamahata
It seems that I overlooked the variable when pci id conversion. Acked-off-by: Isaku Yamahata yamah...@valinux.co.jp On Tue, Jun 14, 2011 at 08:35:52PM +0300, Michael S. Tsirkin wrote: Signed-off-by: Michael S. Tsirkin m...@redhat.com --- hw/wdt_i6300esb.c |3 --- 1 files changed, 0

Re: [Qemu-devel] [PATCH 07/10] alpha/translate: remve unused variables

2011-06-14 Thread Richard Henderson
On 06/14/2011 10:36 AM, Michael S. Tsirkin wrote: Signed-off-by: Michael S. Tsirkin m...@redhat.com --- target-alpha/translate.c |3 +-- 1 files changed, 1 insertions(+), 2 deletions(-) Acked-by: Richard Henderson r...@twiddle.net r~

Re: [Qemu-devel] [PATCH 08/10] alpha: remove unused variable

2011-06-14 Thread Richard Henderson
On 06/14/2011 10:36 AM, Michael S. Tsirkin wrote: Signed-off-by: Michael S. Tsirkin m...@redhat.com --- target-alpha/translate.c |7 ++- 1 files changed, 6 insertions(+), 1 deletions(-) Acked-by: Richard Henderson r...@twiddle.net r~

Re: [Qemu-devel] [PATCH 01/10] ppce500: move device/vendor/class id to qdev

2011-06-14 Thread Isaku Yamahata
On Tue, Jun 14, 2011 at 08:35:20PM +0300, Michael S. Tsirkin wrote: Signed-off-by: Michael S. Tsirkin m...@redhat.com --- hw/ppce500_pci.c | 13 +++-- 1 files changed, 3 insertions(+), 10 deletions(-) diff --git a/hw/ppce500_pci.c b/hw/ppce500_pci.c index 069af96..fc11af4 100644

[Qemu-devel] [PATCH] guest agent: fix for guest agent RPCs/commands

2011-06-14 Thread Michael Roth
One of my commits must've gotten lost while I was squashing patches. Please apply the attached patch to correct a build issue due to qmp_guest_file_open()'s implementation not matching the qapi-generated prototype. Patch 3 has been updated in the corresponding repo branch if you're pulling

[Qemu-devel] [Bug 739785] Re: qemu-i386 user mode on ARMv5 host fails (bash: fork: Invalid argument)

2011-06-14 Thread moonman
Neither does it work for me: [root@Plugbox /]# cat /proc/cpu/alignment User: 293831 System: 1 Skipped:0 Half: 22200 Word: 271546 DWord: 1 Multi: 0 User faults:2 (fixup) [root@Plugbox /]# chroot /i386 [root@Plugbox /]# ls bash:

[Qemu-devel] [PATCH] [virtio-9p] Fix couple functions doing return on void functions

2011-06-14 Thread Malahal Naineni
Signed-off-by: Malahal Naineni mala...@us.ibm.com --- hw/9pfs/virtio-9p-local.c |4 ++-- 1 files changed, 2 insertions(+), 2 deletions(-) diff --git a/hw/9pfs/virtio-9p-local.c b/hw/9pfs/virtio-9p-local.c index 1b6c323..b6643fc 100644 --- a/hw/9pfs/virtio-9p-local.c +++

Re: [Qemu-devel] [PATCH 03/12] VMDK: probe for mono flat image

2011-06-14 Thread Fam Zheng
On Tue, Jun 14, 2011 at 4:06 PM, Stefan Hajnoczi stefa...@gmail.com wrote: On Sat, Jun 04, 2011 at 08:40:50AM +0800, Fam Zheng wrote: vmdk_probe for mono flat images. Signed-off-by: Fam Zheng famc...@gmail.com ---  block/vmdk.c |   13 ++---  1 files changed, 10 insertions(+), 3

Re: [Qemu-devel] [RFC 23/23] 40p: Add an 8514/A graphics card

2011-06-14 Thread Roy Tam
Hi all, 2011/6/14 Andreas Färber andreas.faer...@web.de: The IBM E15 is equivalent to an S3 Vision864. Lacking S3 SDAC (86C716) support, the DAC indizes are translated to greyscale colors. This works sufficiently to observe firmware boot progress. IMO we can generalize it as a generic S3

[Qemu-devel] [PATCH] Fix signal handling of SIG_IPI when io-thread is enabled

2011-06-14 Thread Alexandre Raymond
Both the signal thread (via sigwait()) and the cpu thread (via a normal signal handler) were attempting to catch SIG_IPI. This resulted in random freezes under Darwin. This patch separates SIG_IPI from the rest of the signals handled by the signal thread, because it is independently caught by

Re: [Qemu-devel] [PATCH 03/12] VMDK: probe for mono flat image

2011-06-14 Thread Stefan Hajnoczi
On Wed, Jun 15, 2011 at 5:26 AM, Fam Zheng famc...@gmail.com wrote: On Tue, Jun 14, 2011 at 4:06 PM, Stefan Hajnoczi stefa...@gmail.com wrote: On Sat, Jun 04, 2011 at 08:40:50AM +0800, Fam Zheng wrote: vmdk_probe for mono flat images. Signed-off-by: Fam Zheng famc...@gmail.com ---  

Re: [Qemu-devel] [PATCH 03/12] VMDK: probe for mono flat image

2011-06-14 Thread Fam Zheng
Have you tried removing that comment line to see if VMware still recognizes the file? Yes, it recognizes iff the first option line (non-comment, non-empty) is version=1 or version=2“. (An interesting thing that it is both space sensitive and case sensitive) -- Best regards! Fam Zheng

<    1   2