diff options
| author | Scott Long <scottl@FreeBSD.org> | 2001-03-07 08:37:49 +0000 |
|---|---|---|
| committer | Scott Long <scottl@FreeBSD.org> | 2001-03-07 08:37:49 +0000 |
| commit | 8ae73164abfe7cbcf234b07440f5ffa664a71333 (patch) | |
| tree | 81cdd56b12dd18ef9322600f79e4834bf4d8dd3b /sys/dev/aac | |
| parent | 5295bd59dcfb641cd651031b62cfbe7b3fd96e41 (diff) | |
Notes
Diffstat (limited to 'sys/dev/aac')
| -rw-r--r-- | sys/dev/aac/aac_disk.c | 15 |
1 files changed, 4 insertions, 11 deletions
diff --git a/sys/dev/aac/aac_disk.c b/sys/dev/aac/aac_disk.c index 1505a6adeec5..23287adcde09 100644 --- a/sys/dev/aac/aac_disk.c +++ b/sys/dev/aac/aac_disk.c @@ -219,8 +219,6 @@ static int aac_disk_attach(device_t dev) { struct aac_disk *sc = (struct aac_disk *)device_get_softc(dev); - int sgspace; - int maxsg; debug_called(4); @@ -258,16 +256,11 @@ aac_disk_attach(device_t dev) disks_registered++; #endif - /* - * We can calculate the maximum number of s/g entries based on the size of the - * FIB and the command structures packed within it. + /* + * The adapters seem to have a 64K size limit on the max I/O size. Set + * our size on accordance. */ - sgspace = (sizeof(struct aac_fib) - sizeof(struct aac_fib_header) - - imax(sizeof(struct aac_blockwrite), sizeof(struct aac_blockread))); - maxsg = (sgspace - sizeof(struct aac_sg_table)) / sizeof(struct aac_sg_entry); - - /* set the maximum I/O size to the theoretical worst maximum allowed by the S/G list size */ - sc->ad_dev_t->si_iosize_max = (maxsg - 1) * PAGE_SIZE; + sc->ad_dev_t->si_iosize_max = 65536; return (0); } |
