0

A kernel source directory was checked into bitbucket.org.

Now I check it out in cygwin on a windows machine. A few files are already changed. Any idea why this is happening and how to fix it?

The git version is 2.17.0. The changed files are:

$ git status
On branch develop
Your branch is up to date with 'origin/develop'.

Changes not staged for commit:
  (use "git add <file>..." to update what will be committed)
  (use "git checkout -- <file>..." to discard changes in working directory)

        modified:   linux-3.18.20/include/uapi/linux/netfilter/xt_CONNMARK.h
        modified:   linux-3.18.20/include/uapi/linux/netfilter/xt_DSCP.h
        modified:   linux-3.18.20/include/uapi/linux/netfilter/xt_MARK.h
        modified:   linux-3.18.20/include/uapi/linux/netfilter/xt_RATEEST.h
        modified:   linux-3.18.20/include/uapi/linux/netfilter/xt_TCPMSS.h
        modified:   linux-3.18.20/include/uapi/linux/netfilter_ipv4/ipt_ECN.h
        modified:   linux-3.18.20/include/uapi/linux/netfilter_ipv4/ipt_TTL.h
        modified:   linux-3.18.20/include/uapi/linux/netfilter_ipv6/ip6t_HL.h
        modified:   linux-3.18.20/net/netfilter/xt_DSCP.c
        modified:   linux-3.18.20/net/netfilter/xt_HL.c
        modified:   linux-3.18.20/net/netfilter/xt_RATEEST.c
        modified:   linux-3.18.20/net/netfilter/xt_TCPMSS.c
        modified:   linux-3.18.20/tools/testing/selftests/rcutorture/configs/rcu/v3.12/P7-4-T-NH-SD-SMP-HP

no changes added to commit (use "git add" and/or "git commit -a")

And the first file changes are:

$ git diff linux-3.18.20/include/uapi/linux/netfilter/xt_CONNMARK.h
diff --git a/linux-3.18.20/include/uapi/linux/netfilter/xt_CONNMARK.h b/linux-3.18.20/include/uapi/linux/netfilter/xt_CONNMARK.h
index 2f2e48ec..efc17a83 100644
--- a/linux-3.18.20/include/uapi/linux/netfilter/xt_CONNMARK.h
+++ b/linux-3.18.20/include/uapi/linux/netfilter/xt_CONNMARK.h
@@ -1,6 +1,31 @@
-#ifndef _XT_CONNMARK_H_target
-#define _XT_CONNMARK_H_target
+#ifndef _XT_CONNMARK_H
+#define _XT_CONNMARK_H

-#include <linux/netfilter/xt_connmark.h>
+#include <linux/types.h>

-#endif /*_XT_CONNMARK_H_target*/
+/* Copyright (C) 2002,2004 MARA Systems AB <http://www.marasystems.com>
+ * by Henrik Nordstrom <hno@marasystems.com>
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation; either version 2 of the License, or
+ * (at your option) any later version.
+ */
+
+enum {
+       XT_CONNMARK_SET = 0,
+       XT_CONNMARK_SAVE,
+       XT_CONNMARK_RESTORE
+};
+
+struct xt_connmark_tginfo1 {
+       __u32 ctmark, ctmask, nfmask;
+       __u8 mode;
+};
+
+struct xt_connmark_mtinfo1 {
+       __u32 mark, mask;
+       __u8 invert;
+};
+
+#endif /*_XT_CONNMARK_H*/

minghua
  • 5,981
  • 6
  • 45
  • 71
  • looks like line terminator, try configure git to adapt to your system EOL – OznOg Sep 13 '19 at 18:04
  • 1
    @OznOg: actually this particular issue is case-folding: old versions of linux have `IP.h` for big-endian and `ip.h` for little-endian. Windows literally can't store both files, so one overwrites the other. – torek Sep 13 '19 at 18:12
  • @torek, so you meant that even cygwin does not actually differentiate cases in filenames? That makes sense, though. – minghua Sep 15 '19 at 20:33
  • Yes: cygwin relies on the underlying Windows file system. – torek Sep 15 '19 at 20:35
  • And the solution is to use the case-sensitive feature on windows, and to use git 2.2+ to get the warning. – minghua Sep 15 '19 at 20:41

0 Answers0