Author: brooks
Date: Tue Apr 17 17:20:04 2018
New Revision: 332654
URL: https://svnweb.freebsd.org/changeset/base/332654

Log:
  Remove unused implementations of copyoutstr().
  
  Also remove the commented out documentation.  The documentation arrived
  with the import of the copy.9 manpage.  I suspect the implementations
  came from NetBSD while bootstrapping the Arm and MIPS ports.
  
  Reviewed by:  andrew, jmallett
  Sponsored by: DARPA, AFRL
  Differential Revision:        https://reviews.freebsd.org/D15108

Modified:
  head/share/man/man9/copy.9
  head/sys/arm/arm/copystr.S
  head/sys/mips/mips/support.S

Modified: head/share/man/man9/copy.9
==============================================================================
--- head/share/man/man9/copy.9  Tue Apr 17 16:51:27 2018        (r332653)
+++ head/share/man/man9/copy.9  Tue Apr 17 17:20:04 2018        (r332654)
@@ -61,8 +61,6 @@
 .Fn copystr "const void *kfaddr" "void *kdaddr" "size_t len" "size_t *done"
 .Ft int
 .Fn copyinstr "const void *uaddr" "void *kaddr" "size_t len" "size_t *done"
-.\" .Ft int
-.\" .Fn copyoutstr "const void *kaddr" "void *uaddr" "size_t len" "size_t 
*done"
 .Sh DESCRIPTION
 The
 .Nm
@@ -135,15 +133,6 @@ NUL, is returned in
 .Fa done
 is
 .No non- Ns Dv NULL ) .
-.\" .It Fn copyoutstr
-.\" Copies a NUL-terminated string, at most
-.\" bytes long, from kernel-space address
-.\" .Fa kaddr
-.\" to user-space address
-.\" .Fa uaddr .
-.\" The number of bytes actually copied, including the terminating
-.\" NUL, is returned in
-.\" .Fa *done .
 .Sh RETURN VALUES
 The
 .Nm
@@ -164,9 +153,6 @@ The
 .Fn copystr
 and
 .Fn copyinstr
-.\" .Fn copyinstr ,
-.\" and
-.\" .Fn copyoutstr
 functions return
 .Er ENAMETOOLONG
 if the string is longer than

Modified: head/sys/arm/arm/copystr.S
==============================================================================
--- head/sys/arm/arm/copystr.S  Tue Apr 17 16:51:27 2018        (r332653)
+++ head/sys/arm/arm/copystr.S  Tue Apr 17 17:20:04 2018        (r332654)
@@ -149,59 +149,6 @@ ENTRY(copyinstr)
        RET
 END(copyinstr)
 
-/*
- * r0 - kernel space address
- * r1 - user space address
- * r2 - maxlens
- * r3 - lencopied
- *
- * Copy string from kernel space to user space
- */
-ENTRY(copyoutstr)
-       SAVE_REGS
-
-       teq     r2, #0x00000000
-       mov     r6, #0x00000000
-       moveq   r0, #ENAMETOOLONG
-       beq     2f
-
-       ldr     r12, =VM_MAXUSER_ADDRESS
-
-       GET_PCB(r4)
-       ldr     r4, [r4]
-
-#ifdef DIAGNOSTIC
-       teq     r4, #0x00000000
-       beq     .Lcopystrpcbfault
-#endif
-
-       adr     r5, .Lcopystrfault
-       str     r5, [r4, #PCB_ONFAULT]
-
-1:
-       cmp     r0, r12
-       bcs     .Lcopystrfault
-       ldrb    r5, [r0], #0x0001
-       add     r6, r6, #0x00000001
-       teq     r5, #0x00000000
-       strbt   r5, [r1], #0x0001
-       teqne   r6, r2
-       bne     1b
-
-       mov     r0, #0x00000000
-       str     r0, [r4, #PCB_ONFAULT]
-
-       teq     r5, #0x00000000
-       moveq   r0, #0x00000000
-       movne   r0, #ENAMETOOLONG
-
-2:     teq     r3, #0x00000000
-       strne   r6, [r3]
-
-       RESTORE_REGS
-       RET
-END(copyoutstr)
-
 /* A fault occurred during the copy */
 .Lcopystrfault:
        mov     r1, #0x00000000

Modified: head/sys/mips/mips/support.S
==============================================================================
--- head/sys/mips/mips/support.S        Tue Apr 17 16:51:27 2018        
(r332653)
+++ head/sys/mips/mips/support.S        Tue Apr 17 17:20:04 2018        
(r332654)
@@ -162,34 +162,6 @@ NESTED(copyinstr, CALLFRAME_SIZ, ra)
 END(copyinstr)
 
 /*
- * Copy a null terminated string from the kernel address space into
- * the user address space.
- *
- *     copyoutstr(fromaddr, toaddr, maxlength, &lencopied)
- *             caddr_t fromaddr;
- *             caddr_t toaddr;
- *             u_int maxlength;
- *             u_int *lencopied;
- */
-NESTED(copyoutstr, CALLFRAME_SIZ, ra)
-       PTR_SUBU        sp, sp, CALLFRAME_SIZ
-       .mask   0x80000000, (CALLFRAME_RA - CALLFRAME_SIZ)
-       PTR_LA  v0, copyerr
-       blt     a1, zero, _C_LABEL(copyerr)  # make sure address is in user 
space
-       REG_S   ra, CALLFRAME_RA(sp)
-       GET_CPU_PCPU(v1)
-       PTR_L   v1, PC_CURPCB(v1)
-       jal     _C_LABEL(copystr)
-       PTR_S   v0, U_PCB_ONFAULT(v1)
-       REG_L   ra, CALLFRAME_RA(sp)
-       GET_CPU_PCPU(v1)
-       PTR_L   v1, PC_CURPCB(v1)
-       PTR_S   zero, U_PCB_ONFAULT(v1)
-       j       ra
-       PTR_ADDU        sp, sp, CALLFRAME_SIZ
-END(copyoutstr)
-
-/*
  * Copy specified amount of data from user space into the kernel
  *     copyin(from, to, len)
  *             caddr_t *from;  (user source address)
_______________________________________________
svn-src-head@freebsd.org mailing list
https://lists.freebsd.org/mailman/listinfo/svn-src-head
To unsubscribe, send any mail to "svn-src-head-unsubscr...@freebsd.org"

Reply via email to