Los cuales soportan sistemas de ficheros a través de empalme empalme de Linux (2)?
-
30-09-2019 - |
Pregunta
La página de manual href="http://linux.die.net/man/2/splice" para la llamada al sistema splice
dice que splice
puede fallar y poner errno
a EINVAL
si:
sistema de archivos de destino no es compatible con el empalme; ninguno de los descriptores se refiere a una tubería; o desplazamiento dada para el dispositivo no seekable
¿Qué sistemas de archivos de soporte de empalmes?
Solución
Mi respuesta original fue parcialmente incorrecta, esto es una reescritura importante.
Linux 2.6.30.10 y por debajo
En Linux 2.6.30.10 y mayores, devoluciones splice
EINVAL
cuando el sistema de archivos de origen o destino no lo hace el empalme apoyo. Estos son los sistemas de archivos que hacen de soporte de empalmes
- en modo de lectura : adfs, AFFS, AFS, BFS, btrfs, coda, ecryptfs, EXOFS, ext2, ext3, ext4, grasas, fusibles, HPFS JFFS2, JFS, Minix, NFS, nilfs2, NTFS, ocfs2, omfs, qnx4, reiserfs, smbfs, sysv, UBIFS, UDF, UFS.
- en el modo de escritura :. EXOFS, ext2, ext3, ext4, JFS, ocfs2, reiserfs, UBIFS
Detalles seguimiento. Soporte para el empalme en determinado en el do_splice_to()
función en el caso "archivo a la tubería" y en el función do_splice_from()
en el caso "tubería de archivo". Se realiza comprobando si el struct file_operations
relevante contiene .splice_read
o .splice_write
, respectivamente. Con el fin de producir las listas anteriores de los sistemas de ficheros, no tengo fs/*/file.c
grepped para .splice_read
y .splice_write
.
Linux 2.6.31 y superiores
A partir de Linux 2.6.31, todos los sistemas de archivos soportan empalme tanto en los modos de lectura y escritura .
Detalles seguimiento. Cuando un sistema de archivos no tiene .splice_read
o .splice_write
en su struct file_operations
, se utiliza una función de reserva: default_file_splice_read
y default_file_splice_write
, respectivamente. Ver do_splice_to()
y do_splice_from()
para las implementaciones. Nota:. EINVAL
todavía puede ser devuelto por otras razones que figuran en la documentación
Otros consejos
accordding a este , EXT3 hace. Parece que podría estar fuera de suerte con cualquier sistema de archivos fusible.