> That version fails the test. On m68k/ARAnyM: > > test_hash: hashlen_string(256..256) returned length 1, expected 0
Just kill me. :-( I didn't change that code, so I didn't re-test it. But I changed the test. diff --git a/fs/namei.c b/fs/namei.c index aefba699..dcb85255 100644 --- a/fs/namei.c +++ b/fs/namei.c @@ -1958,11 +1958,11 @@ u64 hashlen_string(const char *name) unsigned long len = 0, c; c = (unsigned char)*name; - do { + while (c) { len++; hash = partial_name_hash(c, hash); c = (unsigned char)name[len]; - } while (c); + } return hashlen_create(end_name_hash(hash), len); } EXPORT_SYMBOL(hashlen_string);