CVS commit: src

2023-09-17 Thread Greg Oster
Module Name:src
Committed By:   oster
Date:   Sun Sep 17 20:07:39 UTC 2023

Modified Files:
src/sbin/raidctl: raidctl.8 raidctl.c
src/sys/dev/raidframe: raidframeio.h rf_diskqueue.c rf_diskqueue.h
rf_disks.c rf_disks.h rf_driver.c rf_netbsdkintf.c rf_raid.h
rf_reconstruct.c

Log Message:
Implement hot removal of spares and components.  From manu@.

Implement a long desired feature of automatically incorporating
a used spare into the array after a reconstruct.

Given the configuration:
Components:
   /dev/wd0e: failed
   /dev/wd1e: optimal
   /dev/wd2e: optimal
Spares:
   /dev/wd3e: spare

Running 'raidctl -F /dev/wd0e raid0' will now result in the
following configuration after a successful rebuild:
Components:
   /dev/wd3e: optimal
   /dev/wd1e: optimal
   /dev/wd2e: optimal
No spares.

Thanks to manu@ for the development of the initial set of changes
which allowed the changes to automatically incorporate a used spare
to come to fruition.  Thanks also to manu@ for useful discussions
about and additional testing of these changes.


To generate a diff of this commit:
cvs rdiff -u -r1.79 -r1.80 src/sbin/raidctl/raidctl.8
cvs rdiff -u -r1.78 -r1.79 src/sbin/raidctl/raidctl.c
cvs rdiff -u -r1.11 -r1.12 src/sys/dev/raidframe/raidframeio.h
cvs rdiff -u -r1.63 -r1.64 src/sys/dev/raidframe/rf_diskqueue.c
cvs rdiff -u -r1.29 -r1.30 src/sys/dev/raidframe/rf_diskqueue.h
cvs rdiff -u -r1.93 -r1.94 src/sys/dev/raidframe/rf_disks.c
cvs rdiff -u -r1.14 -r1.15 src/sys/dev/raidframe/rf_disks.h
cvs rdiff -u -r1.140 -r1.141 src/sys/dev/raidframe/rf_driver.c
cvs rdiff -u -r1.413 -r1.414 src/sys/dev/raidframe/rf_netbsdkintf.c
cvs rdiff -u -r1.51 -r1.52 src/sys/dev/raidframe/rf_raid.h
cvs rdiff -u -r1.128 -r1.129 src/sys/dev/raidframe/rf_reconstruct.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sbin/raidctl/raidctl.8
diff -u src/sbin/raidctl/raidctl.8:1.79 src/sbin/raidctl/raidctl.8:1.80
--- src/sbin/raidctl/raidctl.8:1.79	Tue Jun 14 08:06:18 2022
+++ src/sbin/raidctl/raidctl.8	Sun Sep 17 20:07:39 2023
@@ -1,4 +1,4 @@
-.\" $NetBSD: raidctl.8,v 1.79 2022/06/14 08:06:18 kre Exp $
+.\" $NetBSD: raidctl.8,v 1.80 2023/09/17 20:07:39 oster Exp $
 .\"
 .\" Copyright (c) 1998, 2002 The NetBSD Foundation, Inc.
 .\" All rights reserved.
@@ -53,7 +53,7 @@
 .\" any improvements or extensions that they make and grant Carnegie the
 .\" rights to redistribute these changes.
 .\"
-.Dd June 13, 2022
+.Dd September 16, 2023
 .Dt RAIDCTL 8
 .Os
 .Sh NAME
@@ -322,9 +322,10 @@ if necessary, and immediately begins a r
 This is useful for reconstructing back onto a component after
 it has been replaced following a failure.
 .It Fl r Ar component Ar dev
-Remove the spare disk specified by
+Remove the specified
 .Ar component
-from the set of available spare components.
+from the RAID. The component must be in the failed, spare, or spared state
+in order to be removed.
 .It Fl S Ar dev
 Check the status of parity re-writing, component reconstruction, and
 component copyback.
