Existe algum meio de compactar um dispositivo de bloco no nível do bloco? algo como cloop mas com capacidades de leitura e escrita
Não, uma vez que não é possível prever qual taxa de compactação você obterá, portanto, não sabe quanto armazenamento real é necessário para armazenar os dados compactados. A matéria fecal tocaria o rotor de ar rotativo se você começasse a encher esse dispositivo com dados não compressíveis.
O zram contorna isso não alocando memória para manter os dados compactados até que realmente precisem, e assume que você tem muito mais memória ram do que o tamanho máximo do dispositivo zram.