ath0: failed to allocate descriptors: 12

Ian Dowse iedowse at maths.tcd.ie
Sat Mar 19 13:02:52 PST 2005


In message <4239B493.40608 at errno.com>, Sam Leffler writes:
>Memmory is too fragmented to allocate the descriptors in one chunk.  I 
>changed this logic in current to allocate separate blocks for the 
>tx+rx+beacon descriptors; I'll look at backporting that (though it's too 
>risky to get into 5.4).

I've always got it to work with the patch below - I seem to remember
calculating that 32k rather than 256k was all that was needed for
the old descriptor arrangement, but you probably know the real
reason for the larger allocation.

Ian

Index: if_ath_pci.c
===================================================================
RCS file: /dump/FreeBSD-CVS/src/sys/dev/ath/if_ath_pci.c,v
retrieving revision 1.8.2.2
diff -u -r1.8.2.2 if_ath_pci.c
--- if_ath_pci.c	7 Feb 2005 18:01:28 -0000	1.8.2.2
+++ if_ath_pci.c	19 Mar 2005 20:57:54 -0000
@@ -197,7 +197,7 @@
 			       BUS_SPACE_MAXADDR_32BIT,	/* lowaddr */
 			       BUS_SPACE_MAXADDR,	/* highaddr */
 			       NULL, NULL,		/* filter, filterarg */
-			       0x3ffff,			/* maxsize XXX */
+			       0x7fff,			/* maxsize XXX */
 			       ATH_MAX_SCATTER,		/* nsegments */
 			       0xffff,			/* maxsegsize XXX */
 			       BUS_DMA_ALLOCNOW,	/* flags */





More information about the freebsd-stable mailing list