BDFLUSH(2) Manual do Programador do Linux BDFLUSH(2)

bdflush - inicia, descarrega, ou ajusta o daemon descarregador de buffer sujo

#include <sys/kdaemon.h>
int bdflush(int func, long *address);
int bdflush(int func, long data);

Nota: Desde o Linux 2.6, essa chamada de sistema foi descontinuada e não faz nada. É provável que desapareça completamente em uma versão futura do kernel. Atualmente, a tarefa executada por bdflush() é tratada pela thread pdflush do kernel.

bdflush() inicia, descarrega, ou ajusta o daemon descarregador de buffer sujo. Somente um processo com privilégios (um com a capacidade CAP_SYS_ADMIN) pode chamar bdflush().

Se func é negativo ou 0, e o daemon não tiver sido iniciado, então bdflush() entra o código do daemon e jamais retorna.

Se func é 1, alguns buffers sujos são escritos no disco.

Se func é 2 ou mais e é par (bit mais baixo é 0), então address é o endereço de uma palavra longa, e o parâmetro de ajuste numerado (func-2)/2 é retornado para o chamador nesse endereço.

Se func é 3 ou mais e é ímpar (bit mais baixo é 1), então data é uma palavra longa, e o kernel colocará o parâmetro de ajuste numerado (func-3)/2 para esse valor.

O conjunto de parâmetros, seus valores e seus intervalos válidos são definidos no arquivo fonte fs/buffer.c do kernel Linux.

Se func é negativo ou 0 e o daemon iniciou com sucesso, bdflush() jamais retorna. Doutra forma, o valor de retorno é 0 em caso de sucesso e -1 em caso de falha, sendo errno ajustado para indicar o erro.

EBUSY
Foi feita uma tentativa de entrada no código do daemon após outro processo já ter entrado.
EFAULT
address aponta para fora de seu espaço de endereços acessíveis.
EINVAL
Foi feita uma tentativa de ler ou escrever um número inválido de parâmetro ou de escrever um valor inválido para um parâmetro.
EPERM
O chamador não possui a capacidade CAP_SYS_ADMIN.

Desde a versão 2.23, glibc não possui mais suporte a esta chamada de sistema obsoleta.

bdflush() é específico para Linux e não deve ser usado em programas concebidos para serem portáveis.

sync(1), fsync(2), sync(2)

Esta página faz parte da versão 5.10 do projeto Linux man-pages. Uma descrição do projeto, informações sobre relatórios de bugs e a versão mais recente desta página podem ser encontradas em https://www.kernel.org/doc/man-pages/.

A tradução para português brasileiro desta página man foi criada por Marcelo D. Beckmann <marcelobeckmann@yahoo.com>, Fábio Henrique F. Silva <fabiohfs@mail.com> e Rafael Fontenelle <rafaelff@gnome.org>.

Esta tradução é uma documentação livre; leia a Licença Pública Geral GNU Versão 3 ou posterior para as condições de direitos autorais. Nenhuma responsabilidade é aceita.

Se você encontrar algum erro na tradução desta página de manual, envie um e-mail para a lista de discussão de tradutores.

8 outubro 2016 Linux