17 Oct, 2007

40 commits

  • Signed-off-by: David S. Miller
    Signed-off-by: Jens Axboe

    David S. Miller
     
  • The memset() of the sg entry was originally removed, because it could
    overwrite a chain pointer. But it's quite OK to memset() it when we know
    it's a valid entry, since it can't contain a chain pointer.

    Signed-off-by: Jens Axboe

    Jens Axboe
     
  • sg list elements might not be continuous.

    Signed-off-by: FUJITA Tomonori
    Signed-off-by: Jens Axboe

    FUJITA Tomonori
     
  • This patch disables DMA refetch in the PCI bridge. We have disabled DMA
    prefetch for quite some time. Testing with XEN revealed another ASIC bug. If
    dom0 resides on a P600 the board can can an MCA bi accessing invalid memory
    addresses. Apparently, we need to disable both prefetch and refetch.
    My understanding is a refetch operation should not occur but it is a valid
    thing to do if prefetched data is no longer available for whatever reason.
    Please consider this patch for inclusion.

    Signed-off-by: Mike Miller
    Signed-off-by: Alex Chiang

    --------------------------------------------------------------------------------
    Signed-off-by: Jens Axboe

    Mike Miller (OS Dev)
     
  • sg list elements might not be continuous.

    Signed-off-by: FUJITA Tomonori
    Signed-off-by: Jens Axboe

    FUJITA Tomonori
     
  • Commit 2c941a204070ab32d92d40318a3196a7fb994c00 looks incomplete. The
    helper functions like prepare_sg() need to support sg chaining too.

    Signed-off-by: FUJITA Tomonori
    Signed-off-by: Jens Axboe

    FUJITA Tomonori
     
  • Signed-off-by: Jens Axboe

    Boaz Harrosh
     
  • * 'upstream-linus' of master.kernel.org:/pub/scm/linux/kernel/git/jgarzik/netdev-2.6:
    WOL bugfix for 3c59x.c
    skge 1.12
    skge: add a debug interface
    skge: eeprom support
    skge: internal stats
    skge: XM PHY handling fixes
    skge: changing MTU while running causes problems
    skge: fix ram buffer size calculation
    gianfar: Fix compile regression caused by 09f75cd7
    net: Fix new EMAC driver for NAPI changes
    bonding: two small fixes for IPoIB support
    e1000e: don't poke PHY registers to retreive link status
    e1000e: fix error checks
    e1000e: Fix debug printk macro
    tokenring/3c359.c: fixed array index problem
    [netdrvr] forcedeth: remove in-driver copy of net_device_stats
    [netdrvr] forcedeth: improved probe info; dev_printk() cleanups
    forcedeth: fix NAPI rx poll function

    Linus Torvalds
     
  • AFAICS, fallout from repacing include of blkdev.h with include of bio.h.

    Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     
  • This fixes a lost 'key' variable declaration that went missing in a
    mismerge (commit b981d8b3f5e008ff10d993be633ad00564fc22cd)

    Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     
  • Some NICs (3c905B) can not generate PME in power state PCI_D0, while others
    like 3c905C can. Call pci_enable_wake() with PCI_D3hot should give proper
    WOL for 3c905B.

    Signed-off-by: Steffen Klassert
    Tested-by: Harry Coin
    Signed-off-by: Andrew Morton
    Signed-off-by: Jeff Garzik

    Steffen Klassert
     
  • version update

    Signed-off-by: Stephen Hemminger
    Signed-off-by: Jeff Garzik

    Stephen Hemminger
     
  • Add a debugfs interface to look at internal ring state.

    Signed-off-by: Stephen Hemminger
    Signed-off-by: Jeff Garzik

    Stephen Hemminger
     
  • Add ability to read/write EEPROM

    Signed-off-by: Stephen Hemminger
    Signed-off-by: Jeff Garzik

    Stephen Hemminger
     
  • Use internal stats structure

    Signed-off-by: Stephen Hemminger
    Signed-off-by: Jeff Garzik

    Stephen Hemminger
     
  • Change how PHY is managed on SysKonnect fibre based boards.
    Poll for PHY coming up 1 per second, but use interrupt to detect loss.

    Signed-off-by: Stephen Hemminger
    Signed-off-by: Jeff Garzik

    Stephen Hemminger
     
  • Rather than bring network down/up when changing MTU,
    only need to impact receiver.

    Signed-off-by: Stephen Hemminger
    Signed-off-by: Jeff Garzik

    Stephen Hemminger
     
  • This fixes problems with transmit hangs on older fiber based SysKonnect boards.

    Adjust ram buffer sizing calculation to make it correct on all boards
    and make it like the code in sky2 driver.

    Signed-off-by: Stephen Hemminger
    Signed-off-by: Jeff Garzik

    Stephen Hemminger
     
  • Signed-off-by: Li Yang
    Signed-off-by: Jeff Garzik

    Li Yang
     
  • net: Fix new EMAC driver for NAPI changes

    This fixes the new EMAC driver for the NAPI updates. The previous patch
    by Roland Dreier (already applied) to do that doesn't actually work. This
    applies on top of it makes it work on my test Ebony machine.

    This patch depends on "net: Add __napi_sycnhronize() to sync with napi poll"
    posted previously.

    Signed-off-by: Benjamin Herrenschmidt
    Signed-off-by: Jeff Garzik

    Benjamin Herrenschmidt
     
  • Two small fixes to IPoIB support for bonding:

    1- copy header_ops from slave to bonding for IPoIB slaves
    2- move release and destroy logic to UNREGISTER from GOING_DOWN
    notifier to avoid double release

    Set bonding to version 3.2.1.

    Signed-off-by: Moni Shoua
    Signed-off-by: Jay Vosburgh
    Signed-off-by: Jeff Garzik

    Jay Vosburgh
     
  • Apparently poking the link status registers when autonegotiation
    is running on the PHY might botch the PHY link on 80003es2lan
    devices. While this is a very rare condition we can completely
    avoid it alltogether by just using the MAC link bits to provide
    the proper information to ethtool.

    Signed-off-by: Auke Kok
    Signed-off-by: Jeff Garzik

    Auke Kok
     
  • Spotted by the Coverity checker.

    Signed-off-by: Adrian Bunk
    Signed-off-by: Auke Kok
    Signed-off-by: Jeff Garzik

    Adrian Bunk
     
  • Spotted by Joe Perches.

    Signed-off-by: Auke Kok
    Signed-off-by: Jeff Garzik

    Auke Kok
     
  • The xl_laa array is just 6 bytes long, so we should substract
    10 from the index, like is also done some lines above already.

    Signed-Off-By: Marcus Meissner

    Signed-off-by: Jeff Garzik

    Marcus Meissner
     
  • A copy of struct net_device_stats now lives in struct net_device,
    making in-driver copies a waste of memory.

    Signed-off-by: Jeff Garzik

    Jeff Garzik
     
  • main change:
    * greatly improve per-NIC probe diagnostic output. Similar to other
    net drivers, print out MAC address, PHY info, and various hardware and
    software flags that may be relevant.

    other changes:
    * similar to other net drivers, only print the initial version message
    when we have found at least one board.

    * don't bother to print error message when pci_enable_device() fails,
    it will do so for us.

    * use dev_printk() rather than printk() in nv_probe(). This gives
    use a standardized output similar to the rest of the kernel, and
    eliminates the need to manually print out PCI bus id.

    * use DRV_NAME constant where appropriate

    * clean struct pci_driver indentation

    Signed-off-by: Jeff Garzik

    Jeff Garzik
     
  • fix the forcedeth NAPI poll function to not emit this warning:

    [ 186.635916] WARNING: at net/core/dev.c:2166 net_rx_action()
    [ 186.641351] [] net_rx_action+0x145/0x1b0
    [ 186.646191] [] __do_softirq+0x42/0x90
    [ 186.650784] [] do_softirq+0x26/0x30
    [ 186.655202] [] local_bh_enable+0x48/0xa0
    [ 186.660055] [] lock_sock_nested+0xa0/0xc0
    [ 186.664995] [] tcp_recvmsg+0x16/0xbc0
    [ 186.669588] [] __generic_file_aio_write_nolock+0x27b/0x520
    [ 186.676001] [] sock_common_recvmsg+0x45/0x70
    [ 186.681202] [] sock_aio_read+0x11f/0x140
    [ 186.686054] [] do_sync_read+0xc6/0x110
    [ 186.690735] [] autoremove_wake_function+0x0/0x40
    [ 186.696280] [] net_tx_action+0x3c/0xe0
    [ 186.700961] [] vfs_read+0x132/0x140
    [ 186.705378] [] sys_read+0x41/0x70
    [ 186.709625] [] sysenter_past_esp+0x5f/0x89
    [ 186.714651] =======================

    Signed-off-by: Ingo Molnar
    Signed-off-by: Jeff Garzik

    Ingo Molnar
     
  • * master.kernel.org:/pub/scm/linux/kernel/git/bart/ide-2.6: (33 commits)
    amd74xx: remove /proc/ide/amd74xx
    amd74xx/via82cxxx: don't initialize drive->dn
    sis5513: remove /proc/ide/sis
    ide: remove CONFIG_IDEDMA_ONLYDISK
    ide: add "hdx=nodma" kernel parameter
    ide: remove hwif->autodma and drive->autodma
    ide: remove "idex=dma" kernel parameter
    ide: remove CONFIG_BLK_DEV_IDEDMA_FORCED
    ide: use PCI_VDEVICE() macro
    sis5513: clear prefetch and postwrite for ATAPI devices
    it8213/piix/slc90e66: "de-couple" PIO and UDMA modes
    ide: unexport noautodma
    ide: unexport ide_tune_dma
    ide: remove ->ide_dma_check (take 2)
    ide-pmac: add PIO autotune fallback to ->ide_dma_check
    ide-cris: add PIO autotune fallback to ->ide_dma_check
    sl82c105: add PIO autotune fallback to ->ide_dma_check
    cs5530/sc1200: add PIO autotune fallback to ->ide_dma_check
    ide: remove ide_use_fast_pio()
    ide: remove drive->init_speed zeroing
    ...

    Linus Torvalds
     
  • Signed-off-by: Al Viro
    Signed-off-by: Linus Torvalds

    Al Viro
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jmorris/selinux-2.6:
    SELinux: kills warnings in Improve SELinux performance when AVC misses
    SELinux: improve performance when AVC misses.
    SELinux: policy selectable handling of unknown classes and perms
    SELinux: Improve read/write performance
    SELinux: tune avtab to reduce memory usage

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/ieee1394/linux1394-2.6: (25 commits)
    firewire: fw-cdev: reorder wakeup vs. spinlock
    firewire: in-code doc updates.
    firewire: a header cleanup
    firewire: adopt read cycle timer ABI from raw1394
    firewire: fw-ohci: check for misconfigured bus (phyID == 63)
    firewire: fw-ohci: missing dma_unmap_single
    firewire: fw-ohci: log posted write errors
    firewire: fw-ohci: reorder includes
    firewire: fw-ohci: fix includes
    firewire: fw-ohci: enforce read order for selfID generation
    firewire: fw-sbp2: use an own workqueue (fix system responsiveness)
    firewire: fw-sbp2: expose module parameter for workarounds
    firewire: fw-sbp2: add support for multiple logical units per target
    firewire: fw-sbp2: always enable IRQs before calling command ORB callback
    firewire: fw-core: local variable shadows a global one
    firewire: optimize fw_core_add_address_handler
    ieee1394: ieee1394_core.c: use DEFINE_SPINLOCK for spinlock definition
    ieee1394: csr1212: proper refcounting
    ieee1394: nodemgr: fix leak of struct csr1212_keyval
    ieee1394: pcilynx: I2C cleanups
    ...

    Linus Torvalds
     
  • * ssh://master.kernel.org/pub/scm/linux/kernel/git/sam/kbuild:
    x86: fix boot error introduced by kbuild

    Linus Torvalds
     
  • * 'release' of ssh://master.kernel.org/pub/scm/linux/kernel/git/aegl/linux-2.6:
    [IA64] Fix build for CONFIG_SMP=n

    Linus Torvalds
     
  • This patch kills ugly warnings when the "Improve SELinux performance
    when ACV misses" patch.

    Signed-off-by: KaiGai Kohei
    Signed-off-by: James Morris

    KaiGai Kohei
     
  • * We add ebitmap_for_each_positive_bit() which enables to walk on
    any positive bit on the given ebitmap, to improve its performance
    using common bit-operations defined in linux/bitops.h.
    In the previous version, this logic was implemented using a combination
    of ebitmap_for_each_bit() and ebitmap_node_get_bit(), but is was worse
    in performance aspect.
    This logic is most frequestly used to compute a new AVC entry,
    so this patch can improve SELinux performance when AVC misses are happen.
    * struct ebitmap_node is redefined as an array of "unsigned long", to get
    suitable for using find_next_bit() which is fasted than iteration of
    shift and logical operation, and to maximize memory usage allocated
    from general purpose slab.
    * Any ebitmap_for_each_bit() are repleced by the new implementation
    in ss/service.c and ss/mls.c. Some of related implementation are
    changed, however, there is no incompatibility with the previous
    version.
    * The width of any new line are less or equal than 80-chars.

    The following benchmark shows the effect of this patch, when we
    access many files which have different security context one after
    another. The number is more than /selinux/avc/cache_threshold, so
    any access always causes AVC misses.

    selinux-2.6 selinux-2.6-ebitmap
    AVG: 22.763 [s] 8.750 [s]
    STD: 0.265 0.019
    ------------------------------------------
    1st: 22.558 [s] 8.786 [s]
    2nd: 22.458 [s] 8.750 [s]
    3rd: 22.478 [s] 8.754 [s]
    4th: 22.724 [s] 8.745 [s]
    5th: 22.918 [s] 8.748 [s]
    6th: 22.905 [s] 8.764 [s]
    7th: 23.238 [s] 8.726 [s]
    8th: 22.822 [s] 8.729 [s]

    Signed-off-by: KaiGai Kohei
    Acked-by: Stephen Smalley
    Signed-off-by: James Morris

    KaiGai Kohei
     
  • Allow policy to select, in much the same way as it selects MLS support, how
    the kernel should handle access decisions which contain either unknown
    classes or unknown permissions in known classes. The three choices for the
    policy flags are

    0 - Deny unknown security access. (default)
    2 - reject loading policy if it does not contain all definitions
    4 - allow unknown security access

    The policy's choice is exported through 2 booleans in
    selinuxfs. /selinux/deny_unknown and /selinux/reject_unknown.

    Signed-off-by: Eric Paris
    Acked-by: Stephen Smalley
    Signed-off-by: James Morris

    Eric Paris
     
  • It reduces the selinux overhead on read/write by only revalidating
    permissions in selinux_file_permission if the task or inode labels have
    changed or the policy has changed since the open-time check. A new LSM
    hook, security_dentry_open, is added to capture the necessary state at open
    time to allow this optimization.

    (see http://marc.info/?l=selinux&m=118972995207740&w=2)

    Signed-off-by: Yuichi Nakamura
    Acked-by: Stephen Smalley
    Signed-off-by: James Morris

    Yuichi Nakamura
     
  • This patch reduces memory usage of SELinux by tuning avtab. Number of hash
    slots in avtab was 32768. Unused slots used memory when number of rules is
    fewer. This patch decides number of hash slots dynamically based on number
    of rules. (chain length)^2 is also printed out in avtab_hash_eval to see
    standard deviation of avtab hash table.

    Signed-off-by: Yuichi Nakamura
    Acked-by: Stephen Smalley
    Signed-off-by: James Morris

    Yuichi Nakamura
     
  • Signed-off-by: Jay Fenlason

    Prompted by https://bugzilla.redhat.com/show_bug.cgi?id=323411

    Signed-off-by: Stefan Richter

    Jay Fenlason