--- linux-2.5.25-clean/fs/hpfs/dir.c Thu Jun 20 15:53:48 2002 +++ linux/fs/hpfs/dir.c Thu Jul 11 00:16:55 2002 @@ -211,7 +211,10 @@ lock_kernel(); if ((err = hpfs_chk_name((char *)name, &len))) { - if (err == -ENAMETOOLONG) return ERR_PTR(-ENAMETOOLONG); + if (err == -ENAMETOOLONG) { + unlock_kernel(); + return ERR_PTR(-ENAMETOOLONG); + } goto end_add; }