lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-ID: <BLU0-SMTP1270709DA425DAB477295E0C43D0@phx.gbl>
Date:	Sat, 7 Sep 2013 13:39:47 +0200
From:	Mayk Eskila <meskilla@...look.com>
To:	linux-kernel@...r.kernel.org
Subject: Problems with splice

Hello list,

I intend to upgrade my own disc and partition cloning program by using  
splice. When running splice-cp.c from current git on my average dualcore  
hardware with kernel 3.10 I found that copying 1G files with splice is  
about twice as fast as using plain vanilla cp.

However I have encountered the following problems:

a) When trying to copy files with 2G size the program immediately  
terminates with the error "open input: Value too large for defined data  
type".

b) When trying to copy from a harddisc partition like /dev/sdb1 the  
program immediately terminates without any error and without copying.

c) When output is directed to /dev/null transfer speeds are extremely bad.

I guess that a+b might be due to size being larger than 32bit value. Is  
this a bug in the kernel or how can it be prevented from a user space  
program?

c) I guess that the code run when outputting to /dev/null takes it's time,  
but I intend to use that possibility for benchmarking pure read  
throughputs. In the current program I detect that special case and do not  
open the output file and in the copying loop skip all writing code. How  
could this be done by using the splice
family and thus avoid copying data to user space?

d) I also intend to use it for wiping discs and partitions. I know how to  
fill a buffer with zeros or pseudo random data, but how can I avoid  
repeatedly copying that data into kernel space?

Many thanks for your help!

Mayk
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@...r.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