freebsd-skq/sys/dev/aic7xxx
scottl e9f0701090 Up until now, the free SCB pool received only a small initial allocation,
and new SCBs were allocated on demand later if needed.  This has two
problems.  First, allocating SCBs involves allocating contiguous memory,
and if memory is exhausted then the VM will try to page out to satisfy
the request, leading to recursion and deadlock.  The second problem is
that it can cause lock order reversals due to parts of the VM still being
under Giant.

Fix the problem be allocating the full pool at driver attach, when it is
safe to do so.
2007-04-19 18:53:52 +00:00
..
aicasm
ahc_eisa.c
ahc_isa.c
ahc_pci.c
ahd_pci.c
aic7xxx_93cx6.c
aic7xxx_93cx6.h
aic7xxx_inline.h Up until now, the free SCB pool received only a small initial allocation, 2007-04-19 18:53:52 +00:00
aic7xxx_osm.c
aic7xxx_osm.h
aic7xxx_pci.c
aic7xxx.c Up until now, the free SCB pool received only a small initial allocation, 2007-04-19 18:53:52 +00:00
aic7xxx.h Up until now, the free SCB pool received only a small initial allocation, 2007-04-19 18:53:52 +00:00
aic7xxx.reg
aic7xxx.seq
aic79xx_inline.h
aic79xx_osm.c
aic79xx_osm.h
aic79xx_pci.c
aic79xx.c Up until now, the free SCB pool received only a small initial allocation, 2007-04-19 18:53:52 +00:00
aic79xx.h Up until now, the free SCB pool received only a small initial allocation, 2007-04-19 18:53:52 +00:00
aic79xx.reg
aic79xx.seq
aic7770.c
aic_osm_lib.c
aic_osm_lib.h