Package: pv
Version: 1.1.4-1
Severity: wishlist

Hello,

from a quick grep through the sources and a quick look at transfer.c, it
looks like pv only does read(2)/write(2) data transfers.

It would be very interesting if it gave a try to splice(2) first, when
available: it'd mean I could use pv freely without worrying about
performing an extra in memory copy of potentially lots of data.

I have been improvising something like this recently with reasonable
happiness:

    // Try splice
    ssize_t res = splice(child_stdout_fd, NULL, next_fd, NULL, 4096*2, 
SPLICE_F_MORE);
    if (res >= 0)
        return res > 0;
    if (errno != EINVAL)
        throw wibble::exception::System("splicing data from child postprocessor 
to destination");
    // Else pass it on to the traditional method

Ciao,

Enrico


-- System Information:
Debian Release: squeeze/sid
  APT prefers testing
  APT policy: (500, 'testing')
Architecture: amd64 (x86_64)

Kernel: Linux 2.6.32-5-amd64 (SMP w/2 CPU cores)
Locale: LANG=en_GB.UTF-8, LC_CTYPE=en_GB.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/bash

Versions of packages pv depends on:
ii  libc6                  2.11.2-6+squeeze1 Embedded GNU C Library: Shared lib

pv recommends no packages.

Versions of packages pv suggests:
ii  doc-base                      0.9.5      utilities to manage online documen

-- no debconf information



-- 
To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to