Patch "sparc64: Delete __ret_efault." has been added to the 4.4-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
sparc64: Delete __ret_efault.
to the 4.4-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
sparc64-delete-__ret_efault.patch
and it can be found in the queue-4.4 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From foo@baz Sat Nov 19 09:52:37 CET 2016
From: "David S. Miller" <[email protected]>
Date: Wed, 10 Aug 2016 14:41:33 -0700
Subject: sparc64: Delete __ret_efault.
From: "David S. Miller" <[email protected]>
[ Upstream commit aa95ce361ed95c72ac42dcb315166bce5cf1a014 ]
It is completely unused.
--- arch/sparc/include/asm/uaccess_64.h | 41 ------------------------------------ arch/sparc/kernel/head_64.S | 7 ------ arch/sparc/kernel/sparc_ksyms_64.c | 1 3 files changed, 1 insertion(+), 48 deletions(-)
arch/sparc/include/asm/uaccess_64.h +0 -41
@@ -98,7 +98,6 @@ struct exception_table_entry {unsigned int insn, fixup; }; -void __ret_efault (void );void __retl_efault (void );/* Uh, these should become the main single-value transfer routines..
@@ -179,20 +178,6 @@ int __put_user_bad(void); __gu_ret; \ }) -#define __get_user_nocheck_ret (data, addr, size, type, retval) ({ \ - register unsigned long __gu_val __asm__ ("l1"); \ - switch (size) { \ - case 1: __get_user_asm_ret(__gu_val, ub, addr, retval); break; \ - case 2: __get_user_asm_ret(__gu_val, uh, addr, retval); break; \ - case 4: __get_user_asm_ret(__gu_val, uw, addr, retval); break; \ - case 8: __get_user_asm_ret(__gu_val, x, addr, retval); break; \ - default: \ - if (__get_user_bad()) \ - return retval; \ - } \ - data = (__force type) __gu_val; \ -}) - #define __get_user_asm(x, size, addr, ret) \ __asm__ __volatile__( \ "/* Get user asm, inline. */\n" \
@@ -214,32 +199,6 @@ __asm__ __volatile__( \ : "=r" (ret), "=r" (x) : "r" (__m(addr)), \ "i" (-EFAULT)) -#define __get_user_asm_ret(x, size, addr, retval) \ -if (__builtin_constant_p(retval) && retval == -EFAULT) \ - __asm__ __volatile__( \ - "/* Get user asm ret, inline. */\n" \ - "1:\t" "ld"#size "a [%1] %%asi, %0\n\n\t" \ - ".section __ex_table,\"a\"\n\t" \ - ".align 4\n\t" \ - ".word 1b,__ret_efault\n\n\t" \ - ".previous\n\t" \ - : "=r" (x) : "r" (__m(addr))); \ -else \ - __asm__ __volatile__( \ - "/* Get user asm ret, inline. */\n" \ - "1:\t" "ld"#size "a [%1] %%asi, %0\n\n\t" \ - ".section .fixup,#alloc,#execinstr\n\t" \ - ".align 4\n" \ - "3:\n\t" \ - "ret\n\t" \ - " restore %%g0, %2, %%o0\n\n\t" \ - ".previous\n\t" \ - ".section __ex_table,\"a\"\n\t" \ - ".align 4\n\t" \ - ".word 1b, 3b\n\n\t" \ - ".previous\n\t" \ - : "=r" (x) : "r" (__m(addr)), "i" (retval)) -int __get_user_bad (void ); unsigned long __must_check ___copy_from_user(void *to,
arch/sparc/kernel/head_64.S +1 -6
@@ -922,12 +922,7 @@ prom_tba: .xword 0 tlb_type: .word 0 /* Must NOT end up in BSS */ .section ".fixup",#alloc,#execinstr - .globl __ret_efault, __retl_efault, __ret_one, __retl_one -ENTRY(__ret_efault) - ret - restore %g0, -EFAULT, %o0 -ENDPROC(__ret_efault) - + .globl __retl_efault, __ret_one, __retl_one ENTRY(__retl_efault) retl mov -EFAULT, %o0
arch/sparc/kernel/sparc_ksyms_64.c +0 -1
@@ -27,7 +27,6 @@ EXPORT_SYMBOL(__flushw_user);EXPORT_SYMBOL_GPL (real_hard_smp_processor_id);/* from head_64.S */ -EXPORT_SYMBOL (__ret_efault);EXPORT_SYMBOL (tlb_type);EXPORT_SYMBOL (sun4v_chip_type);EXPORT_SYMBOL (prom_root_node);
Patches currently in stable-queue which might be from [email protected] are
queue-4.4/sparc64-delete-now-unused-user-copy-fixup-functions.patch queue-4.4/net-__skb_flow_dissect-must-cap-its-return-value.patch queue-4.4/tcp-take-care-of-truncations-done-by-sk_filter.patch queue-4.4/net-clear-sk_err_soft-in-sk_clone_lock.patch queue-4.4/sparc64-convert-copy_in_user-to-accurate-exception-reporting.patch queue-4.4/sparc64-handle-extremely-large-kernel-tlb-range-flushes-more-gracefully.patch queue-4.4/sparc-handle-negative-offsets-in-arch_jump_label_transform.patch queue-4.4/sparc64-delete-__ret_efault.patch queue-4.4/dctcp-avoid-bogus-doubling-of-cwnd-after-loss.patch queue-4.4/sparc64-delete-now-unused-user-copy-assembler-helpers.patch queue-4.4/net-mangle-zero-checksum-in-skb_checksum_help.patch queue-4.4/sparc64-mm-fix-base-tsb-sizing-when-hugetlb-pages-are-used.patch queue-4.4/ip6_tunnel-clear-ip6cb-in-ip6tunnel_xmit.patch queue-4.4/sctp-assign-assoc_id-earlier-in-__sctp_connect.patch queue-4.4/sparc64-convert-ng4copy_-from-to-_user-to-accurate-exception-reporting.patch queue-4.4/ipv6-dccp-fix-out-of-bound-access-in-dccp_v6_err.patch queue-4.4/sparc64-convert-u3copy_-from-to-_user-to-accurate-exception-reporting.patch queue-4.4/sparc64-convert-ng2copy_-from-to-_user-to-accurate-exception-reporting.patch queue-4.4/sparc64-fix-illegal-relative-branches-in-hypervisor-patched-tlb-code.patch queue-4.4/sparc64-convert-gencopy_-from-to-_user-to-accurate-exception-reporting.patch queue-4.4/sparc64-convert-u1copy_-from-to-_user-to-accurate-exception-reporting.patch queue-4.4/sparc-don-t-leak-context-bits-into-thread-fault_address.patch queue-4.4/sparc64-prepare-to-move-to-more-saner-user-copy-exception-handling.patch queue-4.4/bgmac-stop-clearing-dma-receive-control-register-right-after-it-is-set.patch queue-4.4/ipv6-dccp-add-missing-bind_conflict-to-dccp_ipv6_mapped.patch queue-4.4/tcp-fix-potential-memory-corruption.patch queue-4.4/sparc64-convert-ngcopy_-from-to-_user-to-accurate-exception-reporting.patch queue-4.4/fib_trie-correct-proc-net-route-off-by-one-error.patch queue-4.4/sparc64-fix-illegal-relative-branches-in-hypervisor-patched-tlb-cross-call-code.patch queue-4.4/sparc64-handle-extremely-large-kernel-tsb-range-flushes-sanely.patch queue-4.4/sparc64-fix-instruction-count-in-comment-for-__hypervisor_flush_tlb_pending.patch queue-4.4/sparc-serial-sunhv-fix-a-double-lock-bug.patch queue-4.4/dccp-do-not-send-reset-to-already-closed-sockets.patch queue-4.4/ipv4-use-new_gw-for-redirect-neigh-lookup.patch queue-4.4/dccp-fix-out-of-bound-access-in-dccp_v4_err.patch queue-4.4/sock-fix-sendmmsg-for-partial-sendmsg.patch