Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 19 Feb 2010 22:19:46 -0800
From:      Tim Kientzle <kientzle@freebsd.org>
To:        Jung-uk Kim <jkim@freebsd.org>
Cc:        freebsd-hackers@freebsd.org, Juergen Lock <nox@jelal.kn-bremen.de>, Garrett Cooper <yanefbsd@gmail.com>
Subject:   Re: "tar tfv /dev/cd0" speedup patch
Message-ID:  <4B7F7F02.1000004@freebsd.org>
In-Reply-To: <201002200100.48161.jkim@FreeBSD.org>
References:  <20100217215940.GA19713@triton8.kn-bremen.de> <20100219181247.GA35702@triton8.kn-bremen.de> <4B7F711E.6040402@freebsd.org> <201002200100.48161.jkim@FreeBSD.org>

next in thread | previous in thread | raw e-mail | index | archive | help
I should have been clearer; I tried this techniqe
on FreeBSD; I've not tried it on Linux yet.
(I don't have a Linux machine with a tape drive
at the moment.)

It doesn't work on FreeBSD; I was questioning
whether anyone else had tested it on Linux.

If Juergen's technique doesn't work, I'll try
the BLKGETSIZE ioctl.

Tim

Jung-uk Kim wrote:
> On Saturday 20 February 2010 12:20 am, Tim Kientzle wrote:
>> Juergen,
>>
>> I was looking at your Linux code here and thought
>> the technique of trying lseek(SEEK_END) might work.
>> Unfortunately, it doesn't: lseek(fd, 0, SEEK_END) gives
>> zero for both /dev/sa0 (a tape drive) and /dev/cd0
>> (an optical drive).  Are you sure it works on Linux?
> 
> Can you please try ioctl(fd, BLKGETSIZE64, &some_uint64_var) or 
> ioctl(fd, BLKGETSIZE, &some_u_long_var)?
> 
> Jung-uk Kim
> 
> 



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?4B7F7F02.1000004>