Re: [PATCH][FAT] FAT dirent scan with hin take #3

Machida, Hiroyuki
2005-08-31T13:27:23Z

Pekka Enberg wrote:
> On 8/31/05, Machida, Hiroyuki <machida@sm.sony.co.jp> wrote:
>
>>+inline
>>+static int hint_index_body(const unsigned char *name, int name_len, int check_null)
>>+{
>>+ int i;
>>+ int val = 0;
>>+ unsigned char *p = (unsigned char *) name;
>>+ int id = current->pid;
>>+
>>+ for (i=0; i<name_len; i++) {
>>+ if (check_null && !*p) break;
>>+ val = ((val << 1) & 0xfe) | ((val & 0x80) ? 1 : 0);
>>+ val ^= *p;
>>+ p ++;
>>+ }
>>+ id = ((id >> 8) & 0xf) ^ (id & 0xf);
>>+ val = (val << 1) | (id & 1);
>>+ return val & (FAT_SCAN_NWAY-1);
>
>
> Couldn't you use jhash() from <linux/jhash.h> here?
>
> Pekka
Thanks, I'll replace it with functions in jhash.h, then
check performance again.

--
Hiroyuki Machida machida@sm.sony.co.jp