22 Nov, 2010

1 commit


20 Nov, 2010

13 commits

  • * 'for_linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tytso/ext4:
    ext4: Add EXT4_IOC_TRIM ioctl to handle batched discard
    fs: Do not dispatch FITRIM through separate super_operation
    ext4: ext4_fill_super shouldn't return 0 on corruption
    jbd2: fix /proc/fs/jbd2/ when using an external journal
    ext4: missing unlock in ext4_clear_request_list()
    ext4: fix setting random pages PageUptodate

    Linus Torvalds
     
  • Filesystem independent ioctl was rejected as not common enough to be in
    core vfs ioctl. Since we still need to access to this functionality this
    commit adds ext4 specific ioctl EXT4_IOC_TRIM to dispatch
    ext4_trim_fs().

    It takes fstrim_range structure as an argument. fstrim_range is definec in
    the include/linux/fs.h and its definition is as follows.

    struct fstrim_range {
    __u64 start;
    __u64 len;
    __u64 minlen;
    }

    start - first Byte to trim
    len - number of Bytes to trim from start
    minlen - minimum extent length to trim, free extents shorter than this
    number of Bytes will be ignored. This will be rounded up to fs
    block size.

    After the FITRIM is done, the number of actually discarded Bytes is stored
    in fstrim_range.len to give the user better insight on how much storage
    space has been really released for wear-leveling.

    Signed-off-by: Lukas Czerner
    Signed-off-by: "Theodore Ts'o"

    Lukas Czerner
     
  • There was concern that FITRIM ioctl is not common enough to be included
    in core vfs ioctl, as Christoph Hellwig pointed out there's no real point
    in dispatching this out to a separate vector instead of just through
    ->ioctl.

    So this commit removes ioctl_fstrim() from vfs ioctl and trim_fs
    from super_operation structure.

    Signed-off-by: Lukas Czerner
    Signed-off-by: "Theodore Ts'o"

    Lukas Czerner
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/sage/ceph-client:
    ceph: fix readdir EOVERFLOW on 32-bit archs
    ceph: fix frag offset for non-leftmost frags
    ceph: fix dangling pointer
    ceph: explicitly specify page alignment in network messages
    ceph: make page alignment explicit in osd interface
    ceph: fix comment, remove extraneous args
    ceph: fix update of ctime from MDS
    ceph: fix version check on racing inode updates
    ceph: fix uid/gid on resent mds requests
    ceph: fix rdcache_gen usage and invalidate
    ceph: re-request max_size if cap auth changes
    ceph: only let auth caps update max_size
    ceph: fix open for write on clustered mds
    ceph: fix bad pointer dereference in ceph_fill_trace
    ceph: fix small seq message skipping
    Revert "ceph: update issue_seq on cap grant"

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (31 commits)
    net: fix kernel-doc for sk_filter_rcu_release
    be2net: Fix to avoid firmware update when interface is not open.
    netfilter: fix IP_VS dependencies
    net: irda: irttp: sync error paths of data- and udata-requests
    ipv6: Expose reachable and retrans timer values as msecs
    ipv6: Expose IFLA_PROTINFO timer values in msecs instead of jiffies
    3c59x: fix build failure on !CONFIG_PCI
    ipg.c: remove id [SUNDANCE, 0x1021]
    net: caif: spi: fix potential NULL dereference
    ath9k_htc: Avoid setting QoS control for non-QoS frames
    net: zero kobject in rx_queue_release
    net: Fix duplicate volatile warning.
    MAINTAINERS: Add stmmac maintainer
    bonding: fix a race in IGMP handling
    cfg80211: fix can_beacon_sec_chan, reenable HT40
    gianfar: fix signedness issue
    net: bnx2x: fix error value sign
    8139cp: fix checksum broken
    r8169: fix checksum broken
    rds: Integer overflow in RDS cmsg handling
    ...

    Linus Torvalds
     
  • * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
    sata_via: apply magic FIFO fix to vt6420 too

    Linus Torvalds
     
  • This reverts commit 59365d136d205cc20fe666ca7f89b1c5001b0d5a.

    It turns out that this can break certain existing user land setups.
    Quoth Sarah Sharp:

    "On Wednesday, I updated my branch to commit 460781b from linus' tree,
    and my box would not boot. klogd segfaulted, which stalled the whole
    system.

    At first I thought it actually hung the box, but it continued booting
    after 5 minutes, and I was able to log in. It dropped back to the
    text console instead of the graphical bootup display for that period
    of time. dmesg surprisingly still works. I've bisected the problem
    down to this commit (commit 59365d136d205cc20fe666ca7f89b1c5001b0d5a)

    The box is running klogd 1.5.5ubuntu3 (from Jaunty). Yes, I know
    that's old. I read the bit in the commit about changing the
    permissions of kallsyms after boot, but if I can't boot that doesn't
    help."

    So let's just keep the old default, and encourage distributions to do
    the "chmod -r /proc/kallsyms" in their bootup scripts. This is not
    worth a kernel option to change default behavior, since it's so easily
    done in user space.

    Reported-and-bisected-by: Sarah Sharp
    Cc: Marcus Meissner
    Cc: Tejun Heo
    Cc: Eugene Teo
    Cc: Jesper Juhl
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input:
    Input: fix typo in keycode validation supporting large scancodes
    Input: aiptek - tighten up permissions on sysfs attributes
    Input: sysrq - pass along lone Alt + SysRq

    Linus Torvalds
     
  • * 'drm-intel-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/ickle/drm-intel:
    drm/i915: Disable FBC on Ironlake to save 1W
    drm/i915: Take advantage of auto-polling CRT hotplug detection on PCH hardware
    drm/i915/crt: Introduce struct intel_crt
    drm/i915: Do not hold mutex when faulting in user addresses
    drm: radeon: fix error value sign
    drm/radeon/kms: fix and unify tiled buffer alignment checking for r6xx/7xx
    drm/i915: Retire any pending operations on the old scanout when switching
    drm/i915: Fix I2C adapter registration

    Linus Torvalds
     
  • * 'drm-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6: (40 commits)
    drm/radeon/kms: i2c s/sprintf/snprintf/g for safety
    drm/radeon/kms: fix i2c pad masks on rs4xx
    drm/ttm: Fix up a theoretical deadlock
    drm/radeon/kms: fix tiling info on evergreen
    drm/radeon/kms: fix alignment when allocating buffers
    drm/vmwgfx: Fix up an error path during bo creation
    drm/radeon/kms: register an i2c adapter name for the dp aux bus
    drm/radeon/kms/atom: add proper external encoders support
    drm/radeon/kms/atom: cleanup and unify DVO handling
    drm/radeon/kms: properly power up/down the eDP panel as needed (v4)
    drm/radeon/kms/atom: set sane defaults in atombios_get_encoder_mode()
    drm/radeon/kms: turn the backlight off explicitly for dpms
    drm/radeon/kms: fix typo in r600 cs checker
    drm: radeon: fix error value sign
    drm/radeon/kms: fix and unify tiled buffer alignment checking for r6xx/7xx
    nouveau: Acknowledge HPD irq in handler, not bottom half
    drm/nouveau: Fix a few confusions between "chipset" and "card_type".
    drm/nouveau: don't expose backlight control when available through ACPI
    drm/nouveau/pm: improve memtiming mappings
    drm/nouveau: Make PCIE GART size depend on the available RAMIN space.
    ...

    Linus Torvalds
     
  • vt6420 has the same FIFO overflow problem as vt6421 when combined with
    certain devices. This patch applies the magic fix to vt6420 too.

    Signed-off-by: Tejun Heo
    Reported-by: Martin Qvist
    Reported-by: Peter Zijlstra
    Cc: Joseph Chan
    Cc: stable@kernel.org
    Signed-off-by: Jeff Garzik

    Tejun Heo
     
  • Fix kernel-doc warning for sk_filter_rcu_release():

    Warning(net/core/filter.c:586): missing initial short description on line:
    * sk_filter_rcu_release: Release a socket filter by rcu_head

    Signed-off-by: Randy Dunlap
    Cc: "David S. Miller"
    Cc: netdev@vger.kernel.org
    Signed-off-by: David S. Miller

    Randy Dunlap
     
  • Since interrupts are enabled only when open is called on the interface,
    Attempting a firmware update operation when interface is down could lead to
    partial success or failure of operation. This fix fails the request if
    netif_running is false.

    Signed-off-by: Sarveshwar Bandi
    Signed-off-by: David S. Miller

    Sarveshwar Bandi
     

