[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <1182351171.3768.65.camel@hurina>
Date: Wed, 20 Jun 2007 17:52:51 +0300
From: Timo Sirainen <tss@....fi>
To: linux-kernel@...r.kernel.org
Subject: SMP read() stopping at memory page boundaries
Tested with various 2.6.x i386/x86-64 SMP kernels and CPUs, for example
2.6.21.3/x86-64.
Process 1:
- lock file
- write(4096 + 16 bytes)
- unlock file
Process 2:
- lock file
- read(8192 bytes)
- unlock file
Sometimes read() returns only 4096 bytes. I'm locking the file, so I
don't think this should ever happen, right?
Attached a test program. Takes from a few seconds to half a minute with
my computer to print "page size cut".
View attachment "concurrency2.c" of type "text/x-csrc" (1556 bytes)
Download attachment "signature.asc" of type "application/pgp-signature" (190 bytes)
Powered by blists - more mailing lists