Date: Mon, 12 Apr 1999 12:16:12 -0700 From: Jason Thorpe <thorpej@nas.nasa.gov> To: Ville-Pertti Keinonen <will@iki.fi> Cc: dillon@apollo.backplane.com (Matthew Dillon), hackers@FreeBSD.ORG Subject: Re: read() and pread() syscalls Message-ID: <199904121916.MAA07413@lestat.nas.nasa.gov>
next in thread | raw e-mail | index | archive | help
On 12 Apr 1999 17:01:50 +0300 Ville-Pertti Keinonen <will@iki.fi> wrote: > This may come as a shock to you, but read(2)/write(2) aren't atomic in > updating the file pointer, either. Then that's a bug in the FreeBSD kernel. > Actually, read(2) is equivalent to lseek(2)+pread(2)+lseek(2), with the > last lseek(2) being SEEK_CUR by the read count returned by pread(2). > The difference is that read(2) can only be pre-empted if it blocks > doing I/O (which is not unusual). Geez, how did this get implemented in FreeBSD?! It's certainly not that complicated. -- Jason R. Thorpe <thorpej@nas.nasa.gov> To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?199904121916.MAA07413>