Blame view
fs/hfs/sysdep.c
1.01 KB
1da177e4c
|
1 2 3 4 5 6 7 8 9 |
/* * linux/fs/hfs/sysdep.c * * Copyright (C) 1996 Paul H. Hargrove * (C) 2003 Ardis Technologies <roman@ardistech.com> * This file may be distributed under the terms of the GNU General Public License. * * This file contains the code to do various system dependent things. */ |
34286d666
|
10 |
#include <linux/namei.h> |
1da177e4c
|
11 12 13 |
#include "hfs_fs.h" /* dentry case-handling: just lowercase everything */ |
0b728e191
|
14 |
static int hfs_revalidate_dentry(struct dentry *dentry, unsigned int flags) |
1da177e4c
|
15 |
{ |
34286d666
|
16 |
struct inode *inode; |
1da177e4c
|
17 |
int diff; |
0b728e191
|
18 |
if (flags & LOOKUP_RCU) |
34286d666
|
19 |
return -ECHILD; |
2b0143b5c
|
20 |
inode = d_inode(dentry); |
1da177e4c
|
21 22 23 24 25 26 27 28 29 30 31 32 33 |
if(!inode) return 1; /* fix up inode on a timezone change */ diff = sys_tz.tz_minuteswest * 60 - HFS_I(inode)->tz_secondswest; if (diff) { inode->i_ctime.tv_sec += diff; inode->i_atime.tv_sec += diff; inode->i_mtime.tv_sec += diff; HFS_I(inode)->tz_secondswest += diff; } return 1; } |
e16404ed0
|
34 |
const struct dentry_operations hfs_dentry_operations = |
1da177e4c
|
35 36 37 38 39 |
{ .d_revalidate = hfs_revalidate_dentry, .d_hash = hfs_hash_dentry, .d_compare = hfs_compare_dentry, }; |