Symbol: symlink
drivers/gpu/drm/xe/xe_gt_debugfs.c
345
char symlink[16];
drivers/gpu/drm/xe/xe_gt_debugfs.c
392
snprintf(symlink, sizeof(symlink), "tile%u/%s", gt->tile->id, name);
drivers/gpu/drm/xe/xe_gt_debugfs.c
393
debugfs_create_symlink(name, minor->debugfs_root, symlink);
drivers/gpu/drm/xe/xe_gt_sriov_pf_debugfs.c
888
char symlink[64]; /* should be more enough for "../../sriov/vf%u/tile%u/gt%u\0" */
drivers/gpu/drm/xe/xe_gt_sriov_pf_debugfs.c
895
snprintf(symlink, sizeof(symlink), "../../sriov/%s/tile%u/gt%u",
drivers/gpu/drm/xe/xe_gt_sriov_pf_debugfs.c
897
debugfs_create_symlink(name, dent, symlink);
drivers/hwmon/pmbus/pmbus_core.c
3578
static void pmbus_remove_symlink(void *symlink)
drivers/hwmon/pmbus/pmbus_core.c
3580
debugfs_remove(symlink);
drivers/hwmon/pmbus/pmbus_core.c
3616
const char *pathname, *symlink;
drivers/hwmon/pmbus/pmbus_core.c
3640
symlink = kasprintf(GFP_KERNEL, "..%s", pathname);
drivers/hwmon/pmbus/pmbus_core.c
3641
if (!symlink)
drivers/hwmon/pmbus/pmbus_core.c
3645
pmbus_debugfs_dir, symlink);
drivers/hwmon/pmbus/pmbus_core.c
3646
kfree(symlink);
fs/9p/vfs_inode.c
1370
.symlink = v9fs_vfs_symlink,
fs/9p/vfs_inode_dotl.c
968
.symlink = v9fs_vfs_symlink_dotl,
fs/affs/dir.c
70
.symlink = affs_symlink,
fs/afs/dir.c
1765
kfree(op->create.symlink);
fs/afs/dir.c
1766
op->create.symlink = NULL;
fs/afs/dir.c
1786
struct afs_symlink *symlink;
fs/afs/dir.c
1804
symlink = kmalloc_flex(struct afs_symlink, content, clen + 1, GFP_KERNEL);
fs/afs/dir.c
1805
if (!symlink)
fs/afs/dir.c
1807
refcount_set(&symlink->ref, 1);
fs/afs/dir.c
1808
memcpy(symlink->content, content, clen + 1);
fs/afs/dir.c
1813
kfree(symlink);
fs/afs/dir.c
1825
op->create.symlink = symlink;
fs/afs/dir.c
65
.symlink = afs_symlink,
fs/afs/fsclient.c
889
c_namesz = strlen(op->create.symlink->content);
fs/afs/fsclient.c
913
memcpy(bp, op->create.symlink->content, c_namesz);
fs/afs/inode.c
687
if (vnode->symlink)
fs/afs/internal.h
714
struct afs_symlink __rcu *symlink; /* Symlink content */
fs/afs/internal.h
899
struct afs_symlink *symlink;
fs/afs/symlink.c
122
symlink = kmalloc_flex(struct afs_symlink, content, i_size + 1,
fs/afs/symlink.c
124
if (!symlink)
fs/afs/symlink.c
127
refcount_set(&symlink->ref, 1);
fs/afs/symlink.c
128
symlink->content[i_size] = 0;
fs/afs/symlink.c
132
memcpy(symlink->content, s, i_size);
fs/afs/symlink.c
135
afs_replace_symlink(vnode, symlink);
fs/afs/symlink.c
15
static void afs_put_symlink(struct afs_symlink *symlink)
fs/afs/symlink.c
165
struct afs_symlink *symlink;
fs/afs/symlink.c
17
if (refcount_dec_and_test(&symlink->ref))
fs/afs/symlink.c
171
symlink = rcu_dereference(vnode->symlink);
fs/afs/symlink.c
172
if (!symlink || !afs_check_validity(vnode))
fs/afs/symlink.c
175
return symlink->content;
fs/afs/symlink.c
178
if (vnode->symlink) {
fs/afs/symlink.c
18
kfree_rcu(symlink, rcu);
fs/afs/symlink.c
184
if (vnode->symlink)
fs/afs/symlink.c
191
if (!vnode->symlink) {
fs/afs/symlink.c
202
symlink = rcu_dereference_protected(vnode->symlink,
fs/afs/symlink.c
204
refcount_inc(&symlink->ref);
fs/afs/symlink.c
207
set_delayed_call(callback, afs_put_link, symlink);
fs/afs/symlink.c
208
return symlink->content;
fs/afs/symlink.c
21
static void afs_replace_symlink(struct afs_vnode *vnode, struct afs_symlink *symlink)
fs/afs/symlink.c
25
old = rcu_replace_pointer(vnode->symlink, symlink,
fs/afs/symlink.c
47
old = rcu_replace_pointer(vnode->symlink, NULL, true);
fs/afs/symlink.c
58
struct afs_symlink *symlink = op->create.symlink;
fs/afs/symlink.c
60
size_t size = strlen(symlink->content) + 1;
fs/afs/symlink.c
63
rcu_assign_pointer(vnode->symlink, symlink);
fs/afs/symlink.c
64
op->create.symlink = NULL;
fs/afs/symlink.c
75
memcpy(p, symlink->content, size);
fs/afs/symlink.c
85
struct afs_symlink *symlink;
fs/afs/yfsclient.c
963
contents_sz = strlen(op->create.symlink->content);
fs/afs/yfsclient.c
984
bp = xdr_encode_string(bp, op->create.symlink->content, contents_sz);
fs/autofs/root.c
57
.symlink = autofs_dir_symlink,
fs/bad_inode.c
169
.symlink = bad_inode_symlink,
fs/befs/befs.h
73
char symlink[BEFS_SYMLINK_LEN];
fs/befs/befs_fs_types.h
194
char symlink[BEFS_SYMLINK_LEN];
fs/befs/debug.c
107
befs_debug(sb, " Symbolic link [%s]", inode->data.symlink);
fs/befs/linuxvfs.c
379
strscpy(befs_ino->i_data.symlink, raw_inode->data.symlink,
fs/befs/linuxvfs.c
406
inode->i_link = befs_ino->i_data.symlink;
fs/befs/linuxvfs.c
441
i_data.symlink),
fs/befs/linuxvfs.c
443
i_data.symlink),
fs/btrfs/inode.c
10524
.symlink = btrfs_symlink,
fs/ceph/dir.c
2255
.symlink = ceph_symlink,
fs/ceph/inode.c
1277
err = decode_encrypted_symlink(mdsc, iinfo->symlink,
fs/ceph/inode.c
1299
sym = kstrndup(iinfo->symlink, symlen, GFP_NOFS);
fs/ceph/mds_client.c
149
info->symlink = *p;
fs/ceph/mds_client.h
150
char *symlink;
fs/coda/dir.c
555
.symlink = coda_symlink,
fs/coda/upcall.c
414
offset = INSIZE(symlink);
fs/coda/upcall.c
415
insize = max_t(unsigned int, offset + len + symlen + 8, OUTSIZE(symlink));
fs/configfs/dir.c
1582
.symlink = configfs_symlink,
fs/ecryptfs/inode.c
1128
.symlink = ecryptfs_symlink,
fs/ext2/namei.c
413
.symlink = ext2_symlink,
fs/ext4/namei.c
4227
.symlink = ext4_symlink,
fs/f2fs/namei.c
1373
.symlink = f2fs_symlink,
fs/fuse/dir.c
2399
.symlink = fuse_symlink,
fs/gfs2/inode.c
2313
.symlink = gfs2_symlink,
fs/hfsplus/dir.c
627
.symlink = hfsplus_symlink,
fs/hostfs/hostfs_kern.c
886
.symlink = hostfs_symlink,
fs/hostfs/hostfs_user.c
292
err = symlink(to, from);
fs/hpfs/namei.c
293
struct dentry *dentry, const char *symlink)
fs/hpfs/namei.c
336
result->i_size = strlen(symlink);
fs/hpfs/namei.c
351
hpfs_set_ea(result, fnode, "SYMLINK", symlink, strlen(symlink));
fs/hpfs/namei.c
615
.symlink = hpfs_symlink,
fs/hugetlbfs/inode.c
1223
.symlink = hugetlbfs_symlink,
fs/jffs2/dir.c
62
.symlink = jffs2_symlink,
fs/jfs/namei.c
1528
.symlink = jfs_symlink,
fs/kernfs/dir.c
609
kernfs_put(kn->symlink.target_kn);
fs/kernfs/symlink.c
116
struct kernfs_node *target = kn->symlink.target_kn;
fs/kernfs/symlink.c
45
kn->symlink.target_kn = target;
fs/minix/namei.c
284
.symlink = minix_symlink,
fs/namei.c
5649
if (!dir->i_op->symlink)
fs/namei.c
5660
error = dir->i_op->symlink(idmap, dir, dentry, oldname);
fs/namei.c
5708
SYSCALL_DEFINE2(symlink, const char __user *, oldname, const char __user *, newname)
fs/nfs/dir.c
2661
error = NFS_PROTO(dir)->symlink(dir, dentry, folio, pathlen, &attr);
fs/nfs/nfs3proc.c
1048
.symlink = nfs_symlink,
fs/nfs/nfs3proc.c
1101
.symlink = nfs3_proc_symlink,
fs/nfs/nfs3proc.c
290
struct nfs3_symlinkargs symlink;
fs/nfs/nfs3proc.c
569
data->arg.symlink.fromfh = NFS_FH(dir);
fs/nfs/nfs3proc.c
570
data->arg.symlink.fromname = dentry->d_name.name;
fs/nfs/nfs3proc.c
571
data->arg.symlink.fromlen = dentry->d_name.len;
fs/nfs/nfs3proc.c
572
data->arg.symlink.pages = &page;
fs/nfs/nfs3proc.c
573
data->arg.symlink.pathlen = len;
fs/nfs/nfs3proc.c
574
data->arg.symlink.sattr = sattr;
fs/nfs/nfs3xdr.c
2465
PROC(SYMLINK, symlink, create, 0),
fs/nfs/nfs4proc.c
10641
.symlink = nfs_symlink,
fs/nfs/nfs4proc.c
10708
.symlink = nfs4_proc_symlink,
fs/nfs/nfs4proc.c
5236
data->arg.u.symlink.pages = &page;
fs/nfs/nfs4proc.c
5237
data->arg.u.symlink.len = len;
fs/nfs/nfs4xdr.c
1236
*p = cpu_to_be32(create->u.symlink.len);
fs/nfs/nfs4xdr.c
1237
xdr_write_pages(xdr, create->u.symlink.pages, 0,
fs/nfs/nfs4xdr.c
1238
create->u.symlink.len);
fs/nfs/proc.c
714
.symlink = nfs_symlink,
fs/nfs/proc.c
755
.symlink = nfs_proc_symlink,
fs/nfsd/xdr.h
137
struct nfsd_symlinkargs symlink;
fs/nilfs2/namei.c
567
.symlink = nilfs_symlink,
fs/ntfs/namei.c
1573
.symlink = ntfs_symlink,
fs/ntfs3/namei.c
510
.symlink = ntfs_symlink,
fs/ocfs2/namei.c
2932
.symlink = ocfs2_symlink,
fs/orangefs/namei.c
423
.symlink = orangefs_symlink,
fs/overlayfs/dir.c
1478
.symlink = ovl_symlink,
fs/ramfs/inode.c
194
.symlink = ramfs_symlink,
fs/smb/client/cifsfs.c
1254
.symlink = cifs_symlink,
fs/smb/client/link.c
178
char *symlink = NULL;
fs/smb/client/link.c
200
rc = parse_mf_symlink(buf, bytes_read, &link_len, &symlink);
fs/smb/client/link.c
215
fattr->cf_symlink_target = symlink;
fs/squashfs/inode.c
301
struct squashfs_symlink_inode *sqsh_ino = &squashfs_ino.symlink;
fs/squashfs/squashfs_fs.h
332
char symlink[];
fs/squashfs/squashfs_fs.h
401
struct squashfs_symlink_inode symlink;
fs/sysfs/file.c
651
if (kn->symlink.target_kn->priv != targ)
fs/sysfs/symlink.c
190
if (kn->symlink.target_kn->priv != targ)
fs/ubifs/dir.c
1746
.symlink = ubifs_symlink,
fs/udf/namei.c
1022
.symlink = udf_symlink,
fs/udf/symlink.c
104
unsigned char *symlink;
fs/udf/symlink.c
116
symlink = iinfo->i_data + iinfo->i_lenEAttr;
fs/udf/symlink.c
124
symlink = bh->b_data;
fs/udf/symlink.c
127
err = udf_pc_to_char(inode->i_sb, symlink, inode->i_size, p, PAGE_SIZE);
fs/ufs/namei.c
325
.symlink = ufs_symlink,
fs/vboxsf/dir.c
477
.symlink = vboxsf_dir_symlink,
fs/xfs/xfs_iops.c
1282
.symlink = xfs_vn_symlink,
fs/xfs/xfs_iops.c
1310
.symlink = xfs_vn_symlink,
include/linux/fs.h
2008
int (*symlink) (struct mnt_idmap *, struct inode *,struct dentry *,
include/linux/kernfs.h
223
struct kernfs_elem_symlink symlink;
include/linux/nfs_xdr.h
1059
} symlink; /* NF4LNK */
include/linux/nfs_xdr.h
1816
int (*symlink) (struct inode *, struct dentry *, struct folio *,
init/initramfs.c
526
char symlink[PATH_MAX + N_ALIGN(PATH_MAX) + 1];
init/initramfs.c
534
symlink_buf = bufs->symlink;
kernel/bpf/inode.c
466
.symlink = bpf_symlink,
lib/ref_tracker.c
461
struct dentry *symlink, *dentry;
lib/ref_tracker.c
465
symlink = xa_load(&debugfs_symlinks, (unsigned long)dir);
lib/ref_tracker.c
469
if (symlink && !xa_is_err(symlink))
lib/ref_tracker.c
481
symlink = debugfs_create_symlink(name, ref_tracker_debug_dir,
lib/ref_tracker.c
483
if (!IS_ERR(symlink)) {
lib/ref_tracker.c
487
symlink, GFP_KERNEL);
lib/ref_tracker.c
489
debugfs_remove(symlink);
mm/shmem.c
5182
.symlink = shmem_symlink,
security/tomoyo/audit.c
249
const char *symlink = NULL;
security/tomoyo/audit.c
268
symlink = r->obj->symlink_target->name;
security/tomoyo/audit.c
270
len += 18 + strlen(symlink);
security/tomoyo/audit.c
284
} else if (symlink)
security/tomoyo/audit.c
286
symlink);
security/tomoyo/common.c
2138
char *symlink = NULL;
security/tomoyo/common.c
2162
symlink = strstr(header, " symlink.target=\"");
security/tomoyo/common.c
2163
if (symlink)
security/tomoyo/common.c
2164
len += tomoyo_truncate(symlink + 1) + 1;
security/tomoyo/common.c
2174
if (symlink)
security/tomoyo/common.c
2175
tomoyo_addprintf(buffer, len, "%s", symlink);
security/tomoyo/condition.c
812
struct tomoyo_path_info *symlink;
security/tomoyo/condition.c
818
symlink = obj ? obj->symlink_target : NULL;
security/tomoyo/condition.c
819
if (!symlink ||
security/tomoyo/condition.c
820
!tomoyo_compare_name_union(symlink, ptr)
tools/perf/util/build-id.c
725
if (symlink(tmp, linkname) == 0) {
tools/testing/selftests/exec/non-regular.c
64
ASSERT_EQ(symlink(paths[i], self->pathname), 0);
tools/testing/selftests/landlock/fs_test.c
3313
ASSERT_EQ(0, symlink("none", file2_s1d1));
tools/testing/selftests/landlock/fs_test.c
3323
ASSERT_EQ(-1, symlink("none", file1_s1d1));
tools/testing/selftests/landlock/fs_test.c
3330
ASSERT_EQ(0, symlink("none", file1_s1d2));
tools/testing/selftests/landlock/fs_test.c
3335
ASSERT_EQ(0, symlink("none", file1_s1d3));
tools/testing/selftests/landlock/fs_test.c
7547
EXPECT_EQ(-1, symlink("target", file1_s1d3));
tools/testing/selftests/mount/nosymfollow-test.c
123
err = symlink(DATA, LINK);
tools/testing/selftests/mount_setattr/mount_setattr_test.c
421
ASSERT_EQ(symlink(NOSYMFOLLOW_TARGET, NOSYMFOLLOW_SYMLINK), 0);
tools/testing/selftests/nolibc/nolibc-test.c
1634
CASE_TEST(symlink_root); EXPECT_SYSER(1, symlink("/", "/"), -1, EEXIST); break;
tools/testing/selftests/wireguard/qemu/init.c
104
if (symlink("/run", "/var/run"))
tools/testing/selftests/wireguard/qemu/init.c
106
if (symlink("/proc/self/fd", "/dev/fd"))