1. 27 Jun, 2005 24 commits
  2. 26 Jun, 2005 16 commits
    • pageexec's avatar
      [IPVS]: Fix for overflows · 4da62fc7
      pageexec authored
      From: <pageexec@freemail.hu>
      
      $subject was fixed in 2.4 already, 2.6 needs it as well.
      
      The impact of the bugs is a kernel stack overflow and privilege escalation
      from CAP_NET_ADMIN via the IP_VS_SO_SET_STARTDAEMON/IP_VS_SO_GET_DAEMON
      ioctls.  People running with 'root=all caps' (i.e., most users) are not
      really affected (there's nothing to escalate), but SELinux and similar
      users should take it seriously if they grant CAP_NET_ADMIN to other users.
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      4da62fc7
    • Sascha Hauer's avatar
      [PATCH] DM9000 network driver bugfix · 5f6b5517
      Sascha Hauer authored
      This patch fixes two bugs in the dm9000 network driver:
      
      - Don't read one byte too much in 8bit mode.
      - release correct resource
      Signed-off-by: default avatarJochen Karrer <j.karrer@lightmaze.com>
      Signed-off-by: default avatarSascha Hauer <s.hauer@pengutronix.de>
      Cc: Jeff Garzik <jgarzik@pobox.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      5f6b5517
    • Ismail Donmez's avatar
      [PATCH] Documentation/networking/dmfe.txt: Make documentation nicer · 1db1a874
      Ismail Donmez authored
      Patch indents dmfe.txt to look like other docs.  It adds a tip about CNET
      cards using Davicom chipsets.  Also it removes parts where it refers to how
      to build driver out-of-kernel which seems to be cruft from times where the
      driver was out of the kernel.
      Signed-off-by: default avatarIsmail Donmez <ismail@kde.org.tr>
      Signed-off-by: default avatarDomen Puncer <domen@coderock.org>
      Cc: Jeff Garzik <jgarzik@pobox.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      1db1a874
    • Denis Vlasenko's avatar
      400de2c0
    • Pavel Machek's avatar
      [PATCH] fix int vs. pm_message_t confusion in airo · 1cc68ae0
      Pavel Machek authored
      Fix int vs. pm_message_t confusion in airo. Should change no code.
      Signed-off-by: default avatarPavel Machek <pavel@suse.cz>
      Cc: Jeff Garzik <jgarzik@pobox.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      1cc68ae0
    • Maciej W. Rozycki's avatar
      [PATCH] defxx: Use irqreturn_t for the interrupt handler · feea1db2
      Maciej W. Rozycki authored
      This is a fix for the interrupt handler in the defxx driver to use
      irqreturn_t.  Beside the obvious fix of returning a proper status at all,
      it actually checks board registers as appropriate for determining if an
      interrupt has been recorded in the bus-specific interface logic.
      
      The patch also includes an obvious one-line fix for SET_NETDEV_DEV needed
      for the EISA variation, for which I've decided there is no point in sending
      separately.
      Signed-off-by: default avatarMaciej W. Rozycki <macro@linux-mips.org>
      Cc: Jeff Garzik <jgarzik@pobox.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      feea1db2
    • Andrew Morton's avatar
      [PATCH] dmfe warning fix · 16b110c3
      Andrew Morton authored
      drivers/net/tulip/dmfe.c: In function `dmfe_parse_srom':
      drivers/net/tulip/dmfe.c:1805: warning: passing arg 1 of `__le16_to_cpup' from incompatible pointer type
      drivers/net/tulip/dmfe.c:1817: warning: passing arg 1 of `__le32_to_cpup' from incompatible pointer type
      drivers/net/tulip/dmfe.c:1817: warning: passing arg 1 of `__le32_to_cpup' from incompatible pointer type
      
      This is basically a guess:
      
      Cc: Jeff Garzik <jgarzik@pobox.com>
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      16b110c3
    • Adrian Bunk's avatar
      [PATCH] document that 8139TOO supports 8129/8130 · f04e3f09
      Adrian Bunk authored
      The 8129/8130 support is a sub-option that is not visible if the user
      hasn't enabled the 8139 support.
      
      Let's make it a bit easier for users to find the driver for their nic.
      Signed-off-by: default avatarAdrian Bunk <bunk@stusta.de>
      f04e3f09
    • David S. Miller's avatar
      [NETLINK]: Fix two socket hashing bugs. · d470e3b4
      David S. Miller authored
      1) netlink_release() should only decrement the hash entry
         count if the socket was actually hashed.
      
         This was causing hash->entries to underflow, which
         resulting in all kinds of troubles.
      
         On 64-bit systems, this would cause the following
         conditional to erroneously trigger:
      
      	err = -ENOMEM;
      	if (BITS_PER_LONG > 32 && unlikely(hash->entries >= UINT_MAX))
      		goto err;
      
      2) netlink_autobind() needs to propagate the error return from
         netlink_insert().  Otherwise, callers will not see the error
         as they should and thus try to operate on a socket with a zero pid,
         which is very bad.
      
         However, it should not propagate -EBUSY.  If two threads race
         to autobind the socket, that is fine.  This is consistent with the
         autobind behavior in other protocols.
      
         So bug #1 above, combined with this one, resulted in hangs
         on netlink_sendmsg() calls to the rtnetlink socket.  We'd try
         to do the user sendmsg() with the socket's pid set to zero,
         later we do a socket lookup using that pid (via the value we
         stashed away in NETLINK_CB(skb).pid), but that won't give us the
         user socket, it will give us the rtnetlink socket.  So when we
         try to wake up the receive queue, we dive back into rtnetlink_rcv()
         which tries to recursively take the rtnetlink semaphore.
      
      Thanks to Jakub Jelink for providing backtraces.  Also, thanks to
      Herbert Xu for supplying debugging patches to help track this down,
      and also finding a mistake in an earlier version of this fix.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      d470e3b4
    • Nishanth Aravamudan's avatar
      [PATCH] net/slip: replace schedule_timeout() with msleep_interruptible() · a9fc2510
      Nishanth Aravamudan authored
      Use msleep_interruptible() instead of schedule_timeout() to guarantee
      the task delays as expected.
      a9fc2510
    • Adrian Bunk's avatar
      [PATCH] drivers/net/ewrk3.c: remove dead code · 6835d09a
      Adrian Bunk authored
      This patch removes some obviously dead code found by the Coverity
      checker.
      Signed-off-by: default avatarAdrian Bunk <bunk@stusta.de>
      6835d09a
    • Adrian Bunk's avatar
      [PATCH] drivers/net/skfp/: fix LITTLE_ENDIAN · 854608d8
      Adrian Bunk authored
      This patch fixes the LITTLE_ENDIAN #define and a function prototype.
      Signed-off-by: default avatarAdrian Bunk <bunk@stusta.de>
      854608d8
    • Adrian Bunk's avatar
      [PATCH] drivers/net/tokenring/: cleanups · de70b4c8
      Adrian Bunk authored
      This patch contains the follwing cleanups:
      - make needlessly global code static
      - remove obsolete Emacs settings
      Signed-off-by: default avatarAdrian Bunk <bunk@stusta.de>
      de70b4c8
    • David S. Miller's avatar
      [ATALK]: Include asm/byteorder.h in linux/atalk.h · 32e9e25e
      David S. Miller authored
      We're using __be16 in userland visible types, so we
      have to include asm/byteorder.h so that works.
      Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
      32e9e25e
    • Robert Olsson's avatar
    • Andreas Mohr's avatar
      [PATCH] pcnet_cs.c: IRQ handler optimization · 93ad4fb0
      Andreas Mohr authored
      During some performance diagnostics I stumbled on this slightly wasteful
      code in pcnet_cs.c which I made the patch included at the bottom for (two
      minor comment fixes included).
      
      Improvement:
      instead of *always* calculating
      lea    0x2c0(%edx),%ebx
      and then additionally doing the
      mov    %edx,0xc0(%ebx)
      addition *if we need it*,
      
      we now do the *whole* calculation of
      mov    %edx,0x380(%ebx)
      *only* if we need it.
      This even manages to save us a whole 16-byte alignment buffer loss
      in this compilation case.
      
      Result: slightly improves IRQ handler performance in both shared and
      non-shared IRQ case, which should make my rusty P3/700 a slight bit happier.
      
      Thank you for your support,
      
      Andreas Mohr
      
      old asm result (using gcc 3.3.5):
      
      000015a0 <ei_irq_wrapper>:
          15a0:       55                      push   %ebp
          15a1:       89 e5                   mov    %esp,%ebp
          15a3:       53                      push   %ebx
          15a4:       8d 9a c0 02 00 00       lea    0x2c0(%edx),%ebx
          15aa:       e8 fc ff ff ff          call   15ab <ei_irq_wrapper+0xb>
          15af:       83 f8 01                cmp    $0x1,%eax
          15b2:       74 03                   je     15b7 <ei_irq_wrapper+0x17>
          15b4:       5b                      pop    %ebx
          15b5:       5d                      pop    %ebp
          15b6:       c3                      ret
          15b7:       31 d2                   xor    %edx,%edx
          15b9:       89 93 c0 00 00 00       mov    %edx,0xc0(%ebx)
          15bf:       eb f3                   jmp    15b4 <ei_irq_wrapper+0x14>
          15c1:       eb 0d                   jmp    15d0 <ei_watchdog>
          15c3:       90                      nop
          15c4:       90                      nop
          15c5:       90                      nop
          15c6:       90                      nop
          15c7:       90                      nop
          15c8:       90                      nop
          15c9:       90                      nop
          15ca:       90                      nop
          15cb:       90                      nop
          15cc:       90                      nop
          15cd:       90                      nop
          15ce:       90                      nop
          15cf:       90                      nop
      
      000015d0 <ei_watchdog>:
      
      new asm result:
      
      000015a0 <ei_irq_wrapper>:
          15a0:       55                      push   %ebp
          15a1:       89 e5                   mov    %esp,%ebp
          15a3:       53                      push   %ebx
          15a4:       89 d3                   mov    %edx,%ebx
          15a6:       e8 fc ff ff ff          call   15a7 <ei_irq_wrapper+0x7>
          15ab:       83 f8 01                cmp    $0x1,%eax
          15ae:       74 03                   je     15b3 <ei_irq_wrapper+0x13>
          15b0:       5b                      pop    %ebx
          15b1:       5d                      pop    %ebp
          15b2:       c3                      ret
          15b3:       31 d2                   xor    %edx,%edx
          15b5:       89 93 80 03 00 00       mov    %edx,0x380(%ebx)
          15bb:       eb f3                   jmp    15b0 <ei_irq_wrapper+0x10>
          15bd:       8d 76 00                lea    0x0(%esi),%esi
      
      000015c0 <ei_watchdog>:
      Signed-off-by: default avatarAndrew Morton <akpm@osdl.org>
      93ad4fb0