PERFORCE change 60937 for review
Julian Elischer
julian at FreeBSD.org
Fri Sep 3 02:24:13 PDT 2004
http://perforce.freebsd.org/chv.cgi?CH=60937
Change 60937 by julian at julian_ref on 2004/09/03 09:23:33
IFC at 60936
Affected files ...
.. //depot/projects/nsched/sys/dev/ata/ata-chipset.c#12 integrate
.. //depot/projects/nsched/sys/dev/iir/iir.c#3 integrate
.. //depot/projects/nsched/sys/kern/sched_4bsd.c#35 integrate
Differences ...
==== //depot/projects/nsched/sys/dev/ata/ata-chipset.c#12 (text+ko) ====
@@ -27,7 +27,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.85 2004/09/03 07:37:53 sos Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ata/ata-chipset.c,v 1.86 2004/09/03 08:23:04 sos Exp $");
#include "opt_ata.h"
#include <sys/param.h>
@@ -1515,14 +1515,19 @@
ATA_OUTL(ctlr->r_res2, (atadev->channel->unit + 1) << 2, 0x00000001);
- if (command != ATA_READ_DMA && command != ATA_WRITE_DMA)
+ switch (command) {
+ default:
return ata_generic_command(atadev, command, lba, count, feature);
- if (command == ATA_READ_DMA)
+ case ATA_READ_DMA:
wordp[0] = htole32(0x04 | ((atadev->channel->unit+1)<<16) | (0x00<<24));
- if (command == ATA_WRITE_DMA)
+ break;
+
+ case ATA_WRITE_DMA:
wordp[0] = htole32(0x00 | ((atadev->channel->unit+1)<<16) | (0x00<<24));
- wordp[1] = atadev->channel->dma->mdmatab;
+ break;
+ }
+ wordp[1] = htole32(atadev->channel->dma->mdmatab);
wordp[2] = 0;
ata_promise_apkt((u_int8_t*)wordp, atadev, command, lba, count, feature);
==== //depot/projects/nsched/sys/dev/iir/iir.c#3 (text+ko) ====
@@ -43,7 +43,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/iir/iir.c,v 1.10 2004/05/19 17:46:34 scottl Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/iir/iir.c,v 1.11 2004/09/03 08:44:23 scottl Exp $");
#define _IIR_C_
@@ -874,13 +874,7 @@
}
splx(s);
} else {
- struct bus_dma_segment seg;
-
- /* Pointer to physical buffer */
- seg.ds_addr =
- (bus_addr_t)ccb->csio.data_ptr;
- seg.ds_len = ccb->csio.dxfer_len;
- gdtexecuteccb(gccb, &seg, 1, 0);
+ panic("iir: CAM_DATA_PHYS not supported");
}
} else {
struct bus_dma_segment *segs;
@@ -989,13 +983,7 @@
}
splx(s);
} else {
- struct bus_dma_segment seg;
-
- /* Pointer to physical buffer */
- seg.ds_addr =
- (bus_addr_t)ccb->csio.data_ptr;
- seg.ds_len = ccb->csio.dxfer_len;
- gdtexecuteccb(gccb, &seg, 1, 0);
+ panic("iir: CAM_DATA_PHYS not supported");
}
} else {
struct bus_dma_segment *segs;
==== //depot/projects/nsched/sys/kern/sched_4bsd.c#35 (text+ko) ====
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/kern/sched_4bsd.c,v 1.54 2004/09/03 08:19:31 julian Exp $");
+__FBSDID("$FreeBSD: src/sys/kern/sched_4bsd.c,v 1.56 2004/09/03 09:19:49 julian Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -152,7 +152,9 @@
static void maybe_resched(struct thread *td);
static void updatepri(struct ksegrp *kg);
static void resetpriority(struct ksegrp *kg);
+#ifdef SMP
static int forward_wakeup(int cpunum);
+#endif
static struct kproc_desc sched_kp = {
"schedcpu",
@@ -212,6 +214,7 @@
0, sizeof sched_quantum, sysctl_kern_quantum, "I",
"Roundrobin scheduling quantum in microseconds");
+#ifdef SMP
/* Enable forwarding of wakeups to all other cpus */
SYSCTL_NODE(_kern_sched, OID_AUTO, ipiwakeup, CTLFLAG_RD, NULL, "Kernel SMP");
@@ -249,6 +252,7 @@
SYSCTL_INT(_kern_sched_ipiwakeup, OID_AUTO, htt2, CTLFLAG_RW,
&forward_wakeup_use_htt, 0,
"account for htt");
+#endif
/*
* Arrange to reschedule if necessary, taking the priorities and
@@ -802,6 +806,7 @@
setrunqueue(td, SRQ_BORING);
}
+#ifdef SMP
/* enable HTT_2 if you have a 2-way HTT cpu.*/
static int
forward_wakeup(int cpunum)
@@ -888,6 +893,7 @@
printf("forward_wakeup: Idle processor not found\n");
return (0);
}
+#endif
void
sched_add(struct thread *td, int flags)
More information about the p4-projects
mailing list