File tree Expand file tree Collapse file tree 2 files changed +21
-2
lines changed Expand file tree Collapse file tree 2 files changed +21
-2
lines changed Original file line number Diff line number Diff line change 38
38
#include <linux/slab.h>
39
39
#include <linux/compat.h>
40
40
#include <linux/freezer.h>
41
- #include <linux/crc32.h>
42
41
43
42
#include <asm/uaccess.h>
44
43
@@ -1190,7 +1189,7 @@ u32 _nfs_display_fhandle_hash(const struct nfs_fh *fh)
1190
1189
{
1191
1190
/* wireshark uses 32-bit AUTODIN crc and does a bitwise
1192
1191
* not on the result */
1193
- return ~ crc32 ( 0xFFFFFFFF , & fh -> data [ 0 ], fh -> size );
1192
+ return nfs_fhandle_hash ( fh );
1194
1193
}
1195
1194
1196
1195
/*
Original file line number Diff line number Diff line change 5
5
#include "nfs4_fs.h"
6
6
#include <linux/mount.h>
7
7
#include <linux/security.h>
8
+ #include <linux/crc32.h>
8
9
9
10
#define NFS_MS_MASK (MS_RDONLY|MS_NOSUID|MS_NODEV|MS_NOEXEC|MS_SYNCHRONOUS)
10
11
@@ -574,3 +575,22 @@ u64 nfs_timespec_to_change_attr(const struct timespec *ts)
574
575
{
575
576
return ((u64 )ts -> tv_sec << 30 ) + ts -> tv_nsec ;
576
577
}
578
+
579
+ #ifdef CONFIG_CRC32
580
+ /**
581
+ * nfs_fhandle_hash - calculate the crc32 hash for the filehandle
582
+ * @fh - pointer to filehandle
583
+ *
584
+ * returns a crc32 hash for the filehandle that is compatible with
585
+ * the one displayed by "wireshark".
586
+ */
587
+ static inline u32 nfs_fhandle_hash (const struct nfs_fh * fh )
588
+ {
589
+ return ~crc32_le (0xFFFFFFFF , & fh -> data [0 ], fh -> size );
590
+ }
591
+ #else
592
+ static inline u32 nfs_fhandle_hash (const struct nfs_fh * fh )
593
+ {
594
+ return 0 ;
595
+ }
596
+ #endif
You can’t perform that action at this time.
0 commit comments