cachepc-linux

Fork of AMDESE/linux with modifications for CachePC side-channel attack
git clone https://git.sinitax.com/sinitax/cachepc-linux
Log | Files | Refs | README | LICENSE | sfeed.txt

sysdep.c (1035B)


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