lkml.org 
[lkml]   [2016]   [Nov]   [17]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: Ordering problems with 3ware controller
From
Date
On 17.11.2016 15:55, Paul Menzel wrote:

> Dear Linux folks,
>
>
> On 11/16/16 22:24, Donald Buczek wrote:
>>
>> The relevant commit is 703b5fa which includes
>
> The commit message summary is *fs/dcache.c: Save one 32-bit multiply
> in dcache lookup*.
>
>> static inline unsigned long end_name_hash(unsigned long hash)
>> {
>> - return (unsigned int)hash;
>> + return __hash_32((unsigned int)hash);
>> }
>>
>> __hash_32 is a multiplication by 0x61C88647 ( hash.h )
>>
>> And this exactly is the difference between the hash value of "host0" on
>> the 4.4 and the 4.8 system:
>>
>> DB<2> x sprintf '%x',0x11bf1ddd*0x61C88647
>> 0 '6c750ef074af64b'
>>
>> The bug, of course, is in the userspace tool tw_cli which wrongly
>> assumes that the names would be returned in the "right" order by
>> getdents.
>
> Nice analysis.
>
> Unfortunately, I don’t find the discussion of the patch on the Linux
> kernel mailing list.

703b5fa sits on top of 8387ff2 from Linus Torvalds. Maybe he didn't send
his own suggestion to the lists but to the three people named in that
commit only. Maybe George Spelvin replied with his patch as an
improvement and Linus just accepted it on his own branch and merged
(554828e).

Donald

--
Donald Buczek
buczek@molgen.mpg.de
Tel: +49 30 8413 1433

\
 
 \ /
  Last update: 2016-11-17 20:56    [W:0.045 / U:1.816 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site