1. 17 2月, 2006 5 次提交
  2. 16 2月, 2006 22 次提交
  3. 15 2月, 2006 13 次提交
    • A
      [BRIDGE]: Fix deadlock in br_stp_disable_bridge · 78872ccb
      Adrian Drzewiecki 提交于
      Looks like somebody forgot to use the _bh spin_lock variant. We ran into a 
      deadlock where br->hello_timer expired while br_stp_disable_br() walked 
      br->port_list. 
      Signed-off-by: NAdrian Drzewiecki <z@drze.net>
      Signed-off-by: NStephen Hemminger <shemminger@osdl.org>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      78872ccb
    • P
      [NETFILTER]: Fix xfrm lookup after SNAT · ee68cea2
      Patrick McHardy 提交于
      To find out if a packet needs to be handled by IPsec after SNAT, packets
      are currently rerouted in POST_ROUTING and a new xfrm lookup is done. This
      breaks SNAT of non-unicast packets to non-local addresses because the
      packet is routed as incoming packet and no neighbour entry is bound to the
      dst_entry. In general, it seems to be a bad idea to replace the dst_entry
      after the packet was already sent to the output routine because its state
      might not match what's expected.
      
      This patch changes the xfrm lookup in POST_ROUTING to re-use the original
      dst_entry without routing the packet again. This means no policy routing
      can be used for transport mode transforms (which keep the original route)
      when packets are SNATed to match the policy, but it looks like the best
      we can do for now.
      Signed-off-by: NPatrick McHardy <kaber@trash.net>
      Signed-off-by: NHerbert Xu <herbert@gondor.apana.org.au>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      ee68cea2
    • A
      Input: kill remnants of 98kbd{,-io} and 98spkr · 02860ab6
      Arthur Othieno 提交于
      98kbd{,-io} and 98spkr all went out with PC98 subarch.  Remove stale Makefile
      entries that remained.
      Signed-off-by: NArthur Othieno <apgo@patchbomb.org>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
      02860ab6
    • D
      Input: ads7846 - assorted updates · d93f70b2
      David Brownell 提交于
      This updates the ads7846 touchscreen driver:
        - to allow faster clocking (this driver doesn't push sample rates);
        - bugfixes the conversion of spi_transfer to lists;
        - some dma-unsafe command buffers are fixed.
      Signed-off-by: NDavid Brownell <dbrownell@users.sourceforge.net>
      Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
      d93f70b2
    • D
      a90f7e98
    • D
      b8044c74
    • M
      Input: logips2pp - add new signature (99) · 50f6dde0
      Meelis Roos 提交于
      Add Logitech mouse type 99 (Premium Optical Wheel Mouse, model M-BT58,
      plain 3 buttons + wheel) to cure the following message: logips2pp: Detected
      unknown logitech mouse model 99
      Signed-off-by: NMeelis Roos <mroos@linux.ee>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
      50f6dde0
    • A
      Input: ixp4xx-beeper - fix compile error · a09d31ff
      Alessandro Zummo 提交于
      Signed-off-by: NAlessandro Zummo <a.zummo@towertech.it>
      Signed-off-by: NDmitry Torokhov <dtor@mail.ru>
      a09d31ff
    • S
      [PATCH] CIFS: fix cifs_user_read oops when null SMB response on forcedirectio mount · 93544cc6
      Steve French 提交于
      This patch fixes an oops reported by Adrian Bunk in cifs_user_read when a null
      read response is returned on a forcedirectio mount.
      Signed-off-by: NDave Kleikamp <shaggy@austin.ibm.com>
      Signed-off-by: NSteve French <sfrench@us.ibm.com>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      93544cc6
    • C
      [PATCH] neofb: avoid resetting display config on unblank · 10ee39fe
      Christian Trefzer 提交于
      Fix issues with the NeoMagic framebuffer driver.
      
      It nicely complements my previous fix already in linus' tree.  The only
      thing missing now is that the external CRT will not be activated at neofb
      init when external-only is selected, either by register read or
      module/kernel parameter.
      
      Testing was done on a Dell Latitude CPi-A/NM2200 chip.
      
      Previous behaviour:
      - before booting linux, set the preferred display config X via FN+F8
      
      - boot linux, neofb stores the register values in a private
        variable
      
      - change the display config to Y via keystroke
      
      - leave the machine in peace until display is blanked
      
      - touching any key will result in display config X being restored
      
      - booting up, the BIOS will acknowledge config Y, though...
      
      Current behaviour:
      At the time of unblanking, config Y is honoured because we now read back
      register contents instead of just overwriting them with outdated values.
      
      Signed-off by: Christian Trefzer <ctrefzer@gmx.de>
      Cc: "Antonino A. Daplas" <adaplas@pol.net>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      10ee39fe
    • T
      [PATCH] x86: gitignore some autogenerated files for i386 · e2fbf1ac
      Thomas Meyer 提交于
      Add some more gitignore files for i386 architecture.  This files are
      created during the build process of a i386 kernel.
      Signed-off-by: NThomas Meyer <thomas@m3y3r.de>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      e2fbf1ac
    • A
      [PATCH] x86: document sysenter path · 581141cb
      Albert D. Cahalan 提交于
      This path isn't obvious.  It looks as if the kernel will be taking three
      args from the user stack, but it only takes one from there.
      Signed-off-by: NAlbert Cahalan <acahalan@gmail.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      581141cb
    • D
      [PATCH] FRV: Use virtual interrupt disablement · 28baebae
      David Howells 提交于
      Make the FRV arch use virtual interrupt disablement because accesses to the
      processor status register (PSR) are relatively slow and because we will
      soon have the need to deal with multiple interrupt controls at the same
      time (separate h/w and inter-core interrupts).
      
      The way this is done is to dedicate one of the four integer condition code
      registers (ICC2) to maintaining a virtual interrupt disablement state
      whilst inside the kernel.  This uses the ICC2.Z flag (Zero) to indicate
      whether the interrupts are virtually disabled and the ICC2.C flag (Carry)
      to indicate whether the interrupts are physically disabled.
      
      ICC2.Z is set to indicate interrupts are virtually disabled.  ICC2.C is set
      to indicate interrupts are physically enabled.  Under normal running
      conditions Z==0 and C==1.
      
      Disabling interrupts with local_irq_disable() doesn't then actually
      physically disable interrupts - it merely sets ICC2.Z to 1.  Should an
      interrupt then happen, the exception prologue will note ICC2.Z is set and
      branch out of line using one instruction (an unlikely BEQ).  Here it will
      physically disable interrupts and clear ICC2.C.
      
      When it comes time to enable interrupts (local_irq_enable()), this simply
      clears the ICC2.Z flag and invokes a trap #2 if both Z and C flags are
      clear (the HI integer condition).  This can be done with the TIHI
      conditional trap instruction.
      
      The trap then physically reenables interrupts and sets ICC2.C again.  Upon
      returning the interrupt will be taken as interrupts will then be enabled.
      Note that whilst processing the trap, the whole exceptions system is
      disabled, and so an interrupt can't happen till it returns.
      
      If no pending interrupt had happened, ICC2.C would still be set, the HI
      condition would not be fulfilled, and no trap will happen.
      
      Saving interrupts (local_irq_save) is simply a matter of pulling the ICC2.Z
      flag out of the CCR register, shifting it down and masking it off.  This
      gives a result of 0 if interrupts were enabled and 1 if they weren't.
      
      Restoring interrupts (local_irq_restore) is then a matter of taking the
      saved value mentioned previously and XOR'ing it against 1.  If it was one,
      the result will be zero, and if it was zero the result will be non-zero.
      This result is then used to affect the ICC2.Z flag directly (it is a
      condition code flag after all).  An XOR instruction does not affect the
      Carry flag, and so that bit of state is unchanged.  The two flags can then
      be sampled to see if they're both zero using the trap (TIHI) as for the
      unconditional reenablement (local_irq_enable).
      
      This patch also:
      
       (1) Modifies the debugging stub (break.S) to handle single-stepping crossing
           into the trap #2 handler and into virtually disabled interrupts.
      
       (2) Removes superseded fixup pointers from the second instructions in the trap
           tables (there's no a separate fixup table for this).
      
       (3) Declares the trap #3 vector for use in .org directives in the trap table.
      
       (4) Moves irq_enter() and irq_exit() in do_IRQ() to avoid problems with
           virtual interrupt handling, and removes the duplicate code that has now
           been folded into irq_exit() (softirq and preemption handling).
      
       (5) Tells the compiler in the arch Makefile that ICC2 is now reserved.
      
       (6) Documents the in-kernel ABI, including the virtual interrupts.
      
       (7) Renames the old irq management functions to different names.
      Signed-off-by: NDavid Howells <dhowells@redhat.com>
      Signed-off-by: NAndrew Morton <akpm@osdl.org>
      Signed-off-by: NLinus Torvalds <torvalds@osdl.org>
      28baebae