@@ -1005,10 +1006,9 @@ option will show:
 .Bd -literal -offset indent
 Components:
/dev/sd1e: optimal
-   /dev/sd2e: spared
+   /dev/sd4e: optimal
/dev/sd3e: optimal
-Spares:
-   /dev/sd4e: used_spare
+No spares.
 [...]
 Parity status: clean
 Reconstruction is 100% complete.
@@ -1016,62 +1016,10 @@ Parity Re-write is 100% complete.
 Copyback is 100% complete.
 .Ed
 .Pp
-At this point there are at least two options.
-First, if
-.Pa /dev/sd2e
-is known to be good (i.e., the failure was either caused by
-.Fl f
-or
-.Fl F ,
-or the failed disk was replaced), then a copyback of the data can
-be initiated with the
-.Fl B
-option.
-In this example, this would copy the entire contents of
-.Pa /dev/sd4e
-to
-.Pa /dev/sd2e .
-Once the copyback procedure is complete, the
-status of the device would be (in part):
-.Bd -literal -offset indent
-Components:
-   /dev/sd1e: optimal
-   /dev/sd2e: optimal
-   /dev/sd3e: optimal
-Spares:
-   /dev/sd4e: spare
-.Ed
-.Pp
-and the system is back to normal operation.
-.Pp
-The second option after the reconstruction is to simply use
-.Pa /dev/sd4e
-in place of
-.Pa /dev/sd2e
-in the configuration file.
-For example, the configuration file (in part) might now look like:
-.Bd -literal -offset indent
-START array
-3 0
-
-START disks
-/dev/sd1e
-/dev/sd4e
-/dev/sd3e
-.Ed
-.Pp
-This can be done as
-.Pa /dev/sd4e
-is completely interchangeable with
+as
 .Pa /dev/sd2e
-at this point.
-Note that extreme care must be taken when
-changing the order of the drives in a configuration.
-This is one of the few instances where the devices and/or
-their orderings can be changed without loss of data!
-In general, the ordering of components in a configuration file should
-.Em never
-be 

CVS commit: src

2023-09-17 Thread Greg Oster
Module Name:src
Committed By:   oster
Date:   Sun Sep 17 20:07:39 UTC 2023

Modified Files:
src/sbin/raidctl: raidctl.8 raidctl.c
src/sys/dev/raidframe: raidframeio.h rf_diskqueue.c rf_diskqueue.h
rf_disks.c rf_disks.h rf_driver.c rf_netbsdkintf.c rf_raid.h
rf_reconstruct.c

Log Message:
Implement hot removal of spares and components.  From manu@.

Implement a long desired feature of automatically incorporating
a used spare into the array after a reconstruct.

Given the configuration:
Components:
   /dev/wd0e: failed
   /dev/wd1e: optimal
   /dev/wd2e: optimal
Spares:
   /dev/wd3e: spare

Running 'raidctl -F /dev/wd0e raid0' will now result in the
following configuration after a successful rebuild:
Components:
   /dev/wd3e: optimal
   /dev/wd1e: optimal
   /dev/wd2e: optimal
No spares.

Thanks to manu@ for the development of the initial set of changes
which allowed the changes to automatically incorporate a used spare
to come to fruition.  Thanks also to manu@ for useful discussions
about and additional testing of these changes.


To generate a diff of this commit:
cvs rdiff -u -r1.79 -r1.80 src/sbin/raidctl/raidctl.8
cvs rdiff -u -r1.78 -r1.79 src/sbin/raidctl/raidctl.c
cvs rdiff -u -r1.11 -r1.12 src/sys/dev/raidframe/raidframeio.h
cvs rdiff -u -r1.63 -r1.64 src/sys/dev/raidframe/rf_diskqueue.c
cvs rdiff -u -r1.29 -r1.30 src/sys/dev/raidframe/rf_diskqueue.h
cvs rdiff -u -r1.93 -r1.94 src/sys/dev/raidframe/rf_disks.c
cvs rdiff -u -r1.14 -r1.15 src/sys/dev/raidframe/rf_disks.h
cvs rdiff -u -r1.140 -r1.141 src/sys/dev/raidframe/rf_driver.c
cvs rdiff -u -r1.413 -r1.414 src/sys/dev/raidframe/rf_netbsdkintf.c
cvs rdiff -u -r1.51 -r1.52 src/sys/dev/raidframe/rf_raid.h
cvs rdiff -u -r1.128 -r1.129 src/sys/dev/raidframe/rf_reconstruct.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/sh3/dev

