18c2ecf20Sopenharmony_ci// SPDX-License-Identifier: GPL-2.0-or-later 28c2ecf20Sopenharmony_ci/* 38c2ecf20Sopenharmony_ci * Copyright 1997-1998 Transmeta Corporation -- All Rights Reserved 48c2ecf20Sopenharmony_ci */ 58c2ecf20Sopenharmony_ci 68c2ecf20Sopenharmony_ci#include "autofs_i.h" 78c2ecf20Sopenharmony_ci 88c2ecf20Sopenharmony_cistatic const char *autofs_get_link(struct dentry *dentry, 98c2ecf20Sopenharmony_ci struct inode *inode, 108c2ecf20Sopenharmony_ci struct delayed_call *done) 118c2ecf20Sopenharmony_ci{ 128c2ecf20Sopenharmony_ci struct autofs_sb_info *sbi; 138c2ecf20Sopenharmony_ci struct autofs_info *ino; 148c2ecf20Sopenharmony_ci 158c2ecf20Sopenharmony_ci if (!dentry) 168c2ecf20Sopenharmony_ci return ERR_PTR(-ECHILD); 178c2ecf20Sopenharmony_ci sbi = autofs_sbi(dentry->d_sb); 188c2ecf20Sopenharmony_ci ino = autofs_dentry_ino(dentry); 198c2ecf20Sopenharmony_ci if (ino && !autofs_oz_mode(sbi)) 208c2ecf20Sopenharmony_ci ino->last_used = jiffies; 218c2ecf20Sopenharmony_ci return d_inode(dentry)->i_private; 228c2ecf20Sopenharmony_ci} 238c2ecf20Sopenharmony_ci 248c2ecf20Sopenharmony_ciconst struct inode_operations autofs_symlink_inode_operations = { 258c2ecf20Sopenharmony_ci .get_link = autofs_get_link 268c2ecf20Sopenharmony_ci}; 27