svn commit: r187541 - in stable/6/sys: . dev/mfi

John Baldwin jhb at FreeBSD.org
Wed Jan 21 09:16:04 PST 2009


Author: jhb
Date: Wed Jan 21 17:16:03 2009
New Revision: 187541
URL: http://svn.freebsd.org/changeset/base/187541

Log:
  MFC: Fix the maximum transfer size for mfi(4) disk devices to not exceed
  the maximum number of scatter/gather elements supported in the bus dma tag.

Modified:
  stable/6/sys/   (props changed)
  stable/6/sys/dev/mfi/mfi_disk.c

Modified: stable/6/sys/dev/mfi/mfi_disk.c
==============================================================================
--- stable/6/sys/dev/mfi/mfi_disk.c	Wed Jan 21 17:13:31 2009	(r187540)
+++ stable/6/sys/dev/mfi/mfi_disk.c	Wed Jan 21 17:16:03 2009	(r187541)
@@ -136,7 +136,8 @@ mfi_disk_attach(device_t dev)
 
 	sc->ld_disk = disk_alloc();
 	sc->ld_disk->d_drv1 = sc;
-	sc->ld_disk->d_maxsize = sc->ld_controller->mfi_max_io * secsize;
+	sc->ld_disk->d_maxsize = min(sc->ld_controller->mfi_max_io * secsize,
+	    (sc->ld_controller->mfi_max_sge - 1) * PAGE_SIZE);
 	sc->ld_disk->d_name = "mfid";
 	sc->ld_disk->d_open = mfi_disk_open;
 	sc->ld_disk->d_close = mfi_disk_close;


More information about the svn-src-all mailing list