[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <877irk5ox8.fsf@duaron.myhome.or.jp>
Date: Tue, 08 May 2007 06:01:07 +0900
From: OGAWA Hirofumi <hirofumi@...l.parknet.co.jp>
To: Roland Kuhn <rkuhn@....physik.tu-muenchen.de>
Cc: Andrey Borzenkov <arvidjaar@...l.ru>, linux-kernel@...r.kernel.org
Subject: Re: Long file names in VFAT broken with iocharset=utf8
Roland Kuhn <rkuhn@....physik.tu-muenchen.de> writes:
>> Roland Kuhn <rkuhn@....physik.tu-muenchen.de> writes:
>>> PATH_MAX specifically counts _bytes_ not characters, so UTF-8 does
>>> not matter. ISTR that PATH_MAX was 256 at some point, but I just
>>> quickly grepped /usr/include and found various mention of 4096, so
>>> where's the central repository for this configuration item? A hard-
>>> coded value of 256 somewhere inside the kernel smells like a bug.
>>
>> There is a nasty issue here. FAT is limited by 255 unicode chars or
>> so.
>> So, we would need to count number of unicode chars of filename.
>>
> No, we don't. At least not when looking at the POSIX spec, which
> explicitly mentions _bytes_ and _not_ unicode characters. So, to be
> on the safe side, FAT filesystems would need to support a NAME_MAX of
> roughly 6*255+3=1533 bytes (not to mention the hassles of forbidden
> sequences, etc.; do we need to count zero-width characters?) and
> report it through pathconf() to userspace, then userspace could do
> with that whatever it liked.
>
> What happened to: "file names are just sequences of octets, excluding
> '/' and UL"? Adding unicode parsing to the kernel is completely
> useless _and_ a big trouble maker.
The UCS2 in FAT is just on-disk format of the filename. So...
--
OGAWA Hirofumi <hirofumi@...l.parknet.co.jp>
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
Powered by blists - more mailing lists