mbox series

[0/2] hw/s390x/ccw: Cleanup basename() and dirname()

Message ID 20231221171921.57784-1-zhao1.liu@linux.intel.com (mailing list archive)
Headers show
Series hw/s390x/ccw: Cleanup basename() and dirname() | expand

Message

Zhao Liu Dec. 21, 2023, 5:19 p.m. UTC
From: Zhao Liu <zhao1.liu@intel.com>

As commit 3e015d815b3f ("use g_path_get_basename instead of basename")
said, g_path_get_basename() and g_path_get_dirname() should be preferred
over basename() and dirname(), since g_path_get_basename() and
g_path_get_dirname() are portable utility functions that have the
advantage of not modifing the string argument.

But commit 3e015d815b3f missed a use of dirname() and basename() in
hw/s390x/ccw.

And basename() (in vfio/container) caused compile breakage with the Musl
C library [1].

To avoid similar breakage and improve portability, replace basename()
and dirname() with g_path_get_basename() and g_path_get_dirname().

[1]: https://lore.kernel.org/all/20231212010228.2701544-1-raj.khem@gmail.com/

---
Zhao Liu (2):
  hw/s390x/ccw: Replace basename() with g_path_get_basename()
  hw/s390x/ccw: Replace dirname() with g_path_get_dirname()

 hw/s390x/s390-ccw.c | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

Comments

Eric Farman Dec. 21, 2023, 9:29 p.m. UTC | #1
On Fri, 2023-12-22 at 01:19 +0800, Zhao Liu wrote:
> From: Zhao Liu <zhao1.liu@intel.com>
> 
> As commit 3e015d815b3f ("use g_path_get_basename instead of
> basename")
> said, g_path_get_basename() and g_path_get_dirname() should be
> preferred
> over basename() and dirname(), since g_path_get_basename() and
> g_path_get_dirname() are portable utility functions that have the
> advantage of not modifing the string argument.
> 
> But commit 3e015d815b3f missed a use of dirname() and basename() in
> hw/s390x/ccw.
> 
> And basename() (in vfio/container) caused compile breakage with the
> Musl
> C library [1].
> 
> To avoid similar breakage and improve portability, replace basename()
> and dirname() with g_path_get_basename() and g_path_get_dirname().
> 
> [1]:
> https://lore.kernel.org/all/20231212010228.2701544-1-raj.khem@gmail.com/
> 
> ---
> Zhao Liu (2):
>   hw/s390x/ccw: Replace basename() with g_path_get_basename()
>   hw/s390x/ccw: Replace dirname() with g_path_get_dirname()
> 
>  hw/s390x/s390-ccw.c | 7 +++++--
>  1 file changed, 5 insertions(+), 2 deletions(-)
> 

Reviewed-by: Eric Farman <farman@linux.ibm.com>
Zhao Liu Dec. 22, 2023, 2:41 a.m. UTC | #2
On Thu, Dec 21, 2023 at 04:29:31PM -0500, Eric Farman wrote:
> Date: Thu, 21 Dec 2023 16:29:31 -0500
> From: Eric Farman <farman@linux.ibm.com>
> Subject: Re: [PATCH 0/2] hw/s390x/ccw: Cleanup basename() and dirname()
> 
> On Fri, 2023-12-22 at 01:19 +0800, Zhao Liu wrote:
> > From: Zhao Liu <zhao1.liu@intel.com>
> > 
> > As commit 3e015d815b3f ("use g_path_get_basename instead of
> > basename")
> > said, g_path_get_basename() and g_path_get_dirname() should be
> > preferred
> > over basename() and dirname(), since g_path_get_basename() and
> > g_path_get_dirname() are portable utility functions that have the
> > advantage of not modifing the string argument.
> > 
> > But commit 3e015d815b3f missed a use of dirname() and basename() in
> > hw/s390x/ccw.
> > 
> > And basename() (in vfio/container) caused compile breakage with the
> > Musl
> > C library [1].
> > 
> > To avoid similar breakage and improve portability, replace basename()
> > and dirname() with g_path_get_basename() and g_path_get_dirname().
> > 
> > [1]:
> > https://lore.kernel.org/all/20231212010228.2701544-1-raj.khem@gmail.com/
> > 
> > ---
> > Zhao Liu (2):
> >   hw/s390x/ccw: Replace basename() with g_path_get_basename()
> >   hw/s390x/ccw: Replace dirname() with g_path_get_dirname()
> > 
> >  hw/s390x/s390-ccw.c | 7 +++++--
> >  1 file changed, 5 insertions(+), 2 deletions(-)
> > 
> 
> Reviewed-by: Eric Farman <farman@linux.ibm.com>

Thanks Eric!

-Zhao