diff options
author | Mike Miller (OS Dev) <mikem@beardog.cca.cpqcorp.net> | 2007-03-06 12:42:14 +0300 |
---|---|---|
committer | Linus Torvalds <torvalds@woody.linux-foundation.org> | 2007-03-06 20:30:25 +0300 |
commit | 97c06978515ed6e071bfd4a5e858837dd2b0edcf (patch) | |
tree | 026ffd8a6ba185128d0e30842dd5a66468a3f82f /drivers/net/sunlance.c | |
parent | d6ad67112a78623025632865d716b2f7645874c5 (diff) | |
download | linux-97c06978515ed6e071bfd4a5e858837dd2b0edcf.tar.xz |
[PATCH] cciss: fix for 2TB support
This patch changes the way we determine if a logical volume is larger than
2TB.
The original test looked for a total_size of 0. Originally we added 1 to the
total_size. That would make our read_capacity return size 0 for >2TB lv's.
We assumed that we could not have a lv size of 0 so it seemed OK until we were
in a clustered system. The backup node would see a size of 0 due to the
reservation on the drive. That caused the driver to switch to 16-byte CDB's
which are not supported on older controllers. After that everything was
broken.
It may seem petty but I don't see the value in trying to determine if the LBA
is beyond the 2TB boundary. That's why when we switch we use 16-byte CDB's
for all read/write operations. Please consider this for inclusion.
Signed-off-by: Mike Miller <mike.miller@hp.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'drivers/net/sunlance.c')
0 files changed, 0 insertions, 0 deletions