mirror of
https://git.FreeBSD.org/src.git
synced 2025-01-23 16:01:42 +00:00
Fix a [start,end] vs [start,count] botch that corrupted the resource
manager and prevented IOPort allocation beyond the first EISA slot from working. subr_rman.c should have trapped this on the way into the system rather than tripping over the wreckage. Head banged into wall repeatedly by: "Matthew N. Dodd" <winter@jurai.net>
This commit is contained in:
parent
5095f1917a
commit
578de0426e
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=47451
@ -28,7 +28,7 @@
|
|||||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
* SUCH DAMAGE.
|
* SUCH DAMAGE.
|
||||||
*
|
*
|
||||||
* $Id: eisaconf.c,v 1.43 1999/05/08 21:59:20 dfr Exp $
|
* $Id: eisaconf.c,v 1.44 1999/05/18 21:03:30 peter Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "opt_eisa.h"
|
#include "opt_eisa.h"
|
||||||
@ -310,7 +310,7 @@ eisa_alloc_resource(device_t dev, device_t child, int type, int *rid,
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
start = resv->addr;
|
start = resv->addr;
|
||||||
end = resv->size - 1;
|
end = resv->addr + (resv->size - 1);
|
||||||
count = resv->size;
|
count = resv->size;
|
||||||
rvp = &resv->res;
|
rvp = &resv->res;
|
||||||
}
|
}
|
||||||
@ -325,7 +325,7 @@ eisa_alloc_resource(device_t dev, device_t child, int type, int *rid,
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
start = resv->addr;
|
start = resv->addr;
|
||||||
end = resv->size - 1;
|
end = resv->addr + (resv->size - 1);
|
||||||
count = resv->size;
|
count = resv->size;
|
||||||
rvp = &resv->res;
|
rvp = &resv->res;
|
||||||
}
|
}
|
||||||
|
@ -28,7 +28,7 @@
|
|||||||
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
* OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
* SUCH DAMAGE.
|
* SUCH DAMAGE.
|
||||||
*
|
*
|
||||||
* $Id: eisaconf.c,v 1.43 1999/05/08 21:59:20 dfr Exp $
|
* $Id: eisaconf.c,v 1.44 1999/05/18 21:03:30 peter Exp $
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#include "opt_eisa.h"
|
#include "opt_eisa.h"
|
||||||
@ -310,7 +310,7 @@ eisa_alloc_resource(device_t dev, device_t child, int type, int *rid,
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
start = resv->addr;
|
start = resv->addr;
|
||||||
end = resv->size - 1;
|
end = resv->addr + (resv->size - 1);
|
||||||
count = resv->size;
|
count = resv->size;
|
||||||
rvp = &resv->res;
|
rvp = &resv->res;
|
||||||
}
|
}
|
||||||
@ -325,7 +325,7 @@ eisa_alloc_resource(device_t dev, device_t child, int type, int *rid,
|
|||||||
return 0;
|
return 0;
|
||||||
|
|
||||||
start = resv->addr;
|
start = resv->addr;
|
||||||
end = resv->size - 1;
|
end = resv->addr + (resv->size - 1);
|
||||||
count = resv->size;
|
count = resv->size;
|
||||||
rvp = &resv->res;
|
rvp = &resv->res;
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user