smack_fs_con..._parse_param(9)
π smack_fs_context_parse_param β Kernel API Manual
okay bestie, welcome to smack_fs_con..._parse_param(9), a page from the Kernel API Manual β¨ (yes the title is literally abbreviated like that, we don't make the rules, the manpage gods do π). It's a tiny page about one little function that handles exactly one mount parameter. Lowkey iconic for how short it is. Let's get into it π«Ά
πΈ NAME πΈ
smack_fs_context_parse_param β parses a single mount parameter π
one (1) parameter, no more, no notes.
β¨ SYNOPSIS β¨
int smack_fs_context_parse_param (struct fs_context *fc , struct
fs_parameter *param );
likeβ¦ that's the whole signature, she's neat, she's tidy, she takes two pointers and returns an int π
π¦ ARGUMENTS π¦
fcβ the brand-new filesystem context that's being constructed rn. main character energy, she's literally being built as we speak ποΈparamβ the parameter. justβ¦ the parameter. one of them. the one we're parsing π
π₯ DESCRIPTION π₯
okay so here's the whole vibe: it returns 0 on success β¨, or it returns -ENOPARAM to pass the parameter on (like "not mine bestie, hand it to someone else" π), or literally anything else if something went wrong ππ
that's it. that's the description. she's short but she's honest, no cap π
π SEE ALSO π
bestie I need you to sit down for this one because the SEE ALSO list is enormous and every single one of them is a real one π not me about to list the entire smack extended family. Here we go.
First up, the source of it all β Kernel file ./security/smack/smack_lsm.c. And then her friends: smk_fetch(9), init_inode_smack(9), init_task_smack(9), smk_copy_rules(9), smk_copy_relabel(9), smk_ptrace_mode(9), smk_ptrace_rule_check(9), smack_ptrace_access_check(9), smack_ptrace_traceme(9), smack_syslog(9), smack_sb_alloc_security(9), smack_fs_context_submount(9), smack_fs_context_dup(9), smack_set_mnt_opts(9), smack_sb_statfs(9), smack_bprm_creds_for_exec(9), smack_inode_alloc_security(9), smk_rule_transmutes(9), smack_inode_init_security(9) π
the inode girlies π¦: smack_inode_link(9), smack_inode_unlink(9), smack_inode_rmdir(9), smack_inode_rename(9), smack_inode_permission(9), smack_inode_setattr(9), smack_inode_getattr(9), smack_inode_xattr_skipcap(9), smack_inode_setxattr(9), smack_inode_post_setxattr(9), smack_inode_getxattr(9), smack_inode_removexattr(9), smack_inode_set_acl(9), smack_inode_get_acl(9), smack_inode_remove_acl(9), smack_inode_getsecurity(9), smack_inode_listsecurity(9), smack_inode_getlsmprop(9) β¨
the file crew π: smack_file_alloc_security(9), smack_file_ioctl(9), smack_file_lock(9), smack_file_fcntl(9), smack_mmap_file(9), smack_file_set_fowner(9), smack_file_send_sigiotask(9), smack_file_receive(9), smack_file_open(9) πΈ
creds n' stuff π: smack_cred_alloc_blank(9), smack_cred_free(9), smack_cred_prepare(9), smack_cred_transfer(9), smack_cred_getsecid(9), smack_cred_getlsmprop(9), smack_kernel_act_as(9), smack_kernel_create_files_as(9), smk_curacc_on_task(9) π
task besties π«Ά: smack_task_setpgid(9), smack_task_getpgid(9), smack_task_getsid(9), smack_current_getlsmprop_subj(9), smack_task_getlsmprop_obj(9), smack_task_setnice(9), smack_task_setioprio(9), smack_task_getioprio(9), smack_task_setscheduler(9), smack_task_getscheduler(9), smack_task_movememory(9), smack_task_kill(9), smack_task_to_inode(9) π
sockets + network, she's online π»: smack_sk_alloc_security(9), smack_sk_free_security(9), smack_sk_clone_security(9), smack_ipv4host_label(9), smack_ipv6host_label(9), smack_netlbl_add(9), smack_netlbl_delete(9), smk_ipv4_check(9), smk_ipv6_check(9), smk_ipv6_port_label(9), smk_ipv6_port_check(9), smack_inode_setsecurity(9), smack_socket_post_create(9), smack_socket_socketpair(9), smack_socket_bind(9), smack_socket_connect(9), smack_flags_to_may(9) π₯
IPC squad π§: smack_msg_msg_alloc_security(9), smack_of_ipc(9), smack_ipc_alloc_security(9), smk_curacc_shm(9), smack_shm_associate(9), smack_shm_shmctl(9), smack_shm_shmat(9), smk_curacc_sem(9), smack_sem_associate(9), smack_sem_semctl(9), smack_sem_semop(9), smk_tskacc_msq(9), smk_curacc_msq(9), smack_msg_queue_associate(9), smack_msg_queue_msgctl(9), smack_msg_queue_msgsnd(9), smack_msg_queue_msgrcv(9), smack_ipc_permission(9), smack_ipc_getlsmprop(9) β
procattr corner π: smack_d_instantiate(9), smack_getselfattr(9), smack_getprocattr(9), do_setattr(9), smack_setselfattr(9), smack_setprocattr(9) πΈ
the unix-domain + socket-from-anywhere gang π¦: smack_unix_stream_connect(9), smack_unix_may_send(9), smack_socket_sendmsg(9), smack_from_secattr(9), smack_from_skb(9), smack_from_netlbl(9), smack_socket_sock_rcv_skb(9), smack_socket_getpeersec_stream(9), smack_socket_getpeersec_dgram(9), smack_inet_conn_request(9), smack_inet_csk_clone(9) π«
and finally, the keys, audit, labels, secctx and io_uring icons π: smack_key_alloc(9), smack_key_permission(9), smack_watch_key(9), smack_post_notification(9), smack_audit_rule_init(9), smack_audit_rule_known(9), smack_audit_rule_match(9), smack_ismaclabel(9), smack_to_secctx(9), smack_secid_to_secctx(9), smack_lsmprop_to_secctx(9), smack_secctx_to_secid(9), smack_uring_override_creds(9), smack_uring_sqpoll(9), smack_uring_cmd(9), smack_init(9) π
like I said. everyone showed up to this function's party π periodt.
π reminder bestie: -ENOPARAM isn't an error, it's a handoff. Don't panic when you see it, she's just passing the aux cord π§
and that's the page!! sourced from ./security/smack, dated October 2026, and yes the manpage name is still the iconically truncated smack_fs_con..._parse_param(9) ππ mwah, go parse a parameter, you got this π«Άβ¨π
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms