23 Nov, 2007

1 commit


17 Nov, 2007

1 commit


16 Nov, 2007

12 commits

  • * 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
    [NETFILTER]: Fix NULL pointer dereference in nf_nat_move_storage()
    [SUNHME]: VLAN support for sunhme
    [CHELSIO]: Fix skb->dev setting.
    [NETFILTER]: fix compat_nf_sockopt typo
    [INET]: Fix potential kfree on vmalloc-ed area of request_sock_queue
    [VIA_VELOCITY]: Don't oops on MTU change.
    iwl4965: fix not correctly dealing with hotunplug
    rt2x00: Fix chipset revision validation
    iwl3945: place CCK rates in front of OFDM for supported rates
    mac80211: Fix queuing of scan containing a SSID

    Linus Torvalds
     
  • This patch enables VLAN support on sunhme by increasing BMAC_TXMAX/BMAC_RXMAX
    and allocating extra space via skb_put for the VLAN header.

    Signed-off-by: Chris Poon
    Signed-off-by: David S. Miller

    Chris Poon
     
  • eth_type_trans() now sets skb->dev. Access skb->def after it gets
    set.

    Signed-off-by: Divy Le Ray
    Signed-off-by: David S. Miller

    Divy Le Ray
     
  • * 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
    i2c/eeprom: Recognize VGN as a valid Sony Vaio name prefix
    i2c/eeprom: Hide Sony Vaio serial numbers
    i2c-pasemi: Fix NACK detection
    i2c-pasemi: Replace obsolete "driverfs" reference with "sysfs"
    i2c: Make i2c_check_addr static
    i2c-dev: Unbound new-style i2c clients aren't busy
    i2c-dev: "how does it work" comments

    Linus Torvalds
     
  • Recent (i.e. 2005 and later) Sony Vaio laptops have names beginning
    with VGN rather than PCG. Update the eeprom driver so that it
    recognizes these.

    Signed-off-by: Jean Delvare

    Jean Delvare
     
  • The sysfs interface to DMI data takes care to not make the system
    serial number and UUID world-readable, presumably due to privacy
    concerns. For consistency, we should not let the eeprom driver
    export these same strings to the world on Sony Vaio laptops.
    Instead, only make them readable by root, as we already do for BIOS
    passwords.

    Signed-off-by: Jean Delvare

    Jean Delvare
     
  • Turns out we don't actually check the status to see if there was a
    device out there to talk to, just if we had a timeout when doing so.

    Add the proper check, so we don't falsly think there are devices
    on the bus that are not there, etc.

    Signed-off-by: Olof Johansson
    Signed-off-by: Jean Delvare

    Olof Johansson
     
  • Signed-off-by: Robert P. J. Day
    Signed-off-by: Jean Delvare

    Robert P. J. Day
     
  • i2c_check_addr is only used inside i2c-core now, so we can make it
    static and stop exporting it. Thanks to David Brownell for noticing.

    Signed-off-by: Jean Delvare

    Jean Delvare
     
  • Let i2c-dev deal properly with new-style i2c clients. Instead of
    considering them always busy, it needs to check wether a driver is
    bound to them or not.

    This is still not completely correct, as the client could become
    busy later, but the same problem already existed before new-style
    clients were introduced. We'll want to fix it someday.

    Signed-off-by: Jean Delvare
    Acked-by: David Brownell

    Jean Delvare
     
  • This adds some "how does this work" comments to the i2c-dev driver,
    plus separators between the three main components:

    - The parallel list of i2c_adapters ("i2c_dev_list"), each of which
    gets a "struct i2c_dev" and a /dev/i2c-X character special file.

    - An i2cdev_driver gets adapter add/remove notifications, which are
    used to maintain that list of adapters.

    - Special file operations, which let userspace talk either directly to
    the adapter (for i2c_msg operations) or through cached addressing info
    using an anonymous i2c_client (never registered anywhere).

    Plus there's the usual module load/unload record keeping.

    After making sense of this code, I think that the anonymous i2c_client
    is pretty shady. But since it's never registered, using this code with
    a system set up for "new style" I2C drivers is no more complicated than
    always using the I2C_SLAVE_FORCE ioctl (instead of I2C_SLAVE).

    Signed-off-by: David Brownell
    Signed-off-by: Jean Delvare

    David Brownell
     
  • This reverts commit 7fb7ac241162dc51ec0f7644d4a97b2855213c32.

    Heikki Orsila reports that it causes a regression:

    "Doing

    nc host port < /dev/zero

    on a sending machine (not skge) to an skge machine that is receiving:

    nc -l -p port >/dev/null

    with ~60 MiB/s speed, causes the interface go malfunct. A slow
    transfer doesn't cause a problem."

    See

    http://bugzilla.kernel.org/show_bug.cgi?id=9321

    for some more information.

    There is a workaround (also reported by Heikki):

    "After some fiddling, I noticed that not changing the register write
    order on patch:

    + skge_write32(hw, RB_ADDR(q, RB_END), end);
    skge_write32(hw, RB_ADDR(q, RB_WP), start);
    skge_write32(hw, RB_ADDR(q, RB_RP), start);
    - skge_write32(hw, RB_ADDR(q, RB_END), end);

    fixes the visible effect.. Possibly not the root cause of the
    problem, but changing the order back fixes networking here."

    but that has yet to be ack'ed or tested more widely, so the whole
    problem-causing commit gets reverted until this is resolved properly.

    Bisected-and-requested-by: Heikki Orsila
    Cc: Stephen Hemminger
    Cc: Jeff Garzik
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     

