Re: [Qemu-devel] [PATCH v2 1/4] qemu-io: initialize progname with error_set_progname()

2015-02-02 Thread Hitoshi Mitake
At Mon, 2 Feb 2015 12:36:00 +0100,
Kevin Wolf wrote:
 
 Am 02.02.2015 um 10:51 hat Hitoshi Mitake geschrieben:
  At Thu, 22 Jan 2015 18:08:11 +0900,
  Hitoshi Mitake wrote:
   
   Calling error_get_progname() in the context of qemu-io can cause
   segmentation fault because qemu-io doesn't initialize its progname
   with error_set_progname(). This patch adds the initialization.
   
   Currently, the missing call of error_set_progname() doesn't cause any
   problems because qemu-io doesn't use error_get_progname(). This patch
   is a proactive action.
   
   Cc: Kevin Wolf kw...@redhat.com
   Cc: Stefan Hajnoczi stefa...@redhat.com
   Cc: Markus Armbruster arm...@redhat.com
   Signed-off-by: Hitoshi Mitake mitake.hito...@lab.ntt.co.jp
   ---
qemu-io.c | 1 +
1 file changed, 1 insertion(+)
  
  Hi Kevin, Stefan, could you pick this patch? sheepdog driver has a
  pending patch [1] which depends on it. I believe at least qemu-io
  should call error_set_progname() because block drivers can use the
  qemu-error infrastructure.
 
 So are you planning to get the individual patches merged on their own
 instead of the whole series as one?

I thought this patchset can be proactive fix. So I'm separating the
patch for sheepdog driver from this one.

 
  [1] 
  https://github.com/sheepdog/qemu/commit/a95c35e606a2a189e7dbaf645277c5c306b01e4b
 
 That patch looks wrong. Nobody guarantees that qemu-io is really called
 qemu-io. The user can name their binaries as they want and create
 symlinks with any name, and indeed names for qemu-img used by some
 distributions include 'qemu-img-kvm' and 'kvm-img'. You need to find a
 different way than checking binary file names.

I couldn't consider about the case, thanks for pointing! I'll seek
other method for distinguishing binary files.

Thanks,
Hitoshi

 
 Kevin



Re: [Qemu-devel] [PATCH v2 1/4] qemu-io: initialize progname with error_set_progname()

2015-02-02 Thread Kevin Wolf
Am 02.02.2015 um 10:51 hat Hitoshi Mitake geschrieben:
 At Thu, 22 Jan 2015 18:08:11 +0900,
 Hitoshi Mitake wrote:
  
  Calling error_get_progname() in the context of qemu-io can cause
  segmentation fault because qemu-io doesn't initialize its progname
  with error_set_progname(). This patch adds the initialization.
  
  Currently, the missing call of error_set_progname() doesn't cause any
  problems because qemu-io doesn't use error_get_progname(). This patch
  is a proactive action.
  
  Cc: Kevin Wolf kw...@redhat.com
  Cc: Stefan Hajnoczi stefa...@redhat.com
  Cc: Markus Armbruster arm...@redhat.com
  Signed-off-by: Hitoshi Mitake mitake.hito...@lab.ntt.co.jp
  ---
   qemu-io.c | 1 +
   1 file changed, 1 insertion(+)
 
 Hi Kevin, Stefan, could you pick this patch? sheepdog driver has a
 pending patch [1] which depends on it. I believe at least qemu-io
 should call error_set_progname() because block drivers can use the
 qemu-error infrastructure.

So are you planning to get the individual patches merged on their own
instead of the whole series as one?

 [1] 
 https://github.com/sheepdog/qemu/commit/a95c35e606a2a189e7dbaf645277c5c306b01e4b

That patch looks wrong. Nobody guarantees that qemu-io is really called
qemu-io. The user can name their binaries as they want and create
symlinks with any name, and indeed names for qemu-img used by some
distributions include 'qemu-img-kvm' and 'kvm-img'. You need to find a
different way than checking binary file names.

Kevin



Re: [Qemu-devel] [PATCH v2 1/4] qemu-io: initialize progname with error_set_progname()

2015-02-02 Thread Hitoshi Mitake
At Thu, 22 Jan 2015 18:08:11 +0900,
Hitoshi Mitake wrote:
 
 Calling error_get_progname() in the context of qemu-io can cause
 segmentation fault because qemu-io doesn't initialize its progname
 with error_set_progname(). This patch adds the initialization.
 
 Currently, the missing call of error_set_progname() doesn't cause any
 problems because qemu-io doesn't use error_get_progname(). This patch
 is a proactive action.
 
 Cc: Kevin Wolf kw...@redhat.com
 Cc: Stefan Hajnoczi stefa...@redhat.com
 Cc: Markus Armbruster arm...@redhat.com
 Signed-off-by: Hitoshi Mitake mitake.hito...@lab.ntt.co.jp
 ---
  qemu-io.c | 1 +
  1 file changed, 1 insertion(+)

Hi Kevin, Stefan, could you pick this patch? sheepdog driver has a
pending patch [1] which depends on it. I believe at least qemu-io
should call error_set_progname() because block drivers can use the
qemu-error infrastructure.

[1] 
https://github.com/sheepdog/qemu/commit/a95c35e606a2a189e7dbaf645277c5c306b01e4b

Thanks,
Hitoshi

 
 v2:
  - pass argv[0] directly to error_set_progname() without calling basename
 
 diff --git a/qemu-io.c b/qemu-io.c
 index 91a445a..0e7d7d4 100644
 --- a/qemu-io.c
 +++ b/qemu-io.c
 @@ -396,6 +396,7 @@ int main(int argc, char **argv)
  
  progname = basename(argv[0]);
  qemu_init_exec_dir(argv[0]);
 +error_set_progname(argv[0]);
  
  bdrv_init();
  
 -- 
 1.9.1
 



[Qemu-devel] [PATCH v2 1/4] qemu-io: initialize progname with error_set_progname()

2015-01-22 Thread Hitoshi Mitake
Calling error_get_progname() in the context of qemu-io can cause
segmentation fault because qemu-io doesn't initialize its progname
with error_set_progname(). This patch adds the initialization.

Currently, the missing call of error_set_progname() doesn't cause any
problems because qemu-io doesn't use error_get_progname(). This patch
is a proactive action.

Cc: Kevin Wolf kw...@redhat.com
Cc: Stefan Hajnoczi stefa...@redhat.com
Cc: Markus Armbruster arm...@redhat.com
Signed-off-by: Hitoshi Mitake mitake.hito...@lab.ntt.co.jp
---
 qemu-io.c | 1 +
 1 file changed, 1 insertion(+)

v2:
 - pass argv[0] directly to error_set_progname() without calling basename

diff --git a/qemu-io.c b/qemu-io.c
index 91a445a..0e7d7d4 100644
--- a/qemu-io.c
+++ b/qemu-io.c
@@ -396,6 +396,7 @@ int main(int argc, char **argv)
 
 progname = basename(argv[0]);
 qemu_init_exec_dir(argv[0]);
+error_set_progname(argv[0]);
 
 bdrv_init();
 
-- 
1.9.1