-CURRENT and -STABLE fails on IBM R30 in agp_ali.c
Eric Anholt
eta at lclark.edu
Tue Nov 11 13:26:26 PST 2003
On Mon, 2003-11-10 at 13:50, Bjoern Fischer wrote:
> Hello,
>
> there is a problem in ali_agp.c (both, -CURRENT and -STABLE): If I
> boot the generic kernel, it panics in agp_ali.c, when it tries to
> allocate memory for the gatt. Some simlpe tests showed, that the
> initial aperture size is reported as zero by the device:
>
> static int
> agp_ali_attach(device_t dev)
> {
> struct agp_ali_softc *sc = device_get_softc(dev);
> struct agp_gatt *gatt;
> int error;
>
> error = agp_generic_attach(dev);
> if (error)
> return error;
>
> sc->initial_aperture = AGP_GET_APERTURE(dev);
>
> This is zero---------------------^^^^^^
>
> for (;;) {
> gatt = agp_alloc_gatt(dev);
> if (gatt)
> break;
>
> /*
> * Probably contigmalloc failure. Try reducing the
> * aperture so that the gatt size reduces.
> */
> if (AGP_SET_APERTURE(dev, AGP_GET_APERTURE(dev) / 2)) {
> agp_generic_detach(dev);
> return ENOMEM;
> }
> }
> sc->gatt = gatt;
>
> /* Install the gatt. */
>
> Since I don't have a machine ready running -CURRENT, I can't really
> debug this. How can I disable agp0 on boot time?
Would this be appropriate to commit to AGP, to disable the ali agp in
case it reports 0 size (perhaps something in the BIOS has disabled it?)
and to have agp_alloc_gatt() just fail instead of panicing in
contigmalloc if the aperture size is 0?
--
Eric Anholt eta at lclark.edu
http://people.freebsd.org/~anholt/ anholt at FreeBSD.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: agp-alifix.diff
Type: text/x-patch
Size: 1053 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20031111/eaa3528d/agp-alifix.bin
More information about the freebsd-current
mailing list