linux/generic: fix r25699 take II
[openwrt/openwrt.git] / target / linux / generic / patches-2.6.38 / 218-mini_fo_fix_2_6_38.patch
1 --- a/fs/mini_fo/dentry.c
2 +++ b/fs/mini_fo/dentry.c
3 @@ -96,7 +96,7 @@ mini_fo_d_hash(dentry_t *dentry, qstr_t
4 if(hidden_sto_dentry &&
5 hidden_sto_dentry->d_op &&
6 hidden_sto_dentry->d_op->d_hash) {
7 - err = hidden_sto_dentry->d_op->d_hash(hidden_sto_dentry, name);
8 + err = hidden_sto_dentry->d_op->d_hash(hidden_sto_dentry, hidden_sto_dentry->d_inode, name);
9 }
10 goto out;
11 }
12 @@ -106,7 +106,7 @@ mini_fo_d_hash(dentry_t *dentry, qstr_t
13 if(hidden_dentry &&
14 hidden_dentry->d_op &&
15 hidden_dentry->d_op->d_hash) {
16 - err = hidden_dentry->d_op->d_hash(hidden_dentry, name);
17 + err = hidden_dentry->d_op->d_hash(hidden_dentry, hidden_dentry->d_inode, name);
18 }
19 goto out;
20 }
21 @@ -116,14 +116,14 @@ mini_fo_d_hash(dentry_t *dentry, qstr_t
22 if(hidden_sto_dentry &&
23 hidden_sto_dentry->d_op &&
24 hidden_sto_dentry->d_op->d_hash) {
25 - err = hidden_sto_dentry->d_op->d_hash(hidden_sto_dentry, name);
26 + err = hidden_sto_dentry->d_op->d_hash(hidden_sto_dentry, hidden_sto_dentry->d_inode, name);
27 goto out;
28 }
29 hidden_dentry = dtohd(dentry);
30 if(hidden_dentry &&
31 hidden_dentry->d_op &&
32 hidden_dentry->d_op->d_hash) {
33 - err = hidden_dentry->d_op->d_hash(hidden_dentry, name);
34 + err = hidden_dentry->d_op->d_hash(hidden_dentry, hidden_dentry->d_inode, name);
35 goto out;
36 }
37 }
38 @@ -148,7 +148,8 @@ mini_fo_d_compare(dentry_t *dentry, qstr
39 hidden_dentry = dtohd(dentry);
40
41 if (hidden_dentry && hidden_dentry->d_op && hidden_dentry->d_op->d_compare) {
42 - err = hidden_dentry->d_op->d_compare(hidden_dentry, a, b);
43 + err = hidden_dentry->d_op->d_compare(NULL, NULL, NULL, NULL,
44 + hidden_dentry->d_name.len, a, b);
45 } else {
46 err = ((a->len != b->len) || memcmp(a->name, b->name, b->len));
47 }