2023-09-17 Thread Andrius Varanavicius
Module Name:src
Committed By:   andvar
Date:   Sun Sep 17 14:22:28 UTC 2023

Modified Files:
src/sys/arch/sh3/dev: sci.c

Log Message:
remove unneeded whitespace in empty line from my previous commit.


To generate a diff of this commit:
cvs rdiff -u -r1.64 -r1.65 src/sys/arch/sh3/dev/sci.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/sh3/dev/sci.c
diff -u src/sys/arch/sh3/dev/sci.c:1.64 src/sys/arch/sh3/dev/sci.c:1.65
--- src/sys/arch/sh3/dev/sci.c:1.64	Sat Sep 16 18:56:39 2023
+++ src/sys/arch/sh3/dev/sci.c	Sun Sep 17 14:22:28 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: sci.c,v 1.64 2023/09/16 18:56:39 andvar Exp $ */
+/* $NetBSD: sci.c,v 1.65 2023/09/17 14:22:28 andvar Exp $ */
 
 /*-
  * Copyright (C) 1999 T.Horiuchi and SAITOH Masanobu.  All rights reserved.
@@ -93,7 +93,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: sci.c,v 1.64 2023/09/16 18:56:39 andvar Exp $");
+__KERNEL_RCSID(0, "$NetBSD: sci.c,v 1.65 2023/09/17 14:22:28 andvar Exp $");
 
 #include "opt_kgdb.h"
 #include "opt_sci.h"
@@ -1215,7 +1215,7 @@ sciintr(void *arg)
 		if (ISSET(~msr, sc->sc_msr_mask)) {
 			sc->sc_tbc = 0;
 			sc->sc_heldtbc = 0;
-			
+
 			DPRINTF(("%s: sciintr\n", device_xname(sc->sc_dev)));
 		}
 



CVS commit: src/sys/arch/sh3/dev

2023-09-17 Thread Andrius Varanavicius
Module Name:src
Committed By:   andvar
Date:   Sun Sep 17 14:22:28 UTC 2023

Modified Files:
src/sys/arch/sh3/dev: sci.c

Log Message:
remove unneeded whitespace in empty line from my previous commit.


To generate a diff of this commit:
cvs rdiff -u -r1.64 -r1.65 src/sys/arch/sh3/dev/sci.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/m68k/fpe

2023-09-17 Thread Andrius Varanavicius
Module Name:src
Committed By:   andvar
Date:   Sun Sep 17 13:14:08 UTC 2023

Modified Files:
src/sys/arch/m68k/fpe: fpu_emulate.c

Log Message:
word was changed to sval at rev 1.39, but DPRINTF values were not updated.

Fixes DEBUG_FPE enabled build for 68k FPE code.


To generate a diff of this commit:
cvs rdiff -u -r1.40 -r1.41 src/sys/arch/m68k/fpe/fpu_emulate.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/m68k/fpe/fpu_emulate.c
diff -u src/sys/arch/m68k/fpe/fpu_emulate.c:1.40 src/sys/arch/m68k/fpe/fpu_emulate.c:1.41
--- src/sys/arch/m68k/fpe/fpu_emulate.c:1.40	Fri Dec 27 07:41:23 2019
+++ src/sys/arch/m68k/fpe/fpu_emulate.c	Sun Sep 17 13:14:08 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: fpu_emulate.c,v 1.40 2019/12/27 07:41:23 msaitoh Exp $	*/
+/*	$NetBSD: fpu_emulate.c,v 1.41 2023/09/17 13:14:08 andvar Exp $	*/
 
 /*
  * Copyright (c) 1995 Gordon W. Ross
@@ -37,7 +37,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: fpu_emulate.c,v 1.40 2019/12/27 07:41:23 msaitoh Exp $");
+__KERNEL_RCSID(0, "$NetBSD: fpu_emulate.c,v 1.41 2023/09/17 13:14:08 andvar Exp $");
 
 #include 
 #include 
@@ -132,12 +132,12 @@ fpu_emulate(struct frame *frame, struct 
 
 	if ((sval & 0xf000) != 0xf000) {
 		DPRINTF(("%s: not coproc. insn.: opcode=0x%x\n",
-		__func__, word));
+		__func__, sval));
 		fpe_abort(frame, ksi, SIGILL, ILL_ILLOPC);
 	}
 
 	if ((sval & 0x0E00) != 0x0200) {
-		DPRINTF(("%s: bad coproc. id: opcode=0x%x\n", __func__, word));
+		DPRINTF(("%s: bad coproc. id: opcode=0x%x\n", __func__, sval));
 		fpe_abort(frame, ksi, SIGILL, ILL_ILLOPC);
 	}
 



CVS commit: src/sys/arch/m68k/fpe

2023-09-17 Thread Andrius Varanavicius
Module Name:src
Committed By:   andvar
Date:   Sun Sep 17 13:14:08 UTC 2023

Modified Files:
src/sys/arch/m68k/fpe: fpu_emulate.c

Log Message:
word was changed to sval at rev 1.39, but DPRINTF values were not updated.

Fixes DEBUG_FPE enabled build for 68k FPE code.


To generate a diff of this commit:
cvs rdiff -u -r1.40 -r1.41 src/sys/arch/m68k/fpe/fpu_emulate.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/luna68k

2023-09-17 Thread Andrius Varanavicius
Module Name:src
Committed By:   andvar
Date:   Sun Sep 17 12:30:00 UTC 2023

Modified Files:
src/sys/arch/luna68k/conf: files.luna68k
src/sys/arch/luna68k/luna68k: trap.c

Log Message:
fix KGDB enabled build for luna68k:
* include sys/kgdb.h in luna68k/trap.c for missing definitions.
* cast second kgdb_trap argument to (db_regs_t *).
* build m68k/kgdb_machdep.c in kgdb enable build for kgdb_trap() implementation.


To generate a diff of this commit:
cvs rdiff -u -r1.30 -r1.31 src/sys/arch/luna68k/conf/files.luna68k
cvs rdiff -u -r1.76 -r1.77 src/sys/arch/luna68k/luna68k/trap.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/luna68k/conf/files.luna68k
diff -u src/sys/arch/luna68k/conf/files.luna68k:1.30 src/sys/arch/luna68k/conf/files.luna68k:1.31
--- src/sys/arch/luna68k/conf/files.luna68k:1.30	Fri Jun 10 21:42:23 2022
+++ src/sys/arch/luna68k/conf/files.luna68k	Sun Sep 17 12:30:00 2023
@@ -1,5 +1,5 @@
 #
-#	$NetBSD: files.luna68k,v 1.30 2022/06/10 21:42:23 tsutsui Exp $
+#	$NetBSD: files.luna68k,v 1.31 2023/09/17 12:30:00 andvar Exp $
 #
 maxpartitions 8
 maxusers 2 8 64
@@ -16,6 +16,7 @@ file arch/luna68k/luna68k/pmap_bootstrap
 file arch/luna68k/luna68k/trap.c
 file arch/m68k/m68k/cacheops.c
 file arch/m68k/m68k/db_memrw.c		ddb | kgdb
+file arch/m68k/m68k/kgdb_machdep.c	kgdb
 file arch/m68k/m68k/fpu.c		compile-with "${M68K_KERN_FPU}"
 file arch/m68k/m68k/m68k_trap.c
 file arch/m68k/m68k/pmap_motorola.c

Index: src/sys/arch/luna68k/luna68k/trap.c
diff -u src/sys/arch/luna68k/luna68k/trap.c:1.76 src/sys/arch/luna68k/luna68k/trap.c:1.77
--- src/sys/arch/luna68k/luna68k/trap.c:1.76	Sat Sep 16 20:53:18 2023
+++ src/sys/arch/luna68k/luna68k/trap.c	Sun Sep 17 12:30:00 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: trap.c,v 1.76 2023/09/16 20:53:18 andvar Exp $ */
+/* $NetBSD: trap.c,v 1.77 2023/09/17 12:30:00 andvar Exp $ */
 
 /*
  * Copyright (c) 1988 University of Utah.
@@ -39,7 +39,7 @@
  */
 
 #include 
