Linux x86_64Sistema de arquivos#431
fsconfig
Configura incrementalmente um contexto de montagem criado com fsopen/fspick.
Descrição
Cada chamada define uma opção, fornece um arquivo-fonte, ou avança o contexto por um estágio (ex.: FSCONFIG_CMD_CREATE para finalizar a criação do superbloco).
Header:
linux/mount.hman 2Desde o kernel 5.2Assinatura
int fsconfig(
int fd,
unsigned int cmd,
const char * key,
const void * value,
int aux
);Parâmetros
| Parâmetro | Tipo | Descrição |
|---|---|---|
| fd | int | Descritor do contexto de montagem. |
| cmd | unsigned int | FSCONFIG_SET_FLAG, FSCONFIG_SET_STRING, FSCONFIG_CMD_CREATE, FSCONFIG_CMD_RECONFIGURE, etc. |
| key | const char * | Nome da opção, quando aplicável a `cmd`. |
| value | const void * | Valor da opção, quando aplicável a `cmd`. |
| aux | int | Argumento auxiliar (ex.: descritor de arquivo-fonte), quando aplicável. |
Registradores (x86_64)
| Registrador | Papel | Argumento |
|---|---|---|
| rax | número da syscall (chamada) / valor de retorno (após SYSCALL) | — |
| rdi | argumento 1 | fdint |
| rsi | argumento 2 | cmdunsigned int |
| rdx | argumento 3 | keyconst char * |
| r10 | argumento 4 | valueconst void * |
| r8 | argumento 5 | auxint |
Valor de retorno
0 em sucesso; -1 em erro, com errno definido.
Códigos de erro (errno)
- EINVAL(22)
- Argumento inválido.
- ENOMEM(12)
- Memória insuficiente para completar a operação.
- ENOTSUP(95)
- Sinônimo de EOPNOTSUPP — operação não suportada.