From owner-freebsd-stable@freebsd.org Fri Jul 15 15:38:27 2016 Return-Path: Delivered-To: freebsd-stable@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:1900:2254:206a::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id B3134B9954A for ; Fri, 15 Jul 2016 15:38:27 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Received: from freefall.freebsd.org (freefall.freebsd.org [IPv6:2001:1900:2254:206c::16:87]) by mx1.freebsd.org (Postfix) with ESMTP id 575A2188D; Fri, 15 Jul 2016 15:38:27 +0000 (UTC) (envelope-from jkim@FreeBSD.org) Subject: Re: stable/11 Problems with Unicode character and ls(1) sorting To: Thomas Eberhardt , freebsd-stable@FreeBSD.org References: Cc: Baptiste Daroussin From: Jung-uk Kim Message-ID: Date: Fri, 15 Jul 2016 11:38:22 -0400 User-Agent: Mozilla/5.0 (X11; FreeBSD amd64; rv:45.0) Gecko/20100101 Thunderbird/45.2.0 MIME-Version: 1.0 In-Reply-To: Content-Type: multipart/signed; micalg=pgp-sha256; protocol="application/pgp-signature"; boundary="EHAhWNSRlEopsxoJ6afFHvVWNgr0dCtO9" X-BeenThere: freebsd-stable@freebsd.org X-Mailman-Version: 2.1.22 Precedence: list List-Id: Production branch of FreeBSD source code List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 15 Jul 2016 15:38:27 -0000 This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --EHAhWNSRlEopsxoJ6afFHvVWNgr0dCtO9 Content-Type: multipart/mixed; boundary="fGi1SI2nssCwtSl8pmgd2W25sg5kBhp0b" From: Jung-uk Kim To: Thomas Eberhardt , freebsd-stable@FreeBSD.org Cc: Baptiste Daroussin Message-ID: Subject: Re: stable/11 Problems with Unicode character and ls(1) sorting References: In-Reply-To: --fGi1SI2nssCwtSl8pmgd2W25sg5kBhp0b Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: quoted-printable On 07/15/16 09:55 AM, Thomas Eberhardt wrote: > % uname -a > FreeBSD clarence.ocp.lan 11.0-BETA1 FreeBSD 11.0-BETA1 #0 r302457: Sat = Jul 9 10:41:40 CEST 2016 thomas@clarence.ocp.lan:/usr/obj/usr/src/sy= s/GENERIC amd64 >=20 > % locale > LANG=3Den_US.UTF-8 > LC_CTYPE=3D"en_US.UTF-8" > LC_COLLATE=3D"en_US.UTF-8" > LC_TIME=3D"en_US.UTF-8" > LC_NUMERIC=3D"en_US.UTF-8" > LC_MONETARY=3D"en_US.UTF-8" > LC_MESSAGES=3D"en_US.UTF-8" > LC_ALL=3D >=20 > % mkdir x > % touch x/=C3=86on1 > % ls x > =C3=86on1 > % touch x/=C3=86on2 > % ls -f x=20 > . .. =C3=86on1 =C3=86on2 > % ls -f x | hd > 00000000 2e 0a 2e 2e 0a c3 86 6f 6e 31 0a c3 86 6f 6e 32 |.......on1= =2E..on2| > 00000010 0a |.| > 00000011 > % ls x > [hangs and consumes 100% CPU] > ^C >=20 > % gdb /bin/ls > [=E2=80=A6] > (gdb) run x > Starting program: /bin/ls x > [hangs] > ^C > Program received signal SIGINT, Interrupt. > 0x0000000800ffa9dd in _collate_lookup (table=3D, t= =3D,=20 > len=3D, pri=3D, which=3D<= value optimized out>, state=3D) > at /usr/src/lib/libc/locale/collate.c:340 > 340 *pri =3D table->char_pri_table[*t].pri[which]; > Current language: auto; currently minimal > (gdb) bt > #0 0x0000000800ffa9dd in _collate_lookup (table=3D, t=3D,=20 > len=3D, pri=3D, which=3D<= value optimized out>, state=3D) > at /usr/src/lib/libc/locale/collate.c:340 > #1 0x0000000800fdc38a in wcscoll_l (ws1=3D, ws2=3D= ,=20 > locale=3D) at /usr/src/lib/libc/string/wcscoll= =2Ec:158 > #2 0x0000000800fd9071 in strcoll_l (s=3D, s2=3D, locale=3D0x80124f338) > at /usr/src/lib/libc/string/strcoll.c:101 > #3 0x0000000800fee253 in qsort (a=3D, n=3D, es=3D,=20 > cmp=3D0x800f28530 ) at /usr/src/lib/libc/stdlib/qsort.c= :130 > #4 0x0000000800f27397 in fts_sort (sp=3D, head=3D= , nitems=3D) > at /usr/src/lib/libc/gen/fts.c:995 > #5 0x0000000800f2848e in fts_children (sp=3D, ins= tr=3DError accessing memory address 0x2: Bad address. > ) at /usr/src/lib/libc/gen/fts.c:570 > #6 0x00000000004030df in traverse (argc=3D, argv=3D= ,=20 > options=3D) at /usr/src/bin/ls/ls.c:576 > #7 0x0000000000402eeb in main (argc=3D, argv=3D) at /usr/src/bin/ls/ls.c:498 > #8 0x00000000004020cf in _start () > #9 0x0000000800629000 in ?? () > #10 0x0000000000000000 in ?? () > (gdb) br strcoll.c:101 > Breakpoint 1 at 0x800fd9063: file /usr/src/lib/libc/string/strcoll.c, l= ine 101. > (gdb) run > The program being debugged has been started already. > Start it from the beginning? (y or n) y > Starting program: /bin/ls x > [=E2=80=A6] >=20 > Breakpoint 1, strcoll_l (s=3D, s2=3D, locale=3D0x80124f338) > at /usr/src/lib/libc/string/strcoll.c:101 > 101 ret =3D wcscoll_l(w1, w2, locale); > (gdb) n > [wcscoll_l never returns] >=20 >=20 > Does anybody know what=E2=80=99s going on? This is on a ZFS filesystem = if that matters. Yes, it is a known problem and bapt is working on it. If you're in hurry, reverting r302324 will fix the regression for now. https://svnweb.freebsd.org/changeset/base/302324 FYI, this problem is tracked as PR211135. https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D211135 Jung-uk Kim --fGi1SI2nssCwtSl8pmgd2W25sg5kBhp0b-- --EHAhWNSRlEopsxoJ6afFHvVWNgr0dCtO9 Content-Type: application/pgp-signature; name="signature.asc" Content-Description: OpenPGP digital signature Content-Disposition: attachment; filename="signature.asc" -----BEGIN PGP SIGNATURE----- Version: GnuPG v2 iQEcBAEBCAAGBQJXiQNzAAoJEHyflib82/FGKcAH/jXYOsFMkhBzU1TW1O7yyQ1A ZWtFXyUT7xtUfzI3bl+Sd89Qadby7BpJ8uFNks0vm53xRWrXlxlUC1BwtNgURHKm KB7DNopZ5dzcBcJNCK2Ce1Hz0d7ZnuRZZ1vnnYBzHqx28ubZ5Vtbi4df7w9tGiSJ UAnaaQChkFiV8nHbxvRPWYUMbiz+aDclLt3kySpU2SI0oTvVxpJm0Cbvwp4oDJmu QNFPpHLm+2APnPS6KXgoYFt0Kkpp92jTOVfTFGkTS7gSf6f9n6oHr3UwGMRs43Ca UxfGuRY5Za+gCuE3h3AkXOBp+BDg9rjosbz1Xhu5WFRzeLLl5N8fzZ35RxxSQq4= =Wa/e -----END PGP SIGNATURE----- --EHAhWNSRlEopsxoJ6afFHvVWNgr0dCtO9--