Block device request merging - repeated requests.
David Woodhouse
dwmw2 en infradead.org
Lun Ene 31 13:59:54 CST 2000
I'm playing with a new block device driver in 2.3.41
When I try something simple like
'dd if=/dev/zero of=/dev/mydevice bs=512 count=10'
... I find that the requests are helpfully merged.
Unfortunately, I find that they're also repeated.
So - what was ten separate write requests, for each consecutive block, now
becomes ten write requests, each for the whole ten.
Am I doing something wrong - when I'm passed a request should I be checking it
to see if it's already uptodate?
Or is the block request combining code in 2.3.41 completely shagged?
# dd if=nftl.c of=/dev/nftla bs=512 count=2
2+0 records in
2+0 records out
NFTL_open called
NFTL write request of 0x2 sectors @ 0
Writing block 0 to EUN 5f
Writing block 1 to EUN 5a
NFTL write request completed OK
NFTL write request of 0x2 sectors @ 0
Writing block 0 to EUN 60
Writing block 1 to EUN 5b
NFTL write request completed OK
By setting max_sectors to 1 for the device in question, effectively disabling
the request merging, I return the system to sane behaviour.
--
dwmw2
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo en vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/
Más información sobre la lista de distribución Ayuda