* linux.git is broken on a case-insensitive filesystem
@ 2020-12-26 22:30 Theodore Dubois
2020-12-26 23:03 ` Richard Weinberger
` (2 more replies)
0 siblings, 3 replies; 4+ messages in thread
From: Theodore Dubois @ 2020-12-26 22:30 UTC (permalink / raw)
To: linux-kernel
I'm currently hacking on Linux trying to run a sort of UML-style thing on macOS (please don't question my sanity :), and I've run into various issues stemming from macOS having a case-insensitive filesystem.
The one you run into immediately is: there are a number of files (mostly in netfilter) that have different uppercase and lowercase versions. net/netfilter/xt_DSCP.c and net/netfilter/xt_dscp.c are quite different. Last I checked, git would pseudo-randomly pick one of these to check out, and then show the other one as having unstaged changes making it look like the first one. This causes problems when switching branches. I've worked around this with a sparse checkout that excludes these files, but it's not great.
The gitignore also contains the pattern *.s, which excludes *.S as well when git is ignoring case.
Is there any interest in fixing these?
~Theodore
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: linux.git is broken on a case-insensitive filesystem
2020-12-26 22:30 linux.git is broken on a case-insensitive filesystem Theodore Dubois
@ 2020-12-26 23:03 ` Richard Weinberger
2020-12-26 23:08 ` Al Viro
2020-12-27 9:10 ` Bernd Petrovitsch
2 siblings, 0 replies; 4+ messages in thread
From: Richard Weinberger @ 2020-12-26 23:03 UTC (permalink / raw)
To: Theodore Dubois; +Cc: LKML, linux-um
Theodore,
On Sat, Dec 26, 2020 at 11:41 PM Theodore Dubois <tblodt@icloud.com> wrote:
>
> I'm currently hacking on Linux trying to run a sort of UML-style thing on macOS (please don't question my sanity :), and I've run into various issues stemming from macOS having a case-insensitive filesystem.
Sounds interesting, if you have questions on UML internals, just ask.
> The one you run into immediately is: there are a number of files (mostly in netfilter) that have different uppercase and lowercase versions. net/netfilter/xt_DSCP.c and net/netfilter/xt_dscp.c are quite different. Last I checked, git would pseudo-randomly pick one of these to check out, and then show the other one as having unstaged changes making it look like the first one. This causes problems when switching branches. I've worked around this with a sparse checkout that excludes these files, but it's not great.
>
> The gitignore also contains the pattern *.s, which excludes *.S as well when git is ignoring case.
>
> Is there any interest in fixing these?
I fear it is a little more complicated.
We have different upper and lower case variants in include/uapi/. If
you rename them, existing programs
will fail to build.
...which will make users sad and Linus grumpy.
--
Thanks,
//richard
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: linux.git is broken on a case-insensitive filesystem
2020-12-26 22:30 linux.git is broken on a case-insensitive filesystem Theodore Dubois
2020-12-26 23:03 ` Richard Weinberger
@ 2020-12-26 23:08 ` Al Viro
2020-12-27 9:10 ` Bernd Petrovitsch
2 siblings, 0 replies; 4+ messages in thread
From: Al Viro @ 2020-12-26 23:08 UTC (permalink / raw)
To: Theodore Dubois; +Cc: linux-kernel
On Sat, Dec 26, 2020 at 02:30:13PM -0800, Theodore Dubois wrote:
> I'm currently hacking on Linux trying to run a sort of UML-style thing on macOS (please don't question my sanity :), and I've run into various issues stemming from macOS having a case-insensitive filesystem.
>
> The one you run into immediately is: there are a number of files (mostly in netfilter) that have different uppercase and lowercase versions. net/netfilter/xt_DSCP.c and net/netfilter/xt_dscp.c are quite different. Last I checked, git would pseudo-randomly pick one of these to check out, and then show the other one as having unstaged changes making it look like the first one. This causes problems when switching branches. I've worked around this with a sparse checkout that excludes these files, but it's not great.
>
> The gitignore also contains the pattern *.s, which excludes *.S as well when git is ignoring case.
>
> Is there any interest in fixing these?
<wry> Just how could we fix a long-standing design flaw in macOS? </wry>
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: linux.git is broken on a case-insensitive filesystem
2020-12-26 22:30 linux.git is broken on a case-insensitive filesystem Theodore Dubois
2020-12-26 23:03 ` Richard Weinberger
2020-12-26 23:08 ` Al Viro
@ 2020-12-27 9:10 ` Bernd Petrovitsch
2 siblings, 0 replies; 4+ messages in thread
From: Bernd Petrovitsch @ 2020-12-27 9:10 UTC (permalink / raw)
To: Theodore Dubois; +Cc: linux-kernel
Hi all!
On Sat, 2020-12-26 at 14:30 -0800, Theodore Dubois wrote:
[...]
> thing on macOS (please don't question my sanity :), and I've run
> into various issues stemming from macOS having a case-insensitive
> filesystem.
Case-insensitive filesystems are broken by design.
Kind regards,
Bernd
--
Bernd Petrovitsch Email : bernd@petrovitsch.priv.at
There is no cloud, just other people computers. - FSFE
LUGA : http://www.luga.at
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2020-12-27 10:04 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-12-26 22:30 linux.git is broken on a case-insensitive filesystem Theodore Dubois
2020-12-26 23:03 ` Richard Weinberger
2020-12-26 23:08 ` Al Viro
2020-12-27 9:10 ` Bernd Petrovitsch
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).