15 Nov, 2007

26 commits

  • … is not BF537 specific and to better match other Blackfin-specific conventions

    Signed-off-by: Mike Frysinger <michael.frysinger@analog.com>
    Signed-off-by: Bryan Wu <bryan.wu@analog.com>

    Mike Frysinger
     
  • Simple mtu change when device is down.
    Fix http://bugzilla.kernel.org/show_bug.cgi?id=9382.

    Signed-off-by: Stephen Hemminger
    Signed-off-by: David S. Miller

    Stephen Hemminger
     
  • David S. Miller
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/herbert/crypto-2.6:
    [CRYPTO] geode: Fix not inplace encryption

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/roland/infiniband:
    mlx4_core: Fix thinko in QP destroy (incorrect bitmap_free)
    RDMA/cxgb3: Set the max_qp_init_rd_atom attribute in query_device
    IB/ehca: Fix static rate calculation
    IB/ehca: Return physical link information in query_port()
    IB/ipath: Fix race with ACK retry timeout list management
    IB/ipath: Fix memory leak in ipath_resize_cq() if copy_to_user() fails
    mlx4_core: Fix possible bad free in mlx4_buf_free()

    Linus Torvalds
     
  • * 'master' of master.kernel.org:/pub/scm/linux/kernel/git/davem/net-2.6:
    [NET]: rt_check_expire() can take a long time, add a cond_resched()
    [ISDN] sc: Really, really fix warning
    [ISDN] sc: Fix sndpkt to have the correct number of arguments
    [TCP] FRTO: Clear frto_highmark only after process_frto that uses it
    [NET]: Remove notifier block from chain when register_netdevice_notifier fails
    [FS_ENET]: Fix module build.
    [TCP]: Make sure write_queue_from does not begin with NULL ptr
    [TCP]: Fix size calculation in sk_stream_alloc_pskb
    [S2IO]: Fixed memory leak when MSI-X vector allocation fails
    [BONDING]: Fix resource use after free
    [SYSCTL]: Fix warning for token-ring from sysctl checker
    [NET] random : secure_tcp_sequence_number should not assume CONFIG_KTIME_SCALAR
    [IWLWIFI]: Not correctly dealing with hotunplug.
    [TCP] FRTO: Plug potential LOST-bit leak
    [TCP] FRTO: Limit snd_cwnd if TCP was application limited
    [E1000]: Fix schedule while atomic when called from mii-tool.
    [NETX]: Fix build failure added by 2.6.24 statistics cleanup.
    [EP93xx_ETH]: Build fix after 2.6.24 NAPI changes.
    [PKT_SCHED]: Check subqueue status before calling hard_start_xmit

    Linus Torvalds
     
  • Declare mac using DECLARE_MAC_BUF for use when calling print_mac().

    This fixes compile error where mac was undeclared.
    Also, remove unused variable i.

    Signed-off-by: Jesper Nilsson
    Cc: Mikael Starvik
    Cc: Jeff Garzik
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jesper Nilsson
     
  • New and improved serial driver for CRISv10, take three, with improvements
    suggested by Jiri Slaby.

    - Call wait_event_interruptible with a _correct_ and sensible condition.
    - Removed superfluous test of info->flags & ASYNC_CLOSING, since that is done
    by wait_event_interruptible.
    - Moved common code for deregistering DMA and IRQ to deinit_port function.
    - Use setup_timer when initializing flush_timer.
    - Convert bit-field for uses_dma_in and uses_dma_out to regular bytes.
    - Removed CVS tags.
    - Removed defines and comments for CRIS_BUF_SIZE and TTY_THRESHOLD_THROTTLE
    (no longer used).
    - Cleaned up code to pass checkpatch.
    - Add crisv10.h header file.
    - Merge of CRISv10 from Axis internal CVS.

    Signed-off-by: Jesper Nilsson
    Reviewed-by: Jiri Slaby
    Cc: Mikael Starvik
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jesper Nilsson
     
  • Fix locking bug noted by Roel Kluin .

    Cc: Jeff Garzik
    Cc: Jesper Nilsson
    Cc: Mikael Starvik
    Cc: Roel Kluin
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • New (updated) version of ethernet driver for cris v10.

    - First steps to simplify and make the MII code more similar
    between the etrax100 and etraxfs ports.

    - Start the transmit queue before enabling tx interrupts
    to avoid race with the first frame.

    - Flip the comparition statement to stick to physical addresses
    to avoid phys_to_virt mapping a potential null pointer.
    This was not an error but the change simplifies debugging
    of address-space mappings.

    - Made myPrevRxDesc local to e100_rx since it was only used there.
    Fixed out of memory handling in e100_rx. If dev_alloc_skb() fails
    persistently the system is hosed anyway but at least it won't
    loop in an interrupt handler.

    - Correct some code formatting issues.

    - Add defines SET_ETH_ENABLE_LEDS, SET_ETH_DISABLE_LEDS
    and SET_ETH_AUTONEG used in new cris v10 ethernet driver.

    Signed-off-by: Jesper Nilsson
    Acked-by: Mikael Starvik
    Cc: Jeff Garzik
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Jesper Nilsson
     
  • arm:

    drivers/scsi/aic94xx/aic94xx_sds.c:381:1: warning: "FLASH_SIZE" redefined
    In file included from include/asm/arch/irqs.h:22,
    from include/asm/irq.h:4,
    from include/asm/hardirq.h:6,
    from include/linux/hardirq.h:7,
    from include/asm-generic/local.h:5,
    from include/asm/local.h:1,
    from include/linux/module.h:19,
    from include/linux/device.h:21,
    from include/linux/pci.h:52,
    from drivers/scsi/aic94xx/aic94xx_sds.c:28:
    include/asm/arch/platform.h:444:1: warning: this is the location of the previous definition

    Cc: Gilbert Wu
    Cc: James Bottomley
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrew Morton
     
  • Remove redundant code leading to NULL ptr deref and let terminal config
    settings take place in the proper initialization path in
    usb_console_setup().

    Signed-off-by: Borislav Petkov
    Cc:
    Cc: Greg KH
    Cc: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Borislav Petkov
     
  • Check if AC state has changed across resume and notify userspace if so.

    Fixes "[2.6.24-rc1 regression] AC adapter state does not change after resume"

    Signed-off-by: Alexey Starikovskiy
    Tested-by: Andrey Borzenkov
    Cc: Len Brown
    Cc: "Rafael J. Wysocki"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Alexey Starikovskiy
     
  • Do not provide /proc/acpi/ac_adapter if ACPI_PROCFS is not defined. This
    eliminates duplicated power adapters in HAL and makes it consistent with
    battery module

    Signed-off-by: Andrey Borzenkov
    Acked-by: Alexey Starikovskiy
    Cc: Len Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Andrey Borzenkov
     
  • Make 'default_mode' and 'default_var' be __initdata.
    Fixes these section warnings:

    WARNING: vmlinux.o(.data+0x128e0): Section mismatch: reference to .init.data:default_mode_CRT (between 'default_mode' and 'default_var')
    WARNING: vmlinux.o(.data+0x128e4): Section mismatch: reference to .init.data:default_var_CRT (between 'default_var' and 'dev_attr_size')

    Signed-off-by: Randy Dunlap
    Cc: "Antonino A. Daplas"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • We have seen ramdisk based install systems, where some pages of mapped
    libraries and programs were suddendly zeroed under memory pressure. This
    should not happen, as the ramdisk avoids freeing its pages by keeping them
    dirty all the time.

    It turns out that there is a case, where the VM makes a ramdisk page clean,
    without telling the ramdisk driver. On memory pressure shrink_zone runs
    and it starts to run shrink_active_list. There is a check for
    buffer_heads_over_limit, and if true, pagevec_strip is called.
    pagevec_strip calls try_to_release_page. If the mapping has no releasepage
    callback, try_to_free_buffers is called. try_to_free_buffers has now a
    special logic for some file systems to make a dirty page clean, if all
    buffers are clean. Thats what happened in our test case.

    The simplest solution is to provide a noop-releasepage callback for the
    ramdisk driver. This avoids try_to_free_buffers for ramdisk pages.

    Signed-off-by: Christian Borntraeger
    Acked-by: Nick Piggin
    Cc: "Eric W. Biederman"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Christian Borntraeger
     
  • The tle62x0 driver was ignoring all read errors. This patch makes it
    pass such errors up the stack, instead of returning bogus data.

    Signed-off-by: David Brownell
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     
  • "Luming Yu" says:

    There is a "ttyS1 irq is -1" problem observed on tiger4 which cause the
    serial port broken.

    It is because that there is __no__ ACPI IRQ resource assigned for the
    serial port. So the value of the IRQ for the port is never changed since it
    got initialized to -1.

    If PNP supplies a valid IRQ, use it. Otherwise, leave port.irq == 0, which
    means "no IRQ" to the serial core.

    Signed-off-by: Bjorn Helgaas
    Cc: Yu Luming
    Acked-by: Matthew Wilcox
    Cc: Alan Cox
    Cc: Russell King
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Bjorn Helgaas
     
  • The i5000_edac driver's PCI registration structure has the name
    ""i5000_edac"" (with extra set of double-quotes) which is probably not
    intentional. Get rid of __stringify.

    Signed-off-by: Darrick J. Wong
    Cc: Doug Thompson
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Darrick J. Wong
     
  • Firmware like PNPBIOS or ACPI can report the address space consumed by the
    RTC. The actual space consumed may be less than the size (RTC_IO_EXTENT)
    assumed by the RTC driver.

    The PNP core doesn't request resources yet, but I'd like to make it do so.
    If/when it does, the RTC_IO_EXTENT request may fail, which prevents the RTC
    driver from loading.

    Since we only use the RTC index and data registers at RTC_PORT(0) and
    RTC_PORT(1), we can fall back to requesting just enough space for those.

    If the PNP core requests resources, this results in typical I/O port usage
    like this:

    0070-0073 : 00:06
    Cc: Alessandro Zummo
    Cc: David Brownell
    Cc: Ralf Baechle
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Bjorn Helgaas
     
  • The misc_register() error path always released an I/O port region,
    even if the region was memory-mapped (only mips uses memory-mapped RTC,
    as far as I can see).

    Signed-off-by: Bjorn Helgaas
    Cc: Alessandro Zummo
    Cc: David Brownell
    Acked-by: Ralf Baechle
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Bjorn Helgaas
     
  • Add support for version 2 of the ioatdma device. This device handles
    the descriptor chain and DCA services slightly differently:
    - Instead of moving the dma descriptors between a busy and an idle chain,
    this new version uses a single circular chain so that we don't have
    rewrite the next_descriptor pointers as we add new requests, and the
    device doesn't need to re-read the last descriptor.
    - The new device has the DCA tags defined internally instead of needing
    them defined statically.

    Signed-off-by: Shannon Nelson
    Cc: "Williams, Dan J"
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Shannon Nelson
     
  • ops.pending when it should be looking at the consistent stack-based
    snapshot of the operations flags.

    Report from Joel:
    Resync done. Patch fix this bug.

    Signed-off-by: Dan Williams
    Tested-by: Joel Bertrand
    Cc:
    Cc: Neil Brown
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Dan Williams
     
  • Remove annoying build warnings about unused variables in atmel_serial,
    which afflict both AT91 and AVR32 builds.

    Signed-off-by: David Brownell
    Acked-by: Haavard Skinnemoen
    Cc: Andrew Victor
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    David Brownell
     
  • When a DMA device is unregistered, its reference count is decremented twice
    for each channel: Once dma_class_dev_release() and once in
    dma_chan_cleanup(). This may result in the DMA device driver's remove()
    function completing before all channels have been cleaned up, causing lots
    of use-after-free fun.

    Fix it by incrementing the device's reference count twice for each
    channel during registration.

    [dan.j.williams@intel.com: kill unnecessary client refcounting]
    Signed-off-by: Haavard Skinnemoen
    Signed-off-by: Dan Williams
    Signed-off-by: Shannon Nelson
    Cc:
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Haavard Skinnemoen
     
  • Move pci_dev_put outside the loops in which it occurs. Within the loop,
    pci_dev_put is done implicitly by pci_get_device.

    The problem was detected using the following semantic patch, and corrected
    by hand.

    @@
    expression dev;
    expression E;
    @@

    - pci_dev_put(dev)
    ... when != dev = E
    - pci_get_device(...,dev)

    Signed-off-by: Julia Lawall
    Signed-off-by: Andrew Morton
    Signed-off-by: Linus Torvalds

    Julia Lawall