From: Pat LaVarre <p.lavarre@ieee.org>
To: linux-fsdevel@vger.kernel.org
Subject: Re: zeroes read back more often than appended
Date: 20 Oct 2003 17:20:50 -0600 [thread overview]
Message-ID: <1066692050.2814.33.camel@patehci2> (raw)
In-Reply-To: <1066096137.3314.32.camel@patehci2>
Specifically next I hope to show that appending nonzero bytes to
multiple open files reads back wrong.
Seemingly as yet I have some tupographical errors in the following.
With nonzero dd seek and SMP on and PREEMPT on in -test8, initially I
see:
198 whd: whd.c:45: main: Assertion `rc == width' failed.
Pat LaVarre
--- whd.c
#include <assert.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
static FILE * fi[1234];
int main(int argc, char * argv[]) // 0xFF600 0xC8
{
int width;
int height;
int depth;
char * chars;
char nonzero;
int h;
int d;
int rc;
--argc; ++argv;
assert(argc == 3);
rc = sscanf(argv[0], "0x%X", &width);
assert(rc == 1);
rc = sscanf(argv[1], "0x%X", &height);
assert(rc == 1);
rc = sscanf(argv[1], "0x%X", &depth);
assert(rc == 1);
assert(depth < (sizeof fi / sizeof fi[0]));
nonzero = '\xAA';
chars = malloc(width);
assert(chars != NULL);
memset(&chars[0], nonzero, width);
for (d = 0; d < depth; ++d) {
char st[123];
sprintf(&st[0], "whd%d.bin", d);
fi[d] = fopen(&st[0], "wb");
assert(fi[d] != NULL);
}
for (h = 0; h < height; ++h) {
fprintf(stderr, "\r%d ", height - h - 1);
for (d = 0; d < depth; ++d) {
rc = fwrite(chars, 1, width, fi[d]);
assert(rc == width);
}
}
for (d = 0; d < depth; ++d) {
rc = fclose(fi[d]);
assert(rc == 0);
}
fprintf(stderr, "\n");
for (d = 0; d < depth; ++d) {
char st[123];
sprintf(&st[0], "hexdump -C whd%d.bin | head -3", d);
fprintf(stderr, "%s\n", st);
(void) system(st);
}
return 0;
}
--- udfwhd
#!/bin/bash
uname -msr
pwd
rm dd.bin
cmd='dd if=/dev/zero of=dd.bin bs=1M seek=0 count=256'
cmd='dd if=/dev/zero of=dd.bin bs=1M seek=255 count=1'
echo "$cmd 2>/dev/null"
$cmd 2>/dev/null
ls -l dd.bin
sudo losetup /dev/loop0 dd.bin
sudo $1 2>&1 | head -1
sudo $1 /dev/loop0 >/dev/null
sudo mount /dev/loop0 /mnt/loop0
sudo chown `id -u`:`id -g` /mnt/loop0/.
dmesg >1.dmesg
cd /mnt/loop0
whd $2 $3 $4
cd -
dmesg >2.dmesg
diff -u 1.dmesg 2.dmesg | grep '^\+' | head -5
rm 1.dmesg 2.dmesg
sudo umount /mnt/loop0
sudo losetup -d /dev/loop0
---
next prev parent reply other threads:[~2003-10-20 23:20 UTC|newest]
Thread overview: 40+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-10-07 19:02 zeroes read back more often than appended Pat LaVarre
2003-10-07 20:54 ` Pat LaVarre
2003-10-08 3:49 ` Ben Fennema
2003-10-08 16:41 ` Pat LaVarre
2003-10-08 16:47 ` editable udf metadata Pat LaVarre
2003-10-08 17:51 ` Pat LaVarre
2003-10-08 18:09 ` big-endian udfct_1_0r2 Pat LaVarre
2003-10-08 18:30 ` Matthew Wilcox
[not found] ` <3F8472FE.9040403@lougher.demon.co.uk>
2003-10-08 19:49 ` Matthew Wilcox
2003-10-08 20:43 ` Phillip Lougher
2003-10-21 21:54 ` editable udf metadata Pat LaVarre
2003-10-21 23:17 ` Pat LaVarre
2003-10-23 16:06 ` Pat LaVarre
2003-10-24 21:40 ` Pat LaVarre
2003-10-22 8:15 ` same page access Mark B
2003-10-22 11:21 ` Matthew Wilcox
2003-10-22 17:09 ` Mark B
2003-10-22 17:10 ` Matthew Wilcox
2003-10-08 17:02 ` zeroes read back more often than appended Pat LaVarre
2003-10-08 17:06 ` toggling smp clears x86_mce_p4thermal of make xconfig Pat LaVarre
2003-10-08 17:21 ` zeroes read back more often than appended Pat LaVarre
2003-10-08 16:46 ` soft trace of read/write of drivers/block/loop.c Pat LaVarre
2003-10-08 20:32 ` zeroes read back more often than appended Pat LaVarre
2003-10-09 20:54 ` Pat LaVarre
2003-10-10 0:52 ` Pat LaVarre
2003-10-10 16:39 ` Pat LaVarre
2003-10-10 18:15 ` Pat LaVarre
2003-10-14 0:38 ` Pat LaVarre
2003-10-14 1:48 ` Pat LaVarre
2003-10-20 23:20 ` Pat LaVarre [this message]
2003-10-21 14:47 ` Pat LaVarre
2003-10-21 16:46 ` Pat LaVarre
2003-10-21 18:44 ` Pat LaVarre
2003-10-23 18:52 ` Pat LaVarre
2003-10-27 21:55 ` Pat LaVarre
-- strict thread matches above, loose matches on Subject: below --
2003-11-20 16:41 Pat LaVarre
2003-11-27 0:45 ` Pat LaVarre
2003-11-28 18:20 ` Pat LaVarre
2003-11-28 18:29 ` Pat LaVarre
2003-12-11 18:42 Pat LaVarre
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=1066692050.2814.33.camel@patehci2 \
--to=p.lavarre@ieee.org \
--cc=linux-fsdevel@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox