PERFORCE change 80088 for review
John Baldwin
jhb at FreeBSD.org
Wed Jul 13 18:25:46 GMT 2005
http://perforce.freebsd.org/chv.cgi?CH=80088
Change 80088 by jhb at jhb_slimer on 2005/07/13 18:25:40
IFC @80086.
Affected files ...
.. //depot/projects/smpng/sys/alpha/alpha/vm_machdep.c#41 integrate
.. //depot/projects/smpng/sys/amd64/amd64/sys_machdep.c#8 integrate
.. //depot/projects/smpng/sys/amd64/amd64/vm_machdep.c#28 integrate
.. //depot/projects/smpng/sys/amd64/isa/clock.c#15 integrate
.. //depot/projects/smpng/sys/arm/arm/vm_machdep.c#14 integrate
.. //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#23 integrate
.. //depot/projects/smpng/sys/compat/svr4/svr4.h#4 integrate
.. //depot/projects/smpng/sys/compat/svr4/svr4_proto.h#9 integrate
.. //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#24 integrate
.. //depot/projects/smpng/sys/compat/svr4/svr4_syscall.h#8 integrate
.. //depot/projects/smpng/sys/compat/svr4/svr4_syscallnames.c#8 integrate
.. //depot/projects/smpng/sys/compat/svr4/svr4_sysent.c#8 integrate
.. //depot/projects/smpng/sys/compat/svr4/syscalls.master#9 integrate
.. //depot/projects/smpng/sys/conf/files#143 integrate
.. //depot/projects/smpng/sys/conf/newvers.sh#18 integrate
.. //depot/projects/smpng/sys/dev/advansys/adv_isa.c#10 integrate
.. //depot/projects/smpng/sys/dev/auxio/auxio.c#4 integrate
.. //depot/projects/smpng/sys/dev/cp/if_cp.c#12 integrate
.. //depot/projects/smpng/sys/dev/ctau/if_ct.c#14 integrate
.. //depot/projects/smpng/sys/dev/cx/if_cx.c#18 integrate
.. //depot/projects/smpng/sys/dev/ed/if_ed_pccard.c#30 integrate
.. //depot/projects/smpng/sys/dev/em/README#10 integrate
.. //depot/projects/smpng/sys/dev/ep/if_epvar.h#11 integrate
.. //depot/projects/smpng/sys/dev/fb/creator.c#8 integrate
.. //depot/projects/smpng/sys/dev/fb/machfb.c#3 integrate
.. //depot/projects/smpng/sys/dev/hme/if_hme_pci.c#19 integrate
.. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_amd.c#4 integrate
.. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_logging.c#3 integrate
.. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_mod.c#4 integrate
.. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_piv.c#3 integrate
.. //depot/projects/smpng/sys/dev/hwpmc/hwpmc_ppro.c#3 integrate
.. //depot/projects/smpng/sys/dev/iwi/if_iwi.c#6 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpilib/fc_log.h#4 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi.h#5 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_cnfg.h#5 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_fc.h#4 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_init.h#5 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_ioc.h#5 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_lan.h#4 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_raid.h#5 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_targ.h#4 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpilib/mpi_type.h#6 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpt.c#8 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpt.h#5 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpt_cam.c#1 branch
.. //depot/projects/smpng/sys/dev/mpt/mpt_cam.h#1 branch
.. //depot/projects/smpng/sys/dev/mpt/mpt_debug.c#7 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpt_freebsd.c#13 delete
.. //depot/projects/smpng/sys/dev/mpt/mpt_freebsd.h#7 delete
.. //depot/projects/smpng/sys/dev/mpt/mpt_pci.c#13 integrate
.. //depot/projects/smpng/sys/dev/mpt/mpt_raid.c#1 branch
.. //depot/projects/smpng/sys/dev/mpt/mpt_raid.h#1 branch
.. //depot/projects/smpng/sys/dev/mpt/mpt_reg.h#1 branch
.. //depot/projects/smpng/sys/dev/pccard/pccard.c#36 integrate
.. //depot/projects/smpng/sys/dev/pccard/pccard_cis.c#20 integrate
.. //depot/projects/smpng/sys/dev/pccard/pccard_cis.h#4 integrate
.. //depot/projects/smpng/sys/dev/pccard/pccarddevs#47 integrate
.. //depot/projects/smpng/sys/dev/pccard/pccardvar.h#23 integrate
.. //depot/projects/smpng/sys/dev/ral/if_ral.c#6 integrate
.. //depot/projects/smpng/sys/dev/sn/if_sn.c#21 integrate
.. //depot/projects/smpng/sys/dev/sn/if_sn_pccard.c#17 integrate
.. //depot/projects/smpng/sys/dev/sn/ositech.h#1 branch
.. //depot/projects/smpng/sys/dev/sound/isa/mss.c#23 integrate
.. //depot/projects/smpng/sys/dev/usb/if_ural.c#5 integrate
.. //depot/projects/smpng/sys/dev/wi/if_wi_pccard.c#35 integrate
.. //depot/projects/smpng/sys/dev/xe/if_xe.c#22 integrate
.. //depot/projects/smpng/sys/dev/xe/if_xe_pccard.c#19 integrate
.. //depot/projects/smpng/sys/fs/udf/udf_vnops.c#31 integrate
.. //depot/projects/smpng/sys/geom/gate/g_gate.c#12 integrate
.. //depot/projects/smpng/sys/geom/gate/g_gate.h#4 integrate
.. //depot/projects/smpng/sys/gnu/fs/ext2fs/ext2_vnops.c#2 integrate
.. //depot/projects/smpng/sys/i386/i386/exception.s#24 integrate
.. //depot/projects/smpng/sys/i386/i386/machdep.c#97 integrate
.. //depot/projects/smpng/sys/i386/i386/trap.c#81 integrate
.. //depot/projects/smpng/sys/i386/i386/vm_machdep.c#70 integrate
.. //depot/projects/smpng/sys/i386/isa/clock.c#44 integrate
.. //depot/projects/smpng/sys/i386/pci/pci_pir.c#9 integrate
.. //depot/projects/smpng/sys/ia64/ia64/vm_machdep.c#48 integrate
.. //depot/projects/smpng/sys/kern/kern_thr.c#26 integrate
.. //depot/projects/smpng/sys/modules/Makefile#100 integrate
.. //depot/projects/smpng/sys/modules/ed/Makefile#6 integrate
.. //depot/projects/smpng/sys/modules/ep/Makefile#7 integrate
.. //depot/projects/smpng/sys/modules/mpt/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/sound/sound/Makefile#2 integrate
.. //depot/projects/smpng/sys/modules/syscons/Makefile#4 integrate
.. //depot/projects/smpng/sys/net/bpf.h#15 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_crypto.c#7 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_crypto_ccmp.c#4 integrate
.. //depot/projects/smpng/sys/net80211/ieee80211_input.c#21 integrate
.. //depot/projects/smpng/sys/pc98/cbus/clock.c#3 integrate
.. //depot/projects/smpng/sys/pc98/pc98/machdep.c#3 integrate
.. //depot/projects/smpng/sys/pci/if_xl.c#58 integrate
.. //depot/projects/smpng/sys/powerpc/powerpc/vm_machdep.c#44 integrate
.. //depot/projects/smpng/sys/sparc64/creator/creator.h#5 integrate
.. //depot/projects/smpng/sys/sparc64/creator/creator_upa.c#9 integrate
.. //depot/projects/smpng/sys/sparc64/sparc64/vm_machdep.c#50 integrate
.. //depot/projects/smpng/sys/sys/param.h#83 integrate
.. //depot/projects/smpng/sys/sys/pmc.h#4 integrate
.. //depot/projects/smpng/sys/sys/proc.h#146 integrate
Differences ...
==== //depot/projects/smpng/sys/alpha/alpha/vm_machdep.c#41 (text+ko) ====
@@ -67,7 +67,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/alpha/alpha/vm_machdep.c,v 1.109 2005/04/23 02:32:30 davidxu Exp $");
+__FBSDID("$FreeBSD: src/sys/alpha/alpha/vm_machdep.c,v 1.110 2005/07/10 23:31:09 davidxu Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -360,7 +360,7 @@
tf->tf_regs[FRAME_FLAGS] = 0; /* full restore */
}
-void
+int
cpu_set_user_tls(struct thread *td, void *tls_base)
{
@@ -368,6 +368,7 @@
td->td_pcb->pcb_hw.apcb_unique = (unsigned long)tls_base;
else
alpha_pal_wrunique((uintptr_t)tls_base);
+ return (0);
}
/*
==== //depot/projects/smpng/sys/amd64/amd64/sys_machdep.c#8 (text+ko) ====
@@ -31,7 +31,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/sys_machdep.c,v 1.89 2005/04/14 16:57:58 peter Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/sys_machdep.c,v 1.90 2005/07/10 23:31:10 davidxu Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -42,6 +42,10 @@
#include <machine/sysarch.h>
#include <machine/pcb.h>
+#include <vm/vm.h>
+#include <vm/pmap.h>
+#include <machine/vmparam.h>
+
#ifndef _SYS_SYSPROTO_H_
struct sysarch_args {
int op;
@@ -57,6 +61,7 @@
int error = 0;
struct pcb *pcb = curthread->td_pcb;
uint32_t i386base;
+ uint64_t a64base;
switch(uap->op) {
case I386_GET_FSBASE:
@@ -65,9 +70,12 @@
break;
case I386_SET_FSBASE:
error = copyin(uap->parms, &i386base, sizeof(i386base));
- pcb->pcb_fsbase = i386base;
- if (!error)
- wrmsr(MSR_FSBASE, pcb->pcb_fsbase);
+ if (!error) {
+ critical_enter();
+ wrmsr(MSR_FSBASE, i386base);
+ pcb->pcb_fsbase = i386base;
+ critical_exit();
+ }
break;
case I386_GET_GSBASE:
i386base = pcb->pcb_gsbase;
@@ -75,18 +83,29 @@
break;
case I386_SET_GSBASE:
error = copyin(uap->parms, &i386base, sizeof(i386base));
- pcb->pcb_gsbase = i386base;
- if (!error)
- wrmsr(MSR_KGSBASE, pcb->pcb_gsbase);
+ if (!error) {
+ critical_enter();
+ wrmsr(MSR_KGSBASE, i386base);
+ pcb->pcb_gsbase = i386base;
+ critical_exit();
+ }
break;
case AMD64_GET_FSBASE:
error = copyout(&pcb->pcb_fsbase, uap->parms, sizeof(pcb->pcb_fsbase));
break;
case AMD64_SET_FSBASE:
- error = copyin(uap->parms, &pcb->pcb_fsbase, sizeof(pcb->pcb_fsbase));
- if (!error)
- wrmsr(MSR_FSBASE, pcb->pcb_fsbase);
+ error = copyin(uap->parms, &a64base, sizeof(a64base));
+ if (!error) {
+ if (a64base < VM_MAXUSER_ADDRESS) {
+ critical_enter();
+ wrmsr(MSR_FSBASE, a64base);
+ pcb->pcb_fsbase = a64base;
+ critical_exit();
+ } else {
+ error = EINVAL;
+ }
+ }
break;
case AMD64_GET_GSBASE:
@@ -94,9 +113,17 @@
break;
case AMD64_SET_GSBASE:
- error = copyin(uap->parms, &pcb->pcb_gsbase, sizeof(pcb->pcb_gsbase));
- if (!error)
- wrmsr(MSR_KGSBASE, pcb->pcb_gsbase);
+ error = copyin(uap->parms, &a64base, sizeof(a64base));
+ if (!error) {
+ if (a64base < VM_MAXUSER_ADDRESS) {
+ critical_enter();
+ wrmsr(MSR_KGSBASE, a64base);
+ pcb->pcb_gsbase = a64base;
+ critical_exit();
+ } else {
+ error = EINVAL;
+ }
+ }
break;
default:
==== //depot/projects/smpng/sys/amd64/amd64/vm_machdep.c#28 (text+ko) ====
@@ -41,7 +41,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.247 2005/06/24 00:29:53 peter Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/amd64/vm_machdep.c,v 1.248 2005/07/10 23:31:10 davidxu Exp $");
#include "opt_isa.h"
#include "opt_cpu.h"
@@ -341,10 +341,13 @@
td->td_frame->tf_rdi = (register_t)arg;
}
-void
+int
cpu_set_user_tls(struct thread *td, void *tls_base)
{
+ if ((u_int64_t)tls_base >= VM_MAXUSER_ADDRESS)
+ return (EINVAL);
+
if (td == curthread) {
critical_enter();
td->td_pcb->pcb_fsbase = (register_t)tls_base;
@@ -353,6 +356,7 @@
} else {
td->td_pcb->pcb_fsbase = (register_t)tls_base;
}
+ return (0);
}
#ifdef SMP
==== //depot/projects/smpng/sys/amd64/isa/clock.c#15 (text+ko) ====
@@ -33,7 +33,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/amd64/isa/clock.c,v 1.221 2005/07/05 20:13:11 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/amd64/isa/clock.c,v 1.222 2005/07/13 15:43:19 jhb Exp $");
/*
* Routines to handle clock hardware.
@@ -101,6 +101,7 @@
#endif
u_int timer_freq = TIMER_FREQ;
int timer0_max_count;
+int timer0_real_max_count;
int wall_cmos_clock; /* wall CMOS clock assumed if != 0 */
struct mtx clock_lock;
#define RTC_LOCK mtx_lock_spin(&clock_lock)
@@ -108,7 +109,6 @@
static int beeping = 0;
static const u_char daysinmonth[] = {31,28,31,30,31,30,31,31,30,31,30,31};
-static u_int hardclock_max_count;
static struct intsrc *i8254_intsrc;
static u_int32_t i8254_lastcount;
static u_int32_t i8254_offset;
@@ -517,21 +517,24 @@
static void
set_timer_freq(u_int freq, int intr_freq)
{
- int new_timer0_max_count;
+ int new_timer0_real_max_count;
i8254_timecounter.tc_frequency = freq;
mtx_lock_spin(&clock_lock);
timer_freq = freq;
- new_timer0_max_count = hardclock_max_count = TIMER_DIV(intr_freq);
- if (using_lapic_timer) {
+ if (using_lapic_timer)
+ new_timer0_real_max_count = 0x10000;
+ else
+ new_timer0_real_max_count = TIMER_DIV(intr_freq);
+ if (new_timer0_real_max_count != timer0_real_max_count) {
+ timer0_real_max_count = new_timer0_real_max_count;
+ if (timer0_real_max_count == 0x10000)
+ timer0_max_count = 0xffff;
+ else
+ timer0_max_count = timer0_real_max_count;
outb(TIMER_MODE, TIMER_SEL0 | TIMER_RATEGEN | TIMER_16BIT);
- outb(TIMER_CNTR0, 0);
- outb(TIMER_CNTR0, 0);
- } else if (new_timer0_max_count != timer0_max_count) {
- timer0_max_count = new_timer0_max_count;
- outb(TIMER_MODE, TIMER_SEL0 | TIMER_RATEGEN | TIMER_16BIT);
- outb(TIMER_CNTR0, timer0_max_count & 0xff);
- outb(TIMER_CNTR0, timer0_max_count >> 8);
+ outb(TIMER_CNTR0, timer0_real_max_count & 0xff);
+ outb(TIMER_CNTR0, timer0_real_max_count >> 8);
}
mtx_unlock_spin(&clock_lock);
}
@@ -826,19 +829,8 @@
static unsigned
i8254_simple_get_timecount(struct timecounter *tc)
{
- u_int count;
- u_int high, low;
- mtx_lock_spin(&clock_lock);
-
- /* Select timer0 and latch counter value. */
- outb(TIMER_MODE, TIMER_SEL0 | TIMER_LATCH);
-
- low = inb(TIMER_CNTR0);
- high = inb(TIMER_CNTR0);
- count = 0xffff - ((high << 8) | low);
- mtx_unlock_spin(&clock_lock);
- return (count);
+ return (timer0_max_count - getit());
}
static unsigned
==== //depot/projects/smpng/sys/arm/arm/vm_machdep.c#14 (text+ko) ====
@@ -41,7 +41,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/arm/arm/vm_machdep.c,v 1.16 2005/06/23 11:37:41 cognet Exp $");
+__FBSDID("$FreeBSD: src/sys/arm/arm/vm_machdep.c,v 1.17 2005/07/10 23:31:10 davidxu Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -297,7 +297,7 @@
tf->tf_spsr = PSR_USR32_MODE;
}
-void
+int
cpu_set_user_tls(struct thread *td, void *tls_base)
{
@@ -308,6 +308,7 @@
*(void **)ARM_TP_ADDRESS = tls_base;
critical_exit();
}
+ return (0);
}
void
==== //depot/projects/smpng/sys/compat/freebsd32/freebsd32_misc.c#23 (text+ko) ====
@@ -25,7 +25,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.38 2005/07/07 18:17:55 jhb Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/freebsd32/freebsd32_misc.c,v 1.39 2005/07/13 15:12:19 jhb Exp $");
#include "opt_compat.h"
@@ -397,6 +397,7 @@
start = addr;
end = addr + len;
+ mtx_lock(&Giant);
if (start != trunc_page(start)) {
error = freebsd32_mmap_partial(td, start,
round_page(start), prot,
@@ -427,11 +428,14 @@
prot |= VM_PROT_WRITE;
map = &td->td_proc->p_vmspace->vm_map;
rv = vm_map_remove(map, start, end);
- if (rv != KERN_SUCCESS)
+ if (rv != KERN_SUCCESS) {
+ mtx_unlock(&Giant);
return (EINVAL);
+ }
rv = vm_map_find(map, 0, 0,
&start, end - start, FALSE,
prot, VM_PROT_ALL, 0);
+ mtx_unlock(&Giant);
if (rv != KERN_SUCCESS)
return (EINVAL);
r.fd = fd;
@@ -445,6 +449,7 @@
td->td_retval[0] = addr;
return (0);
}
+ mtx_unlock(&Giant);
if (end == start) {
/*
* After dealing with the ragged ends, there
==== //depot/projects/smpng/sys/compat/svr4/svr4.h#4 (text+ko) ====
@@ -24,7 +24,7 @@
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*
- * $FreeBSD: src/sys/compat/svr4/svr4.h,v 1.8 2005/01/05 22:34:36 imp Exp $
+ * $FreeBSD: src/sys/compat/svr4/svr4.h,v 1.9 2005/07/13 15:14:33 jhb Exp $
*/
#include "opt_svr4.h"
@@ -35,17 +35,5 @@
extern struct sysentvec svr4_sysvec;
#define COMPAT_SVR4_SOLARIS2
-#define KTRACE
-
-/* These are currently unimplemented (see svr4_ipc.c) */
-#if defined(SYSVMSG)
-# undef SYSVMSG
-#endif
-#if defined(SYSVSHM)
-# undef SYSVSHM
-#endif
-#if defined(SYSVSEM)
-# undef SYSVSEM
-#endif
#endif
==== //depot/projects/smpng/sys/compat/svr4/svr4_proto.h#9 (text+ko) ====
@@ -2,8 +2,8 @@
* System call prototypes.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/svr4/svr4_proto.h,v 1.17 2005/05/30 15:20:18 rwatson Exp $
- * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.17 2005/05/30 15:09:17 rwatson Exp
+ * $FreeBSD: src/sys/compat/svr4/svr4_proto.h,v 1.18 2005/07/13 15:14:54 jhb Exp $
+ * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.18 2005/07/13 15:14:33 jhb Exp
*/
#ifndef _SVR4_SYSPROTO_H_
@@ -100,7 +100,6 @@
char signum_l_[PADL_(int)]; int signum; char signum_r_[PADR_(int)];
char handler_l_[PADL_(svr4_sig_t)]; svr4_sig_t handler; char handler_r_[PADR_(svr4_sig_t)];
};
-#if defined(NOTYET)
struct svr4_sys_msgsys_args {
char what_l_[PADL_(int)]; int what; char what_r_[PADR_(int)];
char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)];
@@ -108,12 +107,24 @@
char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)];
char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)];
};
-#else
-#endif
struct svr4_sys_sysarch_args {
char op_l_[PADL_(int)]; int op; char op_r_[PADR_(int)];
char a1_l_[PADL_(void *)]; void * a1; char a1_r_[PADR_(void *)];
};
+struct svr4_sys_shmsys_args {
+ char what_l_[PADL_(int)]; int what; char what_r_[PADR_(int)];
+ char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)];
+ char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)];
+ char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)];
+ char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)];
+};
+struct svr4_sys_semsys_args {
+ char what_l_[PADL_(int)]; int what; char what_r_[PADR_(int)];
+ char a2_l_[PADL_(int)]; int a2; char a2_r_[PADR_(int)];
+ char a3_l_[PADL_(int)]; int a3; char a3_r_[PADR_(int)];
+ char a4_l_[PADL_(int)]; int a4; char a4_r_[PADR_(int)];
+ char a5_l_[PADL_(int)]; int a5; char a5_r_[PADR_(int)];
+};
struct svr4_sys_ioctl_args {
char fd_l_[PADL_(int)]; int fd; char fd_r_[PADR_(int)];
char com_l_[PADL_(u_long)]; u_long com; char com_r_[PADR_(u_long)];
@@ -413,11 +424,10 @@
int svr4_sys_pgrpsys(struct thread *, struct svr4_sys_pgrpsys_args *);
int svr4_sys_times(struct thread *, struct svr4_sys_times_args *);
int svr4_sys_signal(struct thread *, struct svr4_sys_signal_args *);
-#if defined(NOTYET)
int svr4_sys_msgsys(struct thread *, struct svr4_sys_msgsys_args *);
-#else
-#endif
int svr4_sys_sysarch(struct thread *, struct svr4_sys_sysarch_args *);
+int svr4_sys_shmsys(struct thread *, struct svr4_sys_shmsys_args *);
+int svr4_sys_semsys(struct thread *, struct svr4_sys_semsys_args *);
int svr4_sys_ioctl(struct thread *, struct svr4_sys_ioctl_args *);
int svr4_sys_utssys(struct thread *, struct svr4_sys_utssys_args *);
int svr4_sys_execve(struct thread *, struct svr4_sys_execve_args *);
@@ -478,18 +488,12 @@
#ifdef COMPAT_43
-#if defined(NOTYET)
-#else
-#endif
#endif /* COMPAT_43 */
#ifdef COMPAT_FREEBSD4
-#if defined(NOTYET)
-#else
-#endif
#endif /* COMPAT_FREEBSD4 */
==== //depot/projects/smpng/sys/compat/svr4/svr4_stream.c#24 (text+ko) ====
@@ -36,10 +36,10 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_stream.c,v 1.53 2005/03/23 08:28:06 das Exp $");
+__FBSDID("$FreeBSD: src/sys/compat/svr4/svr4_stream.c,v 1.54 2005/07/13 15:14:33 jhb Exp $");
-#define COMPAT_43 1
-
+#include "opt_compat.h"
+#include "opt_ktrace.h"
#include "opt_mac.h"
#include <sys/param.h>
==== //depot/projects/smpng/sys/compat/svr4/svr4_syscall.h#8 (text+ko) ====
@@ -2,8 +2,8 @@
* System call numbers.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/svr4/svr4_syscall.h,v 1.15 2005/05/30 15:20:18 rwatson Exp $
- * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.17 2005/05/30 15:09:17 rwatson Exp
+ * $FreeBSD: src/sys/compat/svr4/svr4_syscall.h,v 1.16 2005/07/13 15:14:54 jhb Exp $
+ * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.18 2005/07/13 15:14:33 jhb Exp
*/
#define SVR4_SYS_exit 1
@@ -45,6 +45,8 @@
#define SVR4_SYS_svr4_sys_signal 48
#define SVR4_SYS_svr4_sys_msgsys 49
#define SVR4_SYS_svr4_sys_sysarch 50
+#define SVR4_SYS_svr4_sys_shmsys 52
+#define SVR4_SYS_svr4_sys_semsys 53
#define SVR4_SYS_svr4_sys_ioctl 54
#define SVR4_SYS_svr4_sys_utssys 57
#define SVR4_SYS_fsync 58
==== //depot/projects/smpng/sys/compat/svr4/svr4_syscallnames.c#8 (text+ko) ====
@@ -2,8 +2,8 @@
* System call names.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/svr4/svr4_syscallnames.c,v 1.15 2005/05/30 15:20:18 rwatson Exp $
- * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.17 2005/05/30 15:09:17 rwatson Exp
+ * $FreeBSD: src/sys/compat/svr4/svr4_syscallnames.c,v 1.16 2005/07/13 15:14:54 jhb Exp $
+ * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.18 2005/07/13 15:14:33 jhb Exp
*/
const char *svr4_syscallnames[] = {
@@ -56,15 +56,11 @@
"setgid", /* 46 = setgid */
"getgid", /* 47 = getgid */
"svr4_sys_signal", /* 48 = svr4_sys_signal */
-#if defined(NOTYET)
"svr4_sys_msgsys", /* 49 = svr4_sys_msgsys */
-#else
- "#49", /* 49 = msgsys */
-#endif
"svr4_sys_sysarch", /* 50 = svr4_sys_sysarch */
"#51", /* 51 = acct */
- "#52", /* 52 = shmsys */
- "#53", /* 53 = semsys */
+ "svr4_sys_shmsys", /* 52 = svr4_sys_shmsys */
+ "svr4_sys_semsys", /* 53 = svr4_sys_semsys */
"svr4_sys_ioctl", /* 54 = svr4_sys_ioctl */
"#55", /* 55 = uadmin */
"#56", /* 56 = exch */
==== //depot/projects/smpng/sys/compat/svr4/svr4_sysent.c#8 (text+ko) ====
@@ -2,8 +2,8 @@
* System call switch table.
*
* DO NOT EDIT-- this file is automatically generated.
- * $FreeBSD: src/sys/compat/svr4/svr4_sysent.c,v 1.16 2005/05/30 15:20:18 rwatson Exp $
- * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.17 2005/05/30 15:09:17 rwatson Exp
+ * $FreeBSD: src/sys/compat/svr4/svr4_sysent.c,v 1.17 2005/07/13 15:14:54 jhb Exp $
+ * created from FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.18 2005/07/13 15:14:33 jhb Exp
*/
#include <bsm/audit_kevents.h>
@@ -69,15 +69,11 @@
{ SYF_MPSAFE | AS(setgid_args), (sy_call_t *)setgid, AUE_NULL }, /* 46 = setgid */
{ SYF_MPSAFE | 0, (sy_call_t *)getgid, AUE_NULL }, /* 47 = getgid */
{ SYF_MPSAFE | AS(svr4_sys_signal_args), (sy_call_t *)svr4_sys_signal, AUE_NULL }, /* 48 = svr4_sys_signal */
-#if defined(NOTYET)
{ AS(svr4_sys_msgsys_args), (sy_call_t *)svr4_sys_msgsys, AUE_NULL }, /* 49 = svr4_sys_msgsys */
-#else
- { 0, (sy_call_t *)nosys, AUE_NULL }, /* 49 = msgsys */
-#endif
{ AS(svr4_sys_sysarch_args), (sy_call_t *)svr4_sys_sysarch, AUE_NULL }, /* 50 = svr4_sys_sysarch */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 51 = acct */
- { 0, (sy_call_t *)nosys, AUE_NULL }, /* 52 = shmsys */
- { 0, (sy_call_t *)nosys, AUE_NULL }, /* 53 = semsys */
+ { AS(svr4_sys_shmsys_args), (sy_call_t *)svr4_sys_shmsys, AUE_NULL }, /* 52 = svr4_sys_shmsys */
+ { AS(svr4_sys_semsys_args), (sy_call_t *)svr4_sys_semsys, AUE_NULL }, /* 53 = svr4_sys_semsys */
{ AS(svr4_sys_ioctl_args), (sy_call_t *)svr4_sys_ioctl, AUE_NULL }, /* 54 = svr4_sys_ioctl */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 55 = uadmin */
{ 0, (sy_call_t *)nosys, AUE_NULL }, /* 56 = exch */
==== //depot/projects/smpng/sys/compat/svr4/syscalls.master#9 (text+ko) ====
@@ -1,4 +1,4 @@
- $FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.17 2005/05/30 15:09:17 rwatson Exp $
+ $FreeBSD: src/sys/compat/svr4/syscalls.master,v 1.18 2005/07/13 15:14:33 jhb Exp $
; from: @(#)syscalls.master 8.1 (Berkeley) 7/19/93
;
; System call name/number master file (or rather, slave, from SVR4).
@@ -96,17 +96,14 @@
47 AUE_NULL MNOPROTO { gid_t getgid(void); }
48 AUE_NULL MSTD { int svr4_sys_signal(int signum, \
svr4_sig_t handler); }
-#if defined(NOTYET)
49 AUE_NULL STD { int svr4_sys_msgsys(int what, int a2, \
- int a3, int a4, \
- int a5); }
-#else
-49 AUE_NULL UNIMPL msgsys
-#endif
+ int a3, int a4, int a5); }
50 AUE_NULL STD { int svr4_sys_sysarch(int op, void *a1); }
51 AUE_NULL UNIMPL acct
-52 AUE_NULL UNIMPL shmsys
-53 AUE_NULL UNIMPL semsys
+52 AUE_NULL STD { int svr4_sys_shmsys(int what, int a2, \
+ int a3, int a4, int a5); }
+53 AUE_NULL STD { int svr4_sys_semsys(int what, int a2, \
+ int a3, int a4, int a5); }
54 AUE_NULL STD { int svr4_sys_ioctl(int fd, u_long com, \
caddr_t data); }
55 AUE_NULL UNIMPL uadmin
==== //depot/projects/smpng/sys/conf/files#143 (text+ko) ====
@@ -1,4 +1,4 @@
-# $FreeBSD: src/sys/conf/files,v 1.1030 2005/06/21 10:17:54 dumbbell Exp $
+# $FreeBSD: src/sys/conf/files,v 1.1031 2005/07/10 15:07:57 scottl Exp $
#
# The long compile-with and dependency lines are required because of
# limitations in config: backslash-newline doesn't work in strings, and
@@ -670,9 +670,10 @@
dev/mlx/mlx_pci.c optional mlx pci
dev/mly/mly.c optional mly
dev/mpt/mpt.c optional mpt
+dev/mpt/mpt_cam.c optional mpt
dev/mpt/mpt_debug.c optional mpt
-dev/mpt/mpt_freebsd.c optional mpt
dev/mpt/mpt_pci.c optional mpt pci
+dev/mpt/mpt_raid.c optional mpt
dev/my/if_my.c optional my
dev/ncv/ncr53c500.c optional ncv
dev/ncv/ncr53c500_pccard.c optional ncv pccard
==== //depot/projects/smpng/sys/conf/newvers.sh#18 (text+ko) ====
@@ -28,10 +28,10 @@
# SUCH DAMAGE.
#
# @(#)newvers.sh 8.1 (Berkeley) 4/20/94
-# $FreeBSD: src/sys/conf/newvers.sh,v 1.69 2005/07/01 15:43:09 jhb Exp $
+# $FreeBSD: src/sys/conf/newvers.sh,v 1.70 2005/07/11 08:34:49 scottl Exp $
TYPE="FreeBSD"
-REVISION="6.0"
+REVISION="7.0"
BRANCH="CURRENT"
RELEASE="${REVISION}-${BRANCH}"
VERSION="${TYPE} ${RELEASE}"
==== //depot/projects/smpng/sys/dev/advansys/adv_isa.c#10 (text+ko) ====
@@ -46,7 +46,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/advansys/adv_isa.c,v 1.28 2005/05/29 04:42:16 nyan Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/advansys/adv_isa.c,v 1.29 2005/07/13 15:44:53 jhb Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -116,6 +116,12 @@
struct resource *iores, *irqres;
/*
+ * We don't know of any PnP ID's for these cards.
+ */
+ if (isa_get_logicalid(dev) != 0)
+ return (ENXIO);
+
+ /*
* Default to scanning all possible device locations.
*/
port_index = 0;
==== //depot/projects/smpng/sys/dev/auxio/auxio.c#4 (text+ko) ====
@@ -61,7 +61,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/auxio/auxio.c,v 1.3 2005/06/04 20:27:39 marius Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/auxio/auxio.c,v 1.4 2005/07/10 10:33:00 marius Exp $");
#include <sys/param.h>
#include <sys/systm.h>
@@ -95,16 +95,16 @@
#define AUXIO_PCIO_FREQ 2
#define AUXIO_PCIO_OSC 3
#define AUXIO_PCIO_TEMP 4
-#define AUXIO_PCIO_MAX 8
+#define AUXIO_PCIO_NREG 5
struct auxio_softc {
struct device *sc_dev;
int sc_nauxio;
- struct resource *sc_res[AUXIO_PCIO_MAX];
- int sc_rid[AUXIO_PCIO_MAX];
- bus_space_tag_t sc_regt[AUXIO_PCIO_MAX];
- bus_space_handle_t sc_regh[AUXIO_PCIO_MAX];
+ struct resource *sc_res[AUXIO_PCIO_NREG];
+ int sc_rid[AUXIO_PCIO_NREG];
+ bus_space_tag_t sc_regt[AUXIO_PCIO_NREG];
+ bus_space_handle_t sc_regh[AUXIO_PCIO_NREG];
struct cdev *sc_led_dev;
u_int32_t sc_led_stat;
@@ -224,26 +224,13 @@
auxio_ebus_attach(device_t dev)
{
struct auxio_softc *sc;
- u_long start, count;
- int i;
sc = device_get_softc(dev);
bzero(sc, sizeof(*sc));
sc->sc_dev = dev;
AUXIO_LOCK_INIT(sc);
- for (i = 0;
- i < AUXIO_PCIO_MAX &&
- bus_get_resource(dev, SYS_RES_MEMORY, i, &start, &count) == 0; i++)
- if (bootverbose)
- device_printf(sc->sc_dev,
- "Got rid %d, start %#lx, count %#lx\n",
- i, start, count);
- if (i < 1) {
- device_printf(dev, "no LED resource\n");
- return (ENXIO);
- }
- sc->sc_nauxio = i;
+ sc->sc_nauxio = AUXIO_PCIO_NREG;
sc->sc_flags = AUXIO_LEDONLY | AUXIO_EBUS;
return(auxio_attach_common(sc));
==== //depot/projects/smpng/sys/dev/cp/if_cp.c#12 (text+ko) ====
@@ -22,7 +22,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/cp/if_cp.c,v 1.21 2005/06/10 16:49:06 brooks Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/cp/if_cp.c,v 1.24 2005/07/09 16:14:04 rik Exp $");
#include <sys/param.h>
#include <sys/ucred.h>
@@ -98,7 +98,6 @@
mtx_assert (&(_bd)->cp_mtx, MA_OWNED); \
} while (0)
-
static int cp_probe __P((device_t));
static int cp_attach __P((device_t));
static int cp_detach __P((device_t));
@@ -327,6 +326,8 @@
for (i = 0; i < NCHAN && b->chan[i].type; i++) {
drv_t *d = b->chan[i].sys;
struct mbuf *m;
+ if (!d || !d->running)
+ continue;
while (_IF_QLEN(&d->queue)) {
IF_DEQUEUE (&d->queue,m);
if (!m)
@@ -523,20 +524,20 @@
}
d->ifp->if_softc = d;
if_initname (d->ifp, "cp", b->num * NCHAN + c->num);
- d->ifp->if_mtu = PP_MTU;
+ d->ifp->if_mtu = PP_MTU;
d->ifp->if_flags = IFF_POINTOPOINT | IFF_MULTICAST;
if (!cp_mpsafenet)
d->ifp->if_flags |= IFF_NEEDSGIANT;
d->ifp->if_ioctl = cp_sioctl;
d->ifp->if_start = cp_ifstart;
d->ifp->if_watchdog = cp_ifwatchdog;
- d->ifp->if_init = cp_initialize;
+ d->ifp->if_init = cp_initialize;
d->queue.ifq_maxlen = NRBUF;
mtx_init (&d->queue.ifq_mtx, "cp_queue", NULL, MTX_DEF);
sppp_attach (d->ifp);
if_attach (d->ifp);
- IFP2SP(d->ifp)->pp_tlf = cp_tlf;
- IFP2SP(d->ifp)->pp_tls = cp_tls;
+ IFP2SP(d->ifp)->pp_tlf = cp_tlf;
+ IFP2SP(d->ifp)->pp_tls = cp_tls;
/* If BPF is in the kernel, call the attach for it.
* The header size of PPP or Cisco/HDLC is 4 bytes. */
bpfattach (d->ifp, DLT_PPP, 4);
@@ -823,7 +824,7 @@
if (d->ifp->if_bpf)
BPF_MTAP (d->ifp, m);
#endif
- len = m->m_pkthdr.len;
+ len = m_length (m, NULL);
if (len >= BUFSZ)
printf ("%s: too long packet: %d bytes: ",
d->name, len);
==== //depot/projects/smpng/sys/dev/ctau/if_ct.c#14 (text+ko) ====
@@ -22,7 +22,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/ctau/if_ct.c,v 1.22 2005/06/10 16:49:06 brooks Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/ctau/if_ct.c,v 1.25 2005/07/09 16:14:05 rik Exp $");
#include <sys/param.h>
#include <sys/proc.h>
@@ -287,6 +287,8 @@
for (i = 0; i < NCHAN && b->chan[i].type; i++) {
drv_t *d = b->chan[i].sys;
struct mbuf *m;
+ if (!d || !d->running)
+ continue;
while (_IF_QLEN(&d->queue)) {
IF_DEQUEUE (&d->queue,m);
if (!m)
@@ -741,22 +743,22 @@
ct_bus_dma_mem_free (&d->dmamem);
continue;
}
- d->ifp->if_softc = d;
+ d->ifp->if_softc = d;
if_initname (d->ifp, "ct", b->num * NCHAN + c->num);
- d->ifp->if_mtu = PP_MTU;
+ d->ifp->if_mtu = PP_MTU;
d->ifp->if_flags = IFF_POINTOPOINT | IFF_MULTICAST;
if (!ct_mpsafenet)
d->ifp->if_flags |= IFF_NEEDSGIANT;
d->ifp->if_ioctl = ct_sioctl;
d->ifp->if_start = ct_ifstart;
d->ifp->if_watchdog = ct_ifwatchdog;
- d->ifp->if_init = ct_initialize;
+ d->ifp->if_init = ct_initialize;
d->queue.ifq_maxlen = NBUF;
mtx_init (&d->queue.ifq_mtx, "ct_queue", NULL, MTX_DEF);
sppp_attach (d->ifp);
if_attach (d->ifp);
- IFP2SP(d->ifp)->pp_tlf = ct_tlf;
- IFP2SP(d->ifp)->pp_tls = ct_tls;
+ IFP2SP(d->ifp)->pp_tlf = ct_tlf;
+ IFP2SP(d->ifp)->pp_tls = ct_tls;
/* If BPF is in the kernel, call the attach for it.
* Header size is 4 bytes. */
bpfattach (d->ifp, DLT_PPP, 4);
@@ -1031,7 +1033,7 @@
if (d->ifp->if_bpf)
BPF_MTAP (d->ifp, m);
#endif
- len = m->m_pkthdr.len;
+ len = m_length (m, NULL);
if (! m->m_next)
ct_send_packet (d->chan, (u_char*)mtod (m, caddr_t),
len, 0);
==== //depot/projects/smpng/sys/dev/cx/if_cx.c#18 (text+ko) ====
@@ -23,7 +23,7 @@
*/
#include <sys/cdefs.h>
-__FBSDID("$FreeBSD: src/sys/dev/cx/if_cx.c,v 1.39 2005/06/10 16:49:06 brooks Exp $");
+__FBSDID("$FreeBSD: src/sys/dev/cx/if_cx.c,v 1.45 2005/07/09 16:14:05 rik Exp $");
#include <sys/param.h>
@@ -374,6 +374,8 @@
for (i = 0; i < NCHAN && b->chan[i].type; i++) {
drv_t *d = b->chan[i].sys;
struct mbuf *m;
+ if (!d || !d->running)
+ continue;
while (_IF_QLEN(&d->queue)) {
IF_DEQUEUE (&d->queue,m);
if (!m)
@@ -848,33 +850,35 @@
cx_bus_dma_mem_free (&d->dmamem);
continue;
}
- d->ifp->if_softc = d;
+ d->ifp->if_softc = d;
if_initname (d->ifp, "cx", b->num * NCHAN + c->num);
- d->ifp->if_mtu = PP_MTU;
- d->ifp->if_flags = IFF_POINTOPOINT | IFF_MULTICAST |
- IFF_NEEDSGIANT;
+ d->ifp->if_mtu = PP_MTU;
+ d->ifp->if_flags = IFF_POINTOPOINT | IFF_MULTICAST;
+ if (!cx_mpsafenet)
+ d->ifp->if_flags |= IFF_NEEDSGIANT;
d->ifp->if_ioctl = cx_sioctl;
d->ifp->if_start = cx_ifstart;
d->ifp->if_watchdog = cx_ifwatchdog;
- d->ifp->if_init = cx_initialize;
+ d->ifp->if_init = cx_initialize;
d->queue.ifq_maxlen = 2;
mtx_init (&d->queue.ifq_mtx, "cx_queue", NULL, MTX_DEF);
sppp_attach (d->ifp);
if_attach (d->ifp);
- IFP2SP(d->ifp)->pp_tlf = cx_tlf;
- IFP2SP(d->ifp)->pp_tls = cx_tls;
+ IFP2SP(d->ifp)->pp_tlf = cx_tlf;
+ IFP2SP(d->ifp)->pp_tls = cx_tls;
/* If BPF is in the kernel, call the attach for it.
* Size of PPP header is 4 bytes. */
bpfattach (d->ifp, DLT_PPP, 4);
#endif /*NETGRAPH*/
}
d->tty = ttyalloc ();
- d->tty->t_open = cx_topen;
- d->tty->t_close = cx_tclose;
- d->tty->t_param = cx_param;
- d->tty->t_stop = cx_stop;
- d->tty->t_modem = cx_tmodem;
- d->tty->t_sc = d;
+ d->tty->t_open = cx_topen;
+ d->tty->t_close = cx_tclose;
+ d->tty->t_param = cx_param;
+ d->tty->t_stop = cx_stop;
+ d->tty->t_modem = cx_tmodem;
+ d->tty->t_oproc = cx_oproc;
+ d->tty->t_sc = d;
CX_LOCK (bd);
cx_start_chan (c, d->dmamem.virt, d->dmamem.phys);
cx_register_receive (c, &cx_receive);
@@ -1184,7 +1188,7 @@
if (d->ifp->if_bpf)
BPF_MTAP (d->ifp, m);
#endif
- len = m->m_pkthdr.len;
>>> TRUNCATED FOR MAIL (1000 lines) <<<
More information about the p4-projects
mailing list