From: "James Bourne" <james@fsm.com.au>
To: linux-kernel@vger.kernel.org
Subject: PROBLEM: drivers/scsi/sd.c - Incorrect Reporting of Blocks and Capacity of Large SCSI Disk Arrays
Date: Fri, 31 Jan 2003 06:07:05 +1000 [thread overview]
Message-ID: <20030130200705.M57065@fsm.com.au> (raw)
I have attempt to fill out the Bug Report as per REPORTING-BUGS. I have
attempted to forward the report to the respective authors of the appropriate
module but the email bounced (-> ericy@andante.org, drew@colorado.edu).
Please let me know if I can be of further assistance.
Regards,
James
1. drivers/scsi/sd.c - Incorrect Reporting of Blocks and Capacity of Large
SCSI Disk Arrays
2. The size of very large SCSI Disk arrays is incorrectly reported by code
in 'drivers/scsi/sd.c' as a result of perhaps inadequate precision of field
'capacity' in structure: 'typedef struct scsi_disk' found in drives/scsi/sd.h.
This problem exists on both a custom 2.4.20 kernel and on a stock RedHat
2.4.18-19.8.0smp kernel. This problem report pertains to the latter kernel.
For example:
SCSI device sdb: -562247552 512-byte hdwr sectors (4294679426 MB)
sdb: sdb1
SCSI device sdc: -1997908992 512-byte hdwr sectors (76582 MB)
sdc: sdc1
Server:
IBM xSeries 220 (2 x PIII 1Ghz, 512MB RAM)
HBAs:
Onboard Adaptec HBA to 1 x 36GB HDD
Offboard Adaptec AHA39160 HBA in slot 4 (64-bit/33Mhz)
Channels:
Channel A connected to Adaptec Durstor 6220SS
Channel B connected to Quantum ATL 1500 (2 x SDLT320, 20-slots)
Storage:
Adaptec Durstor 6220SS Connected to 3 Adaptec 312R JBODs
Each JBOD populated with 8 x 147GB Fujitsu HDD (MAP3147NC)
RAID:
RAID-3 Array 1 created comprising 14 x HDD (@ 140201MB per spindle)
RAID-3 Array 2 created comprising 9 x HDD (@ 140201MB per spindle)
Spares:
One pool spare allocated
Array Capacity
Total unformatted capacity for Array 1: 1962814MB (1916.81GB, 1.87TB)
Total unformatted capacity for Array 2: 1261809MB (1232.23GB, 1.20TB)
Partition
Array 1: Single Partition
Array 2: Single Partition
FileSystem:
Array 1: EXT3
Array 2: EXT3
3. scsi, modules, kernel
4. Linux version 2.4.18-19.8.0smp (bhcompile@stripples.devel.redhat.com) (gcc
version 3.2 20020903 (Red Hat Linux 8.0 3.2-7)) #1 SMP Thu Dec 12 04:36:25
EST 2002
5. From dmesg:
SCSI subsystem driver Revision: 1.00
scsi0 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.8
<Adaptec aic7892 Ultra160 SCSI adapter>
aic7892: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
scsi1 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.8
<Adaptec 3960D Ultra160 SCSI adapter>
aic7899: Ultra160 Wide Channel A, SCSI Id=7, 32/253 SCBs
scsi2 : Adaptec AIC7XXX EISA/VLB/PCI SCSI HBA DRIVER, Rev 6.2.8
<Adaptec 3960D Ultra160 SCSI adapter>
aic7899: Ultra160 Wide Channel B, SCSI Id=7, 32/253 SCBs
blk: queue c251a618, I/O limit 4095Mb (mask 0xffffffff)
Vendor: IBM-PSG Model: DDYS-T36950M M Rev: S9HA
Type: Direct-Access ANSI SCSI revision: 03
blk: queue c251a418, I/O limit 4095Mb (mask 0xffffffff)
Vendor: IBM Model: YGLv3 S2 Rev: 0
Type: Processor ANSI SCSI revision: 02
blk: queue dfd1be18, I/O limit 4095Mb (mask 0xffffffff)
scsi0:A:0:0: Tagged Queuing enabled. Depth 253
blk: queue dfd1be18, I/O limit 4095Mb (mask 0xffffffff)
Vendor: Adaptec Model: DuraStor 6200S Rev: L421
Type: Direct-Access ANSI SCSI revision: 03
blk: queue dfd01218, I/O limit 4095Mb (mask 0xffffffff)
scsi1:A:1:0: Tagged Queuing enabled. Depth 253
blk: queue dfd01218, I/O limit 4095Mb (mask 0xffffffff)
Vendor: M4 DATA Model: MagFile Rev: 3.01
Type: Medium Changer ANSI SCSI revision: 02
blk: queue dfce5818, I/O limit 4095Mb (mask 0xffffffff)
Vendor: QUANTUM Model: SDLT320 Rev: 2E2E
Type: Sequential-Access ANSI SCSI revision: 02
blk: queue dfce5418, I/O limit 4095Mb (mask 0xffffffff)
Vendor: QUANTUM Model: SDLT320 Rev: 2E2E
Type: Sequential-Access ANSI SCSI revision: 02
blk: queue dfce5018, I/O limit 4095Mb (mask 0xffffffff)
Attached scsi disk sda at scsi0, channel 0, id 0, lun 0
Attached scsi disk sdb at scsi1, channel 0, id 1, lun 0
(scsi0:A:0): 160.000MB/s transfers (80.000MHz DT, offset 63, 16bit)
SCSI device sda: 71096640 512-byte hdwr sectors (36401 MB)
Partition check:
sda: sda1 sda2 sda3
(scsi1:A:1): 160.000MB/s transfers (80.000MHz DT, offset 127, 16bit)
SCSI device sdb: -562247552 512-byte hdwr sectors (-287870 MB)
6. N/a
7. Environment
7.1 Software
ver_linux:
Linux firedaemon 2.4.18-19.8.0smp #1 SMP Thu Dec 12 04:36:25 EST 2002 i686
i686 i386 GNU/Linux
Gnu C 3.2
Gnu make 3.79.1
util-linux 2.11r
mount 2.11r
modutils 2.4.18
e2fsprogs 1.27
jfsutils 1.0.17
reiserfsprogs 3.6.2
pcmcia-cs 3.1.31
PPP 2.4.1
isdn4k-utils 3.1pre4
Linux C Library 2.2.93
Dynamic linker (ldd) 2.2.93
Procps 2.0.7
Net-tools 1.60
Kbd 1.06
Sh-utils 2.0.12
Modules Loaded sg nfsd lockd sunrpc sk98lin e100 iptable_filter
ip_tables st mousedev keybdev hid input usb-ohci usbcore ext3 jbd aic7xxx
sd_mod scsi_mod
7.2 Processor Info
processor : 0
vendor_id : GenuineIntel
cpu family : 6
model : 8
model name : Pentium III (Coppermine)
stepping : 10
cpu MHz : 999.753
cache size : 256 KB
Physical processor ID : 0
Number of siblings : 1
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
cmov pat pse36 mmx fxsr sse
bogomips : 1985.67
processor : 1
vendor_id : GenuineIntel
cpu family : 6
model : 8
model name : Pentium III (Coppermine)
stepping : 10
cpu MHz : 999.753
cache size : 256 KB
Physical processor ID : 0
Number of siblings : 1
fdiv_bug : no
hlt_bug : no
f00f_bug : no
coma_bug : no
fpu : yes
fpu_exception : yes
cpuid level : 2
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca
cmov pat pse36 mmx fxsr sse
bogomips : 1997.32
7.3 Modules
sg 37644 0 (autoclean)
nfsd 81424 8 (autoclean)
lockd 58800 1 (autoclean) [nfsd]
sunrpc 84604 1 (autoclean) [nfsd lockd]
sk98lin 138624 1
e100 64596 1
iptable_filter 2412 0 (autoclean) (unused)
ip_tables 15640 1 [iptable_filter]
st 31440 0 (unused)
mousedev 5688 1
keybdev 2976 0 (unused)
hid 22404 0 (unused)
input 6240 0 [mousedev keybdev hid]
usb-ohci 22088 0 (unused)
usbcore 80512 1 [hid usb-ohci]
ext3 72960 3
jbd 56752 3 [ext3]
aic7xxx 138452 4
sd_mod 13552 8
scsi_mod 110408 4 [sg st aic7xxx sd_mod]
7.4 Loaded Driver/Hardware Info
0000-001f : dma1
0020-003f : pic1
0040-005f : timer
0060-006f : keyboard
0070-007f : rtc
0080-008f : dma page reg
00a0-00bf : pic2
00c0-00df : dma2
00f0-00ff : fpu
01f0-01f7 : ide0
03c0-03df : vga+
03f6-03f6 : ide0
03f8-03ff : serial(auto)
0700-070f : ServerWorks OSB4 IDE Controller
0700-0707 : ide0
0708-070f : ide1
0cf8-0cff : PCI conf1
2200-223f : Intel Corp. 82557/8/9 [Ethernet Pro 100]
2200-223f : e100
2300-23ff : Adaptec AIC-7892P U160/m
2400-24ff : Adaptec AHA-3960D / AIC-7899A U160/m
2500-25ff : Adaptec AHA-3960D / AIC-7899A U160/m (#2)
2600-26ff : Syskonnect (Schneider & Koch) Gigabit Ethernet
00000000-0009dbff : System RAM
0009dc00-0009ffff : reserved
000a0000-000bffff : Video RAM area
000c0000-000c7fff : Video ROM
000ca000-000ce7ff : Extension ROM
000f0000-000fffff : System ROM
00100000-1ffebc3f : System RAM
00100000-0026af59 : Kernel code
0026af5a-00375f03 : Kernel data
1ffebc40-1ffeffff : ACPI Tables
1fff0000-1fffffff : reserved
efff8000-efffbfff : Syskonnect (Schneider & Koch) Gigabit Ethernet
efffd000-efffdfff : Adaptec AHA-3960D / AIC-7899A U160/m (#2)
efffd000-efffdfff : aic7xxx
efffe000-efffefff : Adaptec AHA-3960D / AIC-7899A U160/m
efffe000-efffefff : aic7xxx
effff000-efffffff : Adaptec AIC-7892P U160/m
effff000-efffffff : aic7xxx
f0000000-f7ffffff : S3 Inc. Savage 4
fea00000-feafffff : Intel Corp. 82557/8/9 [Ethernet Pro 100]
fea00000-feafffff : e100
feb7e000-feb7efff : ServerWorks OSB4/CSB5 OHCI USB Controller
feb7e000-feb7efff : usb-ohci
feb7f000-feb7ffff : Intel Corp. 82557/8/9 [Ethernet Pro 100]
feb7f000-feb7ffff : e100
feb80000-febfffff : S3 Inc. Savage 4
fec00000-ffffffff : reserved
7.5 PCI Information
00:00.0 Host bridge: ServerWorks CNB20LE Host Bridge (rev 06)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort+ >SERR- <PERR-
Latency: 64, cache line size 08
00:00.1 Host bridge: ServerWorks CNB20LE Host Bridge (rev 06)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr+
Stepping- SERR+ FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 64, cache line size 08
00:01.0 VGA compatible controller: S3 Inc. Savage 4 (rev 04) (prog-if 00
[VGA])
Subsystem: IBM: Unknown device 01c5
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR- FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 248 (1000ns min, 63750ns max), cache line size 08
Interrupt: pin A routed to IRQ 0
Region 0: Memory at feb80000 (32-bit, non-prefetchable) [size=512K]
Region 1: Memory at f0000000 (32-bit, prefetchable) [size=128M]
Expansion ROM at <unassigned> [disabled] [size=64K]
Capabilities: [dc] Power Management version 1
Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME(D0-,D1-,D2-
,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
00:02.0 Ethernet controller: Intel Corp. 82557/8/9 [Ethernet Pro 100] (rev 08)
Subsystem: IBM Netfinity 10/100
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
Status: Cap+ 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 64 (2000ns min, 14000ns max), cache line size 08
Interrupt: pin A routed to IRQ 27
Region 0: Memory at feb7f000 (32-bit, non-prefetchable) [size=4K]
Region 1: I/O ports at 2200 [size=64]
Region 2: Memory at fea00000 (32-bit, non-prefetchable) [size=1M]
Expansion ROM at <unassigned> [disabled] [size=1M]
Capabilities: [dc] Power Management version 2
Flags: PMEClk- DSI+ D1+ D2+ AuxCurrent=0mA PME
(D0+,D1+,D2+,D3hot+,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=2 PME-
00:0f.0 ISA bridge: ServerWorks OSB4 South Bridge (rev 50)
Subsystem: ServerWorks OSB4 South Bridge
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 0
00:0f.1 IDE interface: ServerWorks OSB4 IDE Controller (prog-if 8a [Master
SecP PriP])
Control: I/O+ Mem- BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B- ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 64
Region 4: I/O ports at 0700 [size=16]
00:0f.2 USB Controller: ServerWorks OSB4/CSB5 USB Controller (rev 04) (prog-
if 10 [OHCI])
Subsystem: ServerWorks OSB4/CSB5 USB Controller
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr-
Stepping- SERR+ FastB2B-
Status: Cap- 66Mhz- UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 64 (20000ns max), cache line size 08
Interrupt: pin A routed to IRQ 9
Region 0: Memory at feb7e000 (32-bit, non-prefetchable) [size=4K]
01:03.0 SCSI storage controller: Adaptec AIC-7892P U160/m (rev 02)
Subsystem: Adaptec AIC-7892P U160/m
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr+
Stepping- SERR+ FastB2B-
Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 64 (10000ns min, 6250ns max), cache line size 08
Interrupt: pin A routed to IRQ 28
BIST result: 00
Region 0: I/O ports at 2300 [disabled] [size=256]
Region 1: Memory at effff000 (64-bit, non-prefetchable) [size=4K]
Expansion ROM at <unassigned> [disabled] [size=128K]
Capabilities: [dc] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-
,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
01:06.0 SCSI storage controller: Adaptec AHA-3960D / AIC-7899A U160/m (rev 01)
Subsystem: Adaptec AHA-3960D U160/m
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr+
Stepping- SERR+ FastB2B-
Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 64 (10000ns min, 6250ns max), cache line size 08
Interrupt: pin A routed to IRQ 22
BIST result: 00
Region 0: I/O ports at 2400 [disabled] [size=256]
Region 1: Memory at efffe000 (64-bit, non-prefetchable) [size=4K]
Expansion ROM at <unassigned> [disabled] [size=128K]
Capabilities: [dc] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-
,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
01:06.1 SCSI storage controller: Adaptec AHA-3960D / AIC-7899A U160/m (rev 01)
Subsystem: Adaptec AHA-3960D U160/m
Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr+
Stepping- SERR+ FastB2B-
Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 64 (10000ns min, 6250ns max), cache line size 08
Interrupt: pin B routed to IRQ 23
BIST result: 00
Region 0: I/O ports at 2500 [disabled] [size=256]
Region 1: Memory at efffd000 (64-bit, non-prefetchable) [size=4K]
Expansion ROM at <unassigned> [disabled] [size=128K]
Capabilities: [dc] Power Management version 2
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-
,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=0 PME-
01:07.0 Ethernet controller: Syskonnect (Schneider & Koch) Gigabit Ethernet
(rev 12)
Subsystem: Syskonnect (Schneider & Koch) SK-9843 (1000Base-SX single
link)
Control: I/O+ Mem+ BusMaster+ SpecCycle- MemWINV+ VGASnoop- ParErr+
Stepping- SERR+ FastB2B-
Status: Cap+ 66Mhz+ UDF- FastB2B+ ParErr- DEVSEL=medium >TAbort-
<TAbort- <MAbort- >SERR- <PERR-
Latency: 64 (5750ns min, 7750ns max), cache line size 08
Interrupt: pin A routed to IRQ 24
Region 0: Memory at efff8000 (32-bit, non-prefetchable) [size=16K]
Region 1: I/O ports at 2600 [size=256]
Expansion ROM at <unassigned> [disabled] [size=128K]
Capabilities: [48] Power Management version 1
Flags: PMEClk- DSI- D1- D2- AuxCurrent=0mA PME(D0-,D1-,D2-
,D3hot-,D3cold-)
Status: D0 PME-Enable- DSel=0 DScale=1 PME-
Capabilities: [50] Vital Product Data
7.6 SCSI Information
Attached devices:
Host: scsi0 Channel: 00 Id: 00 Lun: 00
Vendor: IBM-PSG Model: DDYS-T36950M M Rev: S9HA
Type: Direct-Access ANSI SCSI revision: 03
Host: scsi0 Channel: 00 Id: 08 Lun: 00
Vendor: IBM Model: YGLv3 S2 Rev: 0
Type: Processor ANSI SCSI revision: 02
Host: scsi1 Channel: 00 Id: 01 Lun: 00
Vendor: Adaptec Model: DuraStor 6200S Rev: L421
Type: Direct-Access ANSI SCSI revision: 03
Host: scsi2 Channel: 00 Id: 00 Lun: 00
Vendor: M4 DATA Model: MagFile Rev: 3.01
Type: Medium Changer ANSI SCSI revision: 02
Host: scsi2 Channel: 00 Id: 01 Lun: 00
Vendor: QUANTUM Model: SDLT320 Rev: 2E2E
Type: Sequential-Access ANSI SCSI revision: 02
Host: scsi2 Channel: 00 Id: 02 Lun: 00
Vendor: QUANTUM Model: SDLT320 Rev: 2E2E
Type: Sequential-Access ANSI SCSI revision: 02
7.7 N/a
next reply other threads:[~2003-01-30 19:58 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2003-01-30 20:07 James Bourne [this message]
-- strict thread matches above, loose matches on Subject: below --
2003-01-30 22:05 PROBLEM: drivers/scsi/sd.c - Incorrect Reporting of Blocks and Capacity of Large SCSI Disk Arrays Andries.Brouwer
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=20030130200705.M57065@fsm.com.au \
--to=james@fsm.com.au \
--cc=linux-kernel@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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.