-__KERNEL_RCSID(0, "$NetBSD: trap.c,v 1.76 2023/09/16 20:53:18 andvar Exp $");
+__KERNEL_RCSID(0, "$NetBSD: trap.c,v 1.77 2023/09/17 12:30:00 andvar Exp $");
 
 #include "opt_ddb.h"
 #include "opt_kgdb.h"
@@ -57,6 +57,7 @@ __KERNEL_RCSID(0, "$NetBSD: trap.c,v 1.7
 #include 
 #include 
 #include 
+#include 
 
 #include 
 #include 
@@ -258,7 +259,7 @@ trap(struct frame *fp, int type, unsigne
 		s = splhigh();
 #ifdef KGDB
 		/* If connected, step or cont returns 1 */
-		if (kgdb_trap(type, fp))
+		if (kgdb_trap(type, (db_regs_t *)fp))
 			goto kgdb_cont;
 #endif
 #ifdef DDB



CVS commit: src/sys/arch/luna68k

2023-09-17 Thread Andrius Varanavicius
Module Name:src
Committed By:   andvar
Date:   Sun Sep 17 12:30:00 UTC 2023

Modified Files:
src/sys/arch/luna68k/conf: files.luna68k
src/sys/arch/luna68k/luna68k: trap.c

Log Message:
fix KGDB enabled build for luna68k:
* include sys/kgdb.h in luna68k/trap.c for missing definitions.
* cast second kgdb_trap argument to (db_regs_t *).
* build m68k/kgdb_machdep.c in kgdb enable build for kgdb_trap() implementation.


To generate a diff of this commit:
cvs rdiff -u -r1.30 -r1.31 src/sys/arch/luna68k/conf/files.luna68k
cvs rdiff -u -r1.76 -r1.77 src/sys/arch/luna68k/luna68k/trap.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/luna68k/luna68k

2023-09-17 Thread Andrius Varanavicius
Module Name:src
Committed By:   andvar
Date:   Sun Sep 17 10:14:49 UTC 2023

Modified Files:
src/sys/arch/luna68k/luna68k: machdep.c

Log Message:
all sunos_exec_aout_makecmds references were removed from machedep back in 1997,
as the code was standardized and moved to sunos_exec_aout.c.

removing this code from luna68k as well, for whatever reason it was missed.

Fixes build with COMPAT_SUNOS enabled for luna68k.


To generate a diff of this commit:
cvs rdiff -u -r1.108 -r1.109 src/sys/arch/luna68k/luna68k/machdep.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/luna68k/luna68k/machdep.c
diff -u src/sys/arch/luna68k/luna68k/machdep.c:1.108 src/sys/arch/luna68k/luna68k/machdep.c:1.109
--- src/sys/arch/luna68k/luna68k/machdep.c:1.108	Sat Oct  9 20:00:41 2021
+++ src/sys/arch/luna68k/luna68k/machdep.c	Sun Sep 17 10:14:49 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: machdep.c,v 1.108 2021/10/09 20:00:41 tsutsui Exp $ */
+/* $NetBSD: machdep.c,v 1.109 2023/09/17 10:14:49 andvar Exp $ */
 
 /*-
  * Copyright (c) 2000 The NetBSD Foundation, Inc.
@@ -31,7 +31,7 @@
 
 #include 			/* RCS ID & Copyright macro defns */
 
-__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.108 2021/10/09 20:00:41 tsutsui Exp $");
+__KERNEL_RCSID(0, "$NetBSD: machdep.c,v 1.109 2023/09/17 10:14:49 andvar Exp $");
 
 #include "opt_ddb.h"
 #include "opt_kgdb.h"
@@ -822,14 +822,7 @@ luna68k_abort(const char *cp)
 int
 cpu_exec_aout_makecmds(struct lwp *l, struct exec_package *epp)
 {
-	int error = ENOEXEC;
-#ifdef COMPAT_SUNOS
-	extern sunos_exec_aout_makecmds(struct proc *, struct exec_package *);
-
-	if ((error = sunos_exec_aout_makecmds(l->l_proc, epp)) == 0)
-		return 0;
-#endif
-	return error;
+	return ENOEXEC;
 }
 
 #ifdef MODULAR



CVS commit: src/sys/arch/luna68k/luna68k

2023-09-17 Thread Andrius Varanavicius
Module Name:src
Committed By:   andvar
Date:   Sun Sep 17 10:14:49 UTC 2023

Modified Files:
src/sys/arch/luna68k/luna68k: machdep.c

Log Message:
all sunos_exec_aout_makecmds references were removed from machedep back in 1997,
as the code was standardized and moved to sunos_exec_aout.c.

removing this code from luna68k as well, for whatever reason it was missed.

Fixes build with COMPAT_SUNOS enabled for luna68k.


To generate a diff of this commit:
cvs rdiff -u -r1.108 -r1.109 src/sys/arch/luna68k/luna68k/machdep.c

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/x68k/x68k

2023-09-17 Thread Andrius Varanavicius
Module Name:src
Committed By:   andvar
Date:   Sun Sep 17 07:22:17 UTC 2023

Modified Files:
src/sys/arch/x68k/x68k: locore.s

Log Message:
add "#if defined(M68030)" around 68030 specific busaddrerr2030 calls.

Makes M68030 build without 040/060 counterparts enabled for x68k.


To generate a diff of this commit:
cvs rdiff -u -r1.121 -r1.122 src/sys/arch/x68k/x68k/locore.s

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.



CVS commit: src/sys/arch/x68k/x68k

2023-09-17 Thread Andrius Varanavicius
Module Name:src
Committed By:   andvar
Date:   Sun Sep 17 07:22:17 UTC 2023

Modified Files:
src/sys/arch/x68k/x68k: locore.s

Log Message:
add "#if defined(M68030)" around 68030 specific busaddrerr2030 calls.

Makes M68030 build without 040/060 counterparts enabled for x68k.


To generate a diff of this commit:
cvs rdiff -u -r1.121 -r1.122 src/sys/arch/x68k/x68k/locore.s

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/sys/arch/x68k/x68k/locore.s
diff -u src/sys/arch/x68k/x68k/locore.s:1.121 src/sys/arch/x68k/x68k/locore.s:1.122
--- src/sys/arch/x68k/x68k/locore.s:1.121	Mon May 30 09:56:03 2022
+++ src/sys/arch/x68k/x68k/locore.s	Sun Sep 17 07:22:17 2023
@@ -1,4 +1,4 @@
-/*	$NetBSD: locore.s,v 1.121 2022/05/30 09:56:03 andvar Exp $	*/
+/*	$NetBSD: locore.s,v 1.122 2023/09/17 07:22:17 andvar Exp $	*/
 
 /*
  * Copyright (c) 1988 University of Utah.
@@ -209,8 +209,10 @@ Lstart1:
 	jra	Lstart2
 1:
 #endif
+#if defined(M68030)
 	movl	#_C_LABEL(busaddrerr2030),%a2@(8)
 	movl	#_C_LABEL(busaddrerr2030),%a2@(12)
+#endif
 
 Lstart2:
 /* initialize source/destination control registers for movs */