1. 10 5月, 2017 1 次提交
  2. 29 3月, 2017 2 次提交
  3. 23 9月, 2016 1 次提交
  4. 14 3月, 2016 1 次提交
    • A
      ipv4: Update parameters for csum_tcpudp_magic to their original types · 01cfbad7
      Alexander Duyck 提交于
      This patch updates all instances of csum_tcpudp_magic and
      csum_tcpudp_nofold to reflect the types that are usually used as the source
      inputs.  For example the protocol field is populated based on nexthdr which
      is actually an unsigned 8 bit value.  The length is usually populated based
      on skb->len which is an unsigned integer.
      
      This addresses an issue in which the IPv6 function csum_ipv6_magic was
      generating a checksum using the full 32b of skb->len while
      csum_tcpudp_magic was only using the lower 16 bits.  As a result we could
      run into issues when attempting to adjust the checksum as there was no
      protocol agnostic way to update it.
      
      With this change the value is still truncated as many architectures use
      "(len + proto) << 8", however this truncation only occurs for values
      greater than 16776960 in length and as such is unlikely to occur as we stop
      the inner headers at ~64K in size.
      
      I did have to make a few minor changes in the arm, mn10300, nios2, and
      score versions of the function in order to support these changes as they
      were either using things such as an OR to combine the protocol and length,
      or were using ntohs to convert the length which would have truncated the
      value.
      
      I also updated a few spots in terms of whitespace and type differences for
      the addresses.  Most of this was just to make sure all of the definitions
      were in sync going forward.
      Signed-off-by: NAlexander Duyck <aduyck@mirantis.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      01cfbad7
  5. 03 11月, 2015 2 次提交
  6. 05 9月, 2015 4 次提交
  7. 25 3月, 2015 3 次提交
    • R
      CRIS: use generic atomic.h · e7db8a3c
      Rabin Vincent 提交于
      CRIS can use asm-generic's atomic.h.
      Signed-off-by: NRabin Vincent <rabin@rab.in>
      Signed-off-by: NJesper Nilsson <jespern@axis.com>
      e7db8a3c
    • R
      CRIS: remove SMP code · 47a8f6fb
      Rabin Vincent 提交于
      The CRIS SMP code cannot be built since there is no (and appears to
      never have been) a CONFIG_SMP Kconfig option in arch/cris/.  Remove it.
      Signed-off-by: NRabin Vincent <rabin@rab.in>
      Signed-off-by: NJesper Nilsson <jespern@axis.com>
      47a8f6fb
    • R
      CRISv32: don't enable irqs in INIT_THREAD · 06aca924
      Rabin Vincent 提交于
      INIT_THREAD enables interrupts in the thread_struct's saved flags.  This
      means that interrupts get enabled in the middle of context_switch()
      while switching to new tasks that get forked off the init task during
      boot.  Don't do this.
      
      Fixes the following splat on boot with spinlock debugging on:
      
        BUG: spinlock cpu recursion on CPU#0, swapper/2
         lock: runqueues+0x0/0x47c, .magic: dead4ead, .owner: swapper/0,
        .owner_cpu: 0
        CPU: 0 PID: 2 Comm: swapper Not tainted 3.19.0-08796-ga747b55 #285
      
        Call Trace:
        [<c0032b80>] spin_bug+0x2a/0x36
        [<c0032c98>] do_raw_spin_lock+0xa2/0x126
        [<c01964b0>] _raw_spin_lock+0x20/0x2a
        [<c00286c8>] scheduler_tick+0x22/0x76
        [<c003db2c>] update_process_times+0x5e/0x72
        [<c0007a94>] timer_interrupt+0x4e/0x6a
        [<c00378d6>] handle_irq_event_percpu+0x54/0xf2
        [<c00379c4>] handle_irq_event+0x50/0x74
        [<c003988e>] handle_simple_irq+0x6c/0xbe
        [<c0037270>] generic_handle_irq+0x2a/0x36
        [<c0004c40>] do_IRQ+0x38/0x84
        [<c000662e>] crisv32_do_IRQ+0x54/0x60
        [<c0006204>] IRQ0x4b_interrupt+0x34/0x3c
        [<c0192baa>] __schedule+0x24a/0x532
        [<c00056b4>] ret_from_kernel_thread+0x0/0x14
      Signed-off-by: NRabin Vincent <rabin@rab.in>
      Signed-off-by: NJesper Nilsson <jespern@axis.com>
      06aca924
  8. 11 2月, 2015 1 次提交
  9. 20 12月, 2014 1 次提交
  10. 08 1月, 2014 1 次提交
  11. 20 12月, 2012 2 次提交
  12. 19 11月, 2012 1 次提交
  13. 09 10月, 2012 1 次提交
  14. 03 10月, 2012 2 次提交
  15. 03 4月, 2012 1 次提交
  16. 29 3月, 2012 1 次提交
  17. 27 7月, 2011 1 次提交
  18. 26 7月, 2011 1 次提交
  19. 31 3月, 2011 1 次提交
  20. 07 10月, 2010 1 次提交
    • D
      Fix IRQ flag handling naming · df9ee292
      David Howells 提交于
      Fix the IRQ flag handling naming.  In linux/irqflags.h under one configuration,
      it maps:
      
      	local_irq_enable() -> raw_local_irq_enable()
      	local_irq_disable() -> raw_local_irq_disable()
      	local_irq_save() -> raw_local_irq_save()
      	...
      
      and under the other configuration, it maps:
      
      	raw_local_irq_enable() -> local_irq_enable()
      	raw_local_irq_disable() -> local_irq_disable()
      	raw_local_irq_save() -> local_irq_save()
      	...
      
      This is quite confusing.  There should be one set of names expected of the
      arch, and this should be wrapped to give another set of names that are expected
      by users of this facility.
      
      Change this to have the arch provide:
      
      	flags = arch_local_save_flags()
      	flags = arch_local_irq_save()
      	arch_local_irq_restore(flags)
      	arch_local_irq_disable()
      	arch_local_irq_enable()
      	arch_irqs_disabled_flags(flags)
      	arch_irqs_disabled()
      	arch_safe_halt()
      
      Then linux/irqflags.h wraps these to provide:
      
      	raw_local_save_flags(flags)
      	raw_local_irq_save(flags)
      	raw_local_irq_restore(flags)
      	raw_local_irq_disable()
      	raw_local_irq_enable()
      	raw_irqs_disabled_flags(flags)
      	raw_irqs_disabled()
      	raw_safe_halt()
      
      with type checking on the flags 'arguments', and then wraps those to provide:
      
      	local_save_flags(flags)
      	local_irq_save(flags)
      	local_irq_restore(flags)
      	local_irq_disable()
      	local_irq_enable()
      	irqs_disabled_flags(flags)
      	irqs_disabled()
      	safe_halt()
      
      with tracing included if enabled.
      
      The arch functions can now all be inline functions rather than some of them
      having to be macros.
      
      Signed-off-by: David Howells <dhowells@redhat.com> [X86, FRV, MN10300]
      Signed-off-by: Chris Metcalf <cmetcalf@tilera.com> [Tile]
      Signed-off-by: Michal Simek <monstr@monstr.eu> [Microblaze]
      Tested-by: Catalin Marinas <catalin.marinas@arm.com> [ARM]
      Acked-by: NThomas Gleixner <tglx@linutronix.de>
      Acked-by: Haavard Skinnemoen <haavard.skinnemoen@atmel.com> [AVR]
      Acked-by: Tony Luck <tony.luck@intel.com> [IA-64]
      Acked-by: Hirokazu Takata <takata@linux-m32r.org> [M32R]
      Acked-by: Greg Ungerer <gerg@uclinux.org> [M68K/M68KNOMMU]
      Acked-by: Ralf Baechle <ralf@linux-mips.org> [MIPS]
      Acked-by: Kyle McMartin <kyle@mcmartin.ca> [PA-RISC]
      Acked-by: Paul Mackerras <paulus@samba.org> [PowerPC]
      Acked-by: Martin Schwidefsky <schwidefsky@de.ibm.com> [S390]
      Acked-by: Chen Liqin <liqin.chen@sunplusct.com> [Score]
      Acked-by: Matt Fleming <matt@console-pimps.org> [SH]
      Acked-by: David S. Miller <davem@davemloft.net> [Sparc]
      Acked-by: Chris Zankel <chris@zankel.net> [Xtensa]
      Reviewed-by: Richard Henderson <rth@twiddle.net> [Alpha]
      Reviewed-by: Yoshinori Sato <ysato@users.sourceforge.jp> [H8300]
      Cc: starvik@axis.com [CRIS]
      Cc: jesper.nilsson@axis.com [CRIS]
      Cc: linux-cris-kernel@axis.com
      df9ee292
  21. 04 8月, 2010 9 次提交
  22. 25 5月, 2010 1 次提交
  23. 13 3月, 2010 1 次提交
    • C
      cris arch-v32: use generic ptrace_resume code · 290ba3ae
      Christoph Hellwig 提交于
      Use the generic ptrace_resume code for PTRACE_SYSCALL, PTRACE_CONT,
      PTRACE_KILL and PTRACE_SINGLESTEP.  This implies defining
      arch_has_single_step in <asm/ptrace.h> and implementing the
      user_enable_single_step and user_disable_single_step functions, which also
      causes the breakpoint information to be cleared on fork, which could be
      considered a bug fix.
      
      Also the TIF_SYSCALL_TRACE thread flag is now cleared on PTRACE_KILL which
      it previously wasn't which is consistent with all architectures using the
      modern ptrace code.
      
      The way breakpoints are disabled is entirely inconsistent currently, I
      tried to make some sense of it, but I suspect all of the content of
      ptrace_disable should be moved into user_disable_single_step, this
      defintively needs some revisting as the current patch changes behaviour in
      not quite designed ways.
      Signed-off-by: NChristoph Hellwig <hch@lst.de>
      Cc: Oleg Nesterov <oleg@redhat.com>
      Cc: Roland McGrath <roland@redhat.com>
      Cc: Mikael Starvik <starvik@axis.com>
      Cc: Jesper Nilsson <jesper.nilsson@axis.com>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
      290ba3ae