svn commit: r227650 - in head: lib/libkiconv sys/conf sys/fs/msdosfs sys/fs/smbfs sys/kern sys/libkern sys/modules/libiconv sys/modules/libmchain sys/netsmb sys/sys

Garrett Cooper yanegomi at gmail.com
Fri May 18 06:30:36 UTC 2012


On Nov 17, 2011, at 7:05 PM, Kevin Lo wrote:

> Author: kevlo
> Date: Fri Nov 18 03:05:20 2011
> New Revision: 227650
> URL: http://svn.freebsd.org/changeset/base/227650
> 
> Log:
>  Add unicode support to msdosfs and smbfs; original pathes from imura,
>  bug fixes by Kuan-Chung Chiu <buganini at gmail dot com>.
> 
>  Tested by me in production for several days at work.

Some of the code in this commit breaks unloading of the libiconv module (it hard locks on unload). In particular if I do the following…

Index: /root/current/sys/libkern/iconv_ucs.c
===================================================================
--- /root/current/sys/libkern/iconv_ucs.c	(revision 235066)
+++ /root/current/sys/libkern/iconv_ucs.c	(working copy)
@@ -373,6 +373,7 @@
 static int
 iconv_ucs_init(struct iconv_converter_class *dcp)
 {
+#if 0
 	int error;
 
 	error = iconv_add(ENCODING_UNICODE, ENCODING_UNICODE, ENCODING_UTF8);
@@ -381,6 +382,7 @@
 	error = iconv_add(ENCODING_UNICODE, ENCODING_UTF8, ENCODING_UNICODE);
 	if (error)
 		return (error);
+#endif
 	return (0);
 }
 
	Then unload works (maybe at the cost of leaking a converter or two). It seems that iconv_unregister_handler succeeds when it's called (I inserted some printfs just because), but it might be doing bad things because of restructuring that took place in this commit.
Thanks!
-Garrett

PS Committing kern/168095 beforehand may or may not help...


More information about the svn-src-head mailing list