cmdk:

>From looking at the code for cmdk (common disk driver) it looks like the 
>maximum disk size for 32-bit kernels is exactly 1TB. And sadly the code 
>silently ignores disk larger than 1TB. I would expect to see a warning when 
>this occurs.

http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/intel/io/dktp/disk/cmdk.c#cmdkattach

It fails when the number of blocks on the disk is greater than 0x7fffffff.

sd:

The code for sd performs the same check but it does log an error when this 
occurs.

http://src.opensolaris.org/source/xref/onnv/onnv-gate/usr/src/uts/common/io/scsi/targets/sd.c

Line 7953: 
/* 32-bit kernels can't handle this */
scsi_log(SD_DEVINFO(un),
sd_label, CE_WARN, 
"disk has %llu blocks, which "
"is too large for a 32-bit "
"kernel", capacity);

Can anyone explain why i386 and amd64 are handled the same way in sd.c? Why 
isn't amd64 treated separately as it is a 64 bit architecture?

Line 7960: #if defined(__i386) || defined(__amd64)
-- 
This message posted from opensolaris.org
_______________________________________________
storage-discuss mailing list
[email protected]
http://mail.opensolaris.org/mailman/listinfo/storage-discuss

Reply via email to