19 Nov, 2010

26 commits

  • At the start of ext4_fill_super, ret is set to -EINVAL, and any failure path
    out of that function returns ret. However, the generic_check_addressable
    clause sets ret = 0 (if it passes), which means that a subsequent failure (e.g.
    a group checksum error) returns 0 even though the mount should fail. This
    causes vfs_kern_mount in turn to think that the mount succeeded, leading to an
    oops.

    A simple fix is to avoid using ret for the generic_check_addressable check,
    which was last changed in commit 30ca22c70e3ef0a96ff84de69cd7e8561b416cb2.

    Signed-off-by: Darrick J. Wong
    Signed-off-by: "Theodore Ts'o"

    Darrick J. Wong
     
  • Frame buffer compression is broken on Ironlake due to buggy hardware.
    Currently it is disabled through chicken bits, but it still consumes
    over 1W more than if we simply never attempt to enable the FBC code
    paths.

    Signed-off-by: Alex Shi
    Signed-off-by: Chris Wilson
    Cc: stable@kernel.org

    Alex Shi
     
  • Both IBX and CPT have an automatic hotplug detection mode which appears to work reliably enough
    that we can dispense with the manual force hotplug trigger stuff. This means that
    hotplug detection is as simple as reading the current hotplug register values.

    The first time the hotplug detection is activated, the code synchronously waits for a hotplug
    sequence in case the hardware hasn't bothered to do a detection cycle since being initialized.

    Signed-off-by: Keith Packard
    Signed-off-by: Chris Wilson

    Keith Packard
     
  • We will use this structure in future patches to store CRT specific
    information on the encoder.

    Split out and tweaked from a patch by Keith Packard.

    Signed-off-by: Keith Packard
    Signed-off-by: Chris Wilson

    Chris Wilson
     
  • Linus Torvalds found that it was rather trivial to trigger a system
    freeze:

    In fact, with lockdep, I don't even need to do the sysrq-d thing: it
    shows the bug as it happens. It's the X server taking the same lock
    recursively.

    Here's the problem:

    =============================================
    [ INFO: possible recursive locking detected ]
    2.6.37-rc2-00012-gbdbd01a #7
    ---------------------------------------------
    Xorg/2816 is trying to acquire lock:
    (&dev->struct_mutex){+.+.+.}, at: [] i915_gem_fault+0x50/0x17e

    but task is already holding lock:
    (&dev->struct_mutex){+.+.+.}, at: [] i915_mutex_lock_interruptible+0x28/0x4a

    other info that might help us debug this:
    2 locks held by Xorg/2816:
    #0: (&dev->struct_mutex){+.+.+.}, at: [] i915_mutex_lock_interruptible+0x28/0x4a
    #1: (&mm->mmap_sem){++++++}, at: [] page_fault+0x156/0x37b

    This recursion was introduced by rearranging the locking to avoid the
    double locking on the fast path (4f27b5d and fbd5a26d) and the
    introduction of the prefault to encourage the fast paths (b5e4f2b). In
    order to undo the problem, we rearrange the code to perform the access
    validation upfront, attempt to prefault and then fight for control of the
    mutex. the best case scenario where the mutex is uncontended the
    prefaulting is not wasted.

    Reported-and-tested-by: Linus Torvalds
    Signed-off-by: Chris Wilson

    Chris Wilson
     
  • As per advice from Jean Delvare.

    Signed-off-by: Alex Deucher
    Acked-by: Jean Delvare
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • These got lost in the last i2c cleanup. Fixes:
    https://bugzilla.kernel.org/show_bug.cgi?id=23222

    Signed-off-by: Alex Deucher
    Cc: stable@kernel.org
    Signed-off-by: Dave Airlie

    Alex Deucher
     
  • * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
    [libata] remove SCSI host lock and serial number usage from ata_scsi_queuecmd

    Linus Torvalds
     
  • Update kernel-doc and Documentation maintainers info.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • Document things that I would've liked to have known when submitting a driver
    to gregkh for staging.

    Signed-off-by: Andres Salomon
    Acked-by: Greg Kroah-Hartman
    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Andres Salomon
     
  • This is confusing, as we have "staging" trees for drivers/staging. Call
    them -next trees.

    Signed-off-by: Andres Salomon
    Acked-by: Greg Kroah-Hartman
    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Andres Salomon
     
  • My old mail address doesn't exist anymore. This changes all occurrences
    to my new address.

    Signed-off-by: Hans J. Koch
    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Hans J. Koch
     
  • Add a bit more information how to use poll(2) on GPIO value files
    correctly. For me it was not clear that I need to poll(2) for
    POLLPRI|POLLERR or select(2) for exceptfds.

    Signed-off-by: Bernhard Walle
    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Bernhard Walle
     
  • If "p" is NULL then it will cause an oops when we pass it to
    simple_strtoul(). In this case "p" can not be NULL so I removed the
    check. I also changed the check a little to make it more explicit that
    we are testing whether p points to the NUL char.

    Signed-off-by: Dan Carpenter
    Acked-by: Joel Becker
    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Dan Carpenter
     
  • scripts/kernel-doc was leaving unescaped '', and '&' in
    generated xml output for structs. This causes xml parser errors.
    Convert these characters to "<", ">", and "&" as needed
    to prevent errors.

    Most of the conversion was already done; complete it just before
    output.

    Documentation/DocBook/device-drivers.xml:41883: parser error : StartTag: invalid element name
    #define INPUT_KEYMAP_BY_INDEX (1 << 0)

    Signed-off-by: Randy Dunlap
    Signed-off-by: Linus Torvalds

    Randy Dunlap
     
  • When NF_CONNTRACK is enabled, IP_VS uses conntrack symbols.
    Therefore IP_VS can't be linked statically when conntrack
    is built modular.

    Reported-by: Justin P. Mattock
    Tested-by: Justin P. Mattock
    Signed-off-by: Patrick McHardy
    Signed-off-by: David S. Miller

    Patrick McHardy
     
  • irttp_data_request() returns meaningful errorcodes, while irttp_udata_request()
    just returns -1 in similar situations. Sync the two and the loglevels of the
    accompanying output.

    Signed-off-by: Wolfram Sang
    Cc: Samuel Ortiz
    Cc: David Miller
    Signed-off-by: David S. Miller

    Wolfram Sang
     
  • Expose reachable and retrans timer values in msecs instead of jiffies.
    Both timer values are already exposed as msecs in the neighbour table
    netlink interface.

    The creation timestamp format with increased precision is kept but
    cleaned up.

    Signed-off-by: Thomas Graf
    Cc: YOSHIFUJI Hideaki
    Signed-off-by: David S. Miller

    Thomas Graf
     
  • David S. Miller
     
  • Kernel build fail for cx25821-video has depends on smp_lock.h header
    file, but the dependency is removed in recent commit 451a3c24b013.

    Signed-off-by: Youquan Song
    Signed-off-by: Linus Torvalds

    Youquan Song
     
  • IFLA_PROTINFO exposes timer related per device settings in jiffies.
    Change it to expose these values in msecs like the sysctl interface
    does.

    I did not find any users of IFLA_PROTINFO which rely on any of these
    values and even if there are, they are likely already broken because
    there is no way for them to reliably convert such a value to another
    time format.

    Signed-off-by: Thomas Graf
    Cc: YOSHIFUJI Hideaki
    Signed-off-by: David S. Miller

    Thomas Graf
     
  • This really isn't the right thing to do, and strictly speaking we should
    have the BKL depth count in the thread info right next to the preempt
    count. The two really do go together.

    However, since that would involve a patch to all architectures, and the
    BKL is finally going away, it's simply not worth the effort to do the
    RightThing(tm). Just re-instate the include that we
    used to get accidentally from the smp_lock.h one.

    This is all fallout from the same old "BKL: remove extraneous #include
    " commit.

    Reported-by: Ingo Molnar
    Tested-by: Randy Dunlap
    Cc: Arnd Bergmann
    Signed-off-by: Linus Torvalds

    Linus Torvalds
     
  • VORTEX_PCI() could return NULL so it needs to be casted before
    accessing any member of struct pci_dev. This fixes following
    build failure. Likewise VORTEX_EISA() was changed also.

    CC [M] drivers/net/3c59x.o
    drivers/net/3c59x.c: In function 'acpi_set_WOL':
    drivers/net/3c59x.c:3211:39: warning: dereferencing 'void *' pointer
    drivers/net/3c59x.c:3211:39: error: request for member 'current_state' in something not a structure or union
    make[3]: *** [drivers/net/3c59x.o] Error 1
    make[2]: *** [drivers/net/3c59x.o] Error 2
    make[1]: *** [sub-make] Error 2
    make: *** [all] Error 2

    Signed-off-by: Namhyung Kim
    Signed-off-by: David S. Miller

    Namhyung Kim
     
  • ipg.c:
    The id [SUNDANCE, 0x1021] (=[0x13f0, 0x1021]) is defined
    at dl2k.h and ipg.c.
    But this device works better with dl2k driver.

    This problem is similar with the commit
    [25cca5352712561fba97bd37c495593d641c1d39
    ipg: Remove device claimed by dl2k from pci id table]
    at 11 Feb 2010.

    Signed-off-by: Ken Kawasaki
    Signed-off-by: David S. Miller

    Ken Kawasaki
     
  • alloc_netdev() is not checked here for NULL return value. dev is
    check instead. It might lead to NULL dereference of ndev.

    Signed-off-by: Vasiliy Kulikov
    Signed-off-by: David S. Miller

    Vasiliy Kulikov
     
  • Setting tid information in the TX header is required only for QoS
    frames. Not handling this case causes severe data loss with some APs.

    Cc: stable@kernel.org
    Signed-off-by: Rajkumar Manoharan
    Signed-off-by: John W. Linville

    Rajkumar Manoharan