xfs
[Top] [All Lists]

Re: Linux 2.4.17-xfs vs previous XFS versions and certain non-us charact

To: Stephen Lord <lord@xxxxxxx>
Subject: Re: Linux 2.4.17-xfs vs previous XFS versions and certain non-us characters in filenames
From: Håkan Lindqvist <lindqvist@xxxxxxxxxx>
Date: 27 Jan 2002 18:18:08 +0100
Cc: Andi Kleen <ak@xxxxxxx>, utz lehmann <xfs@xxxxxxxxxx>, Linux XFS Mailing List <linux-xfs@xxxxxxxxxxx>
In-reply-to: <3C54352B.60505@xxxxxxx>
References: <1012101803.1045.28.camel@steelnest> <1012102374.1045.35.camel@steelnest> <3C536F44.1020301@xxxxxxx> <20020127152120.A1490@xxxxxxxxxx> <20020127154745.A20990@xxxxxxxxxxxxx> <1012143898.923.1.camel@steelnest> <3C54352B.60505@xxxxxxx>
Sender: owner-linux-xfs@xxxxxxxxxxx
Thanks Stephen,

I'm not sure about your policy about the CVS repository, but maybe you
ought to make this change in the CVS repository until the code has been
somewhat more audited?

/Håkan


On Sun, 2002-01-27 at 18:13, Stephen Lord wrote:
> Hekan Lindqvist wrote:
> 
> >Andi and Utz, I love you guys! :)
> >
> >(This patch made things work just fine again! *hint hint*)
> >
> >
> >Thanks a lot everyone!
> >
> >/Hekan
> >
> >
> >On Sun, 2002-01-27 at 15:47, Andi Kleen wrote:
> >
> >>On Sun, Jan 27, 2002 at 03:21:20PM +0100, utz lehmann wrote:
> >>
> >>>Maybe this cause it?
> >>>
> >>>TAKE - remove use of -funsigned-char from xfs
> >>>http://oss.sgi.com/projects/xfs/mail_archive/0201/msg00611.html
> >>>
> >>Looks very likely. Try this patch: 
> >>
> >>
> >>Index: linux/fs/xfs/xfs_da_btree.c
> >>===================================================================
> >>RCS file: /cvs/linux-2.4-xfs/linux/fs/xfs/xfs_da_btree.c,v
> >>retrieving revision 1.119
> >>diff -u -u -r1.119 xfs_da_btree.c
> >>--- linux/fs/xfs/xfs_da_btree.c     2001/07/02 18:15:34     1.119
> >>+++ linux/fs/xfs/xfs_da_btree.c     2002/01/27 15:44:38
> >>@@ -1592,7 +1592,7 @@
> >>  * This is implemented with some source-level loop unrolling.
> >>  */
> >> xfs_dahash_t
> >>-xfs_da_hashname(char *name, int namelen)
> >>+xfs_da_hashname(unsigned char *name, int namelen)
> >> {
> >>    xfs_dahash_t hash;
> >> 
> >>Index: linux/fs/xfs/xfs_da_btree.h
> >>===================================================================
> >>RCS file: /cvs/linux-2.4-xfs/linux/fs/xfs/xfs_da_btree.h,v
> >>retrieving revision 1.40
> >>diff -u -u -r1.40 xfs_da_btree.h
> >>--- linux/fs/xfs/xfs_da_btree.h     2000/09/25 05:42:07     1.40
> >>+++ linux/fs/xfs/xfs_da_btree.h     2002/01/27 15:44:38
> >>@@ -322,7 +322,7 @@
> >> int        xfs_da_shrink_inode(xfs_da_args_t *args, xfs_dablk_t dead_blkno,
> >>                                      xfs_dabuf_t *dead_buf);
> >> 
> >>-uint xfs_da_hashname(char *name_string, int name_length);
> >>+uint xfs_da_hashname(unsigned char *name_string, int name_length);
> >> uint xfs_da_log2_roundup(uint i);
> >> xfs_da_state_t *xfs_da_state_alloc(void);
> >> void xfs_da_state_free(xfs_da_state_t *state);
> >>
> >>
> >>
> >>-Andi 
> >>
> >
> >
> Woops, sorry, I forgot about the unsigned char change,  since I use English
> characters with the top bit set did not occur to me. I will take a look 
> through the
> other obvious places and see what else I can come up with.  You can work 
> around
> this by putting -f unsigned-char back into the Makefiles in fs/xfs and 
> fs/xfs/linux,
> just add it to the EXTRA_CFLAGS definition.
> 
> Steve
> 
> 
> 



<Prev in Thread] Current Thread [Next in Thread>