1. 23 9月, 2008 2 次提交
  2. 19 9月, 2008 4 次提交
    • R
      e100: Use pci_pme_active to clear PME_Status and disable PME# · e7272403
      Rafael J. Wysocki 提交于
      Currently e100 uses pci_enable_wake() to clear pending wake-up events
      and disable PME# during intitialization, but that function is not
      suitable for this purpose, because it immediately returns error code
      if device_may_wakeup() returns false for given device.
      
      Make e100 use pci_pme_active(), which carries out exactly the
      required operations, instead.
      Signed-off-by: NRafael J. Wysocki <rjw@sisk.pl>
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      e7272403
    • C
      e1000: prevent corruption of EEPROM/NVM · 78566fec
      Christopher Li 提交于
      Andrey reports e1000 corruption, and that a patch in vmware's ESX fixed
      it.
      
      The EEPROM corruption is triggered by concurrent access of the EEPROM
      read/write. Putting a lock around it solve the problem.
      
      [akpm@linux-foundation.org: use DEFINE_SPINLOCK to avoid confusing lockdep]
      Signed-off-by: NChristopher Li <chrisl@vmware.com>
      Reported-by: NAndrey Borzenkov <arvidjaar@mail.ru>
      Cc: Zach Amsden <zach@vmware.com>
      Cc: Pratap Subrahmanyam <pratap@vmware.com>
      Cc: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
      Cc: Jesse Brandeburg <jesse.brandeburg@intel.com>
      Cc: Bruce Allan <bruce.w.allan@intel.com>
      Cc: PJ Waskiewicz <peter.p.waskiewicz.jr@intel.com>
      Cc: John Ronciak <john.ronciak@intel.com>
      Cc: Jeff Garzik <jeff@garzik.org>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      78566fec
    • Y
      forcedeth: call restore mac addr in nv_shutdown path · f55c21fd
      Yinghai Lu 提交于
      after
      
      | commit f735a2a1
      | Author: Tobias Diedrich <ranma+kernel@tdiedrich.de>
      | Date:   Sun May 18 15:02:37 2008 +0200
      |
      |    [netdrvr] forcedeth: setup wake-on-lan before shutting down
      |
      |    When hibernating in 'shutdown' mode, after saving the image the suspend hook
      |    is not called again.
      |    However, if the device is in promiscous mode, wake-on-lan will not work.
      |    This adds a shutdown hook to setup wake-on-lan before the final shutdown.
      |
      |    Signed-off-by: Tobias Diedrich <ranma+kernel@tdiedrich.de>
      |    Signed-off-by: Jeff Garzik <jgarzik@redhat.com>
      
      my servers with nvidia ck804 and mcp55 will reverse mac address with kexec.
      
      it turns out that we need to restore the mac addr in nv_shutdown().
      
      [akpm@linux-foundation.org: fix typo in printk]
      Signed-off-by: NYinghai Lu <yhlu.kernel@gmail.com>
      Cc: Tobias Diedrich <ranma+kernel@tdiedrich.de>
      Cc: Ayaz Abdulla <aabdulla@nvidia.com>
      Cc: Jeff Garzik <jeff@garzik.org>
      Cc: "Rafael J. Wysocki" <rjw@sisk.pl>
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      f55c21fd
    • B
      bnx2: Promote vector field in bnx2_irq structure from u16 to unsigned int · 27ed9ddf
      Benjamin Li 提交于
      The bnx2 driver stores/uses the irq value from the pci_dev internally.
      But when it stores the irq value, it has been performing an
      integer demotion.  Because of the recent changes made to
      arch/x86/kernel/io_apic.c, the new method in creating the irq value
      (using build_irq_for_pci_dev()) has exposed this bug on x86 systems.
      
      Because of this demotion when calling request_irq() from
      bnx2_request_irq(), the driver would get a return code of -EINVAL.
      This is because the kernel could not find the requested irq descriptor.
      By storing the irq value properly, the kernel can find the correct
      irq descriptor and the bnx2 driver can operate normally.
      Signed-off-by: NBenjamin Li <benli@broadcom.com>
      Signed-off-by: NMichael Chan <mchan@broadcom.com>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      27ed9ddf
  3. 13 9月, 2008 1 次提交
  4. 11 9月, 2008 1 次提交
  5. 06 9月, 2008 1 次提交
  6. 04 9月, 2008 11 次提交
  7. 03 9月, 2008 13 次提交
  8. 28 8月, 2008 1 次提交
  9. 27 8月, 2008 6 次提交
    • E
      wan: Missing capability checks in sbni_ioctl() · f2455eb1
      Eugene Teo 提交于
      There are missing capability checks in the following code:
      
      1300 static int
      1301 sbni_ioctl( struct net_device  *dev,  struct ifreq  *ifr,  int  cmd)
      1302 {
      [...]
      1319     case  SIOCDEVRESINSTATS :
      1320         if( current->euid != 0 )    /* root only */
      1321             return  -EPERM;
      [...]
      1336     case  SIOCDEVSHWSTATE :
      1337         if( current->euid != 0 )    /* root only */
      1338             return  -EPERM;
      [...]
      1357     case  SIOCDEVENSLAVE :
      1358         if( current->euid != 0 )    /* root only */
      1359             return  -EPERM;
      [...]
      1372     case  SIOCDEVEMANSIPATE :
      1373         if( current->euid != 0 )    /* root only */
      1374             return  -EPERM;
      
      Here's my proposed fix:
      
      Missing capability checks.
      Signed-off-by: NEugene Teo <eugeneteo@kernel.sg>
      Signed-off-by: NDavid S. Miller <davem@davemloft.net>
      f2455eb1
    • J
      e100, fix iomap read · 17393dd6
      Jiri Slaby 提交于
      There were 2 omitted readb's used on an iomap space. eliminate them
      by using ioread8 instead.
      Signed-off-by: NJiri Slaby <jirislaby@gmail.com>
      Cc: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
      Cc: Jesse Brandeburg <jesse.brandeburg@intel.com>
      Cc: Bruce Allan <bruce.w.allan@intel.com>
      Cc: PJ Waskiewicz <peter.p.waskiewicz.jr@intel.com>
      Cc: John Ronciak <john.ronciak@intel.com>
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      17393dd6
    • B
      ibm_newemac: Don't call dev_mc_add() before device is registered · e8296582
      Benjamin Herrenschmidt 提交于
      We must not call dev_mc_add() from within our HW configure which happens
      before we initialize and register the netdev. Do it in open() instead.
      
      Thanks to Sebastian Siewior for tracking it down.
      Signed-off-by: NBenjamin Herrenschmidt <benh@kernel.crashing.org>
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      e8296582
    • S
      net: don't grab a mutex within a timer context in gianfar · ab939905
      Sebastian Siewior 提交于
      I got the following backtrace while network was unavailble:
      
      |NETDEV WATCHDOG: eth0: transmit timed out
      |BUG: sleeping function called from invalid context at /home/bigeasy/git/linux-2.6-powerpc/kernel/mutex.c:87
      |in_atomic():1, irqs_disabled():0
      |Call Trace:
      |[c0383d90] [c0006dd8] show_stack+0x48/0x184 (unreliable)
      |[c0383db0] [c001e938] __might_sleep+0xe0/0xf4
      |[c0383dc0] [c025a43c] mutex_lock+0x24/0x3c
      |[c0383de0] [c019005c] phy_stop+0x20/0x70
      |[c0383df0] [c018d4ec] stop_gfar+0x28/0xf4
      |[c0383e10] [c018e8c4] gfar_timeout+0x30/0x60
      |[c0383e20] [c01fe7c0] dev_watchdog+0xa8/0x144
      |[c0383e30] [c002f93c] run_timer_softirq+0x148/0x1c8
      |[c0383e60] [c002b084] __do_softirq+0x5c/0xc4
      |[c0383e80] [c00046fc] do_softirq+0x3c/0x54
      |[c0383e90] [c002ac60] irq_exit+0x3c/0x5c
      |[c0383ea0] [c000b378] timer_interrupt+0xe0/0xf8
      |[c0383ec0] [c000e5ac] ret_from_except+0x0/0x18
      |[c0383f80] [c000804c] cpu_idle+0xcc/0xdc
      |[c0383fa0] [c025c07c] etext+0x7c/0x90
      |[c0383fc0] [c0338960] start_kernel+0x294/0x2a8
      |[c0383ff0] [c00003dc] skpinv+0x304/0x340
      |------------[ cut here ]------------
      
      The phylock was once a spinlock but got changed into a mutex via
      commit 35b5f6b1 aka [PHYLIB: Locking fixes for PHY I/O potentially sleeping]
      Signed-off-by: NSebastian Siewior <bigeasy@linutronix.de>
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      ab939905
    • A
      forcedeth: fix checksum flag · edcfe5f7
      Ayaz Abdulla 提交于
      Fix the checksum feature advertised in device flags.  The hardware support
      TCP/UDP over IPv4 and TCP/UDP over IPv6 (without IPv6 extension headers).
      However, the kernel feature flags do not distinguish IPv6 with/without
      extension headers.
      
      Therefore, the driver needs to use NETIF_F_IP_CSUM instead of
      NETIF_F_HW_CSUM since the latter includes all IPv6 packets.
      
      A future patch can be created to check for extension headers and perform
      software checksum calculation.
      Signed-off-by: NAyaz Abdulla <aabdulla@nvidia.com>
      Cc: Jeff Garzik <jgarzik@pobox.com>
      Cc: Manfred Spraul <manfred@colorfullife.com
      Cc: <stable@kernel.org>		[2.6.25.x, 2.6.26.x]
      Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      edcfe5f7
    • O
      net/usb/mcs7830: add set_mac_address · 10254331
      Oliver Martin 提交于
      Implement set_mac_address for mcs7830. This enables me to use it with my
      cable modem.
      Signed-off-by: NOliver Martin <oliver.martin@student.tuwien.ac.at>
      Signed-off-by: NArnd Bergmann <arnd@arndb.de>
      Signed-off-by: NJeff Garzik <jgarzik@redhat.com>
      10254331