Re: [PATCH] Fix include order between config.h and stat.h

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




On 7/26/19 10:44 AM, Zoltan Karcagi wrote:
> At least on Arch linux ARM, the definition of struct stat in stat.h depends
> on __USE_FILE_OFFSET64. This symbol comes from config.h when defined,
> therefore config.h must always be included before stat.h. Fix all
> occurrences where the order is wrong by moving config.h to the top.
> 
> This fixes the client side error "Stale file handle" when mounting from
> a server running Arch Linux ARM.
> 
> Signed-off-by: Zoltan Karcagi <zkr7432@xxxxxxxxx>
Committed!

steved.

> ---
>  support/misc/nfsd_path.c         | 5 ++++-
>  support/misc/xstat.c             | 5 ++++-
>  utils/blkmapd/device-discovery.c | 8 ++++----
>  utils/idmapd/idmapd.c            | 8 ++++----
>  4 files changed, 16 insertions(+), 10 deletions(-)
> 
> diff --git a/support/misc/nfsd_path.c b/support/misc/nfsd_path.c
> index 84e48028..f078a668 100644
> --- a/support/misc/nfsd_path.c
> +++ b/support/misc/nfsd_path.c
> @@ -1,3 +1,7 @@
> +#ifdef HAVE_CONFIG_H
> +#include <config.h>
> +#endif
> +
>  #include <errno.h>
>  #include <sys/types.h>
>  #include <sys/stat.h>
> @@ -5,7 +9,6 @@
>  #include <stdlib.h>
>  #include <unistd.h>
>  
> -#include "config.h"
>  #include "conffile.h"
>  #include "xmalloc.h"
>  #include "xlog.h"
> diff --git a/support/misc/xstat.c b/support/misc/xstat.c
> index fa047880..4c997eea 100644
> --- a/support/misc/xstat.c
> +++ b/support/misc/xstat.c
> @@ -1,3 +1,7 @@
> +#ifdef HAVE_CONFIG_H
> +#include <config.h>
> +#endif
> +
>  #include <errno.h>
>  #include <sys/types.h>
>  #include <fcntl.h>
> @@ -5,7 +9,6 @@
>  #include <sys/sysmacros.h>
>  #include <unistd.h>
>  
> -#include "config.h"
>  #include "xstat.h"
>  
>  #ifdef HAVE_FSTATAT
> diff --git a/utils/blkmapd/device-discovery.c b/utils/blkmapd/device-discovery.c
> index e811703d..f5f9b10b 100644
> --- a/utils/blkmapd/device-discovery.c
> +++ b/utils/blkmapd/device-discovery.c
> @@ -26,6 +26,10 @@
>   * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
>   */
>  
> +#ifdef HAVE_CONFIG_H
> +#include "config.h"
> +#endif /* HAVE_CONFIG_H */
> +
>  #include <sys/sysmacros.h>
>  #include <sys/types.h>
>  #include <sys/stat.h>
> @@ -51,10 +55,6 @@
>  #include <errno.h>
>  #include <libdevmapper.h>
>  
> -#ifdef HAVE_CONFIG_H
> -#include "config.h"
> -#endif /* HAVE_CONFIG_H */
> -
>  #include "device-discovery.h"
>  #include "xcommon.h"
>  #include "nfslib.h"
> diff --git a/utils/idmapd/idmapd.c b/utils/idmapd/idmapd.c
> index 62e37b8a..267acea5 100644
> --- a/utils/idmapd/idmapd.c
> +++ b/utils/idmapd/idmapd.c
> @@ -34,6 +34,10 @@
>   *  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
>   */
>  
> +#ifdef HAVE_CONFIG_H
> +#include "config.h"
> +#endif /* HAVE_CONFIG_H */
> +
>  #include <sys/types.h>
>  #include <sys/time.h>
>  #include <sys/inotify.h>
> @@ -62,10 +66,6 @@
>  #include <libgen.h>
>  #include <nfsidmap.h>
>  
> -#ifdef HAVE_CONFIG_H
> -#include "config.h"
> -#endif /* HAVE_CONFIG_H */
> -
>  #include "xlog.h"
>  #include "conffile.h"
>  #include "queue.h"
> 



[Index of Archives]     [Linux Filesystem Development]     [Linux USB Development]     [Linux Media Development]     [Video for Linux]     [Linux NILFS]     [Linux Audio Users]     [Yosemite Info]     [Linux SCSI]

  Powered by Linux