10 Nov, 2008

1 commit


07 Nov, 2008

1 commit


06 Nov, 2008

1 commit

  • Impact: introduce new APIs

    We want to deprecate cpumasks on the stack, as we are headed for
    gynormous numbers of CPUs. Eventually, we want to head towards an
    undefined 'struct cpumask' so they can never be declared on stack.

    1) New cpumask functions which take pointers instead of copies.
    (cpus_* -> cpumask_*)

    2) Several new helpers to reduce requirements for temporary cpumasks
    (cpumask_first_and, cpumask_next_and, cpumask_any_and)

    3) Helpers for declaring cpumasks on or offstack for large NR_CPUS
    (cpumask_var_t, alloc_cpumask_var and free_cpumask_var)

    4) 'struct cpumask' for explicitness and to mark new-style code.

    5) Make iterator functions stop at nr_cpu_ids (a runtime constant),
    not NR_CPUS for time efficiency and for smaller dynamic allocations
    in future.

    6) cpumask_copy() so we can allocate less than a full cpumask eventually
    (for alloc_cpumask_var), and so we can eliminate the 'struct cpumask'
    definition eventually.

    7) work_on_cpu() helper for doing task on a CPU, rather than saving old
    cpumask for current thread and manipulating it.

    8) smp_call_function_many() which is smp_call_function_mask() except
    taking a cpumask pointer.

    Note that this patch simply introduces the new functions and leaves
    the obsolescent ones in place. This is to simplify the transition
    patches.

    Signed-off-by: Rusty Russell
    Signed-off-by: Ingo Molnar

    Rusty Russell
     

05 Nov, 2008

3 commits

  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6:
    xfrm: Fix xfrm_policy_gc_lock handling.
    niu: Use pci_ioremap_bar().
    bnx2x: Version Update
    bnx2x: Calling netif_carrier_off at the end of the probe
    bnx2x: PCI configuration bug on big-endian
    bnx2x: Removing the PMF indication when unloading
    mv643xx_eth: fix SMI bus access timeouts
    net: kconfig cleanup
    fs_enet: fix polling
    XFRM: copy_to_user_kmaddress() reports local address twice
    SMC91x: Fix compilation on some platforms.
    udp: Fix the SNMP counter of UDP_MIB_INERRORS
    udp: Fix the SNMP counter of UDP_MIB_INDATAGRAMS
    drivers/net/smc911x.c: Fix lockdep warning on xmit.

    Linus Torvalds
     
  • * 'upstream-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/jgarzik/libata-dev:
    libata: mask off DET when restoring SControl for detach
    libata: implement ATA_HORKAGE_ATAPI_MOD16_DMA and apply it
    libata: Fix a potential race condition in ata_scsi_park_show()
    sata_nv: fix generic, nf2/3 detection regression
    sata_via: restore vt*_prepare_host error handling
    sata_promise: add ATA engine reset to reset ops

    Linus Torvalds
     
  • Signed-off-by: Jianjun Kong
    Signed-off-by: Linus Torvalds

    Jianjun Kong
     

04 Nov, 2008

24 commits

  • libata restores SControl on detach; however, trying to restore
    non-zero DET can cause undeterministic behavior including PMP device
    going offline till power cycling. Mask off DET when restoring
    SControl.

    Signed-off-by: Tejun Heo
    Signed-off-by: Jeff Garzik

    Tejun Heo
     
  • libata always uses PIO for ATAPI commands when the number of bytes to
    transfer isn't multiple of 16 but quantum DAT72 chokes on odd bytes
    PIO transfers. Implement a horkage to skip the mod16 check and apply
    it to the quantum device.

    This is reported by John Clark in the following thread.

    http://thread.gmane.org/gmane.linux.ide/34748

    Signed-off-by: Tejun Heo
    Cc: John Clark
    Signed-off-by: Jeff Garzik

    Tejun Heo
     
  • Peter Moulder has pointed out that there is a slight chance that a
    negative value might be passed to jiffies_to_msecs() in
    ata_scsi_park_show(). This is fixed by saving the value of jiffies in a
    local variable, thus also reducing code since the volatile variable
    jiffies is accessed only once.

    Signed-off-by: Elias Oltmanns
    Signed-off-by: Tejun Heo
    Signed-off-by: Jeff Garzik

    Elias Oltmanns
     
  • All three flavors of sata_nv's are different in how their hardreset
    behaves.

    * generic: Hardreset is not reliable. Link often doesn't come online
    after hardreset.

    * nf2/3: A little bit better - link comes online with longer debounce
    timing. However, nf2/3 can't reliable wait for the first D2H
    Register FIS, so it can't wait for device readiness or classify the
    device after hardreset. Follow-up SRST required.

    * ck804: Hardreset finally works.

    The core layer change to prefer hardreset and follow up changes
    exposed the above issues and caused various detection regressions for
    all three flavors. This patch, hopefully, fixes all the known issues
    and should make sata_nv error handling more reliable.

    Signed-off-by: Tejun Heo
    Signed-off-by: Jeff Garzik

    Tejun Heo
     
  • commit b9d5b89b487517cbd4cb4702da829e07ef9e4432 (sata_via: fix support
    for 5287) accidently (?) removed vt*_prepare_host error handling - restore it

    catched by gcc:
    drivers/ata/sata_via.c: In function 'svia_init_one':
    drivers/ata/sata_via.c:567: warning: 'host' may be used uninitialized in this function

    Signed-off-by: Marcin Slusarz
    Cc: Tejun Heo
    Cc: Joseph Chan
    Cc: Jeff Garzik
    Signed-off-by: Jeff Garzik

    Marcin Slusarz
     
  • Promise ATA engines need to be reset when errors occur.
    That's currently done for errors detected by sata_promise itself,
    but it's not done for errors like timeouts detected outside of
    the low-level driver.

    The effect of this omission is that a timeout tends to result
    in a sequence of failed COMRESETs after which libata EH gives
    up and disables the port. At that point the port's ATA engine
    hangs and even reloading the driver will not resume it.

    To fix this, make sata_promise override ->hardreset on SATA
    ports with code which calls pdc_reset_port() on the port in
    question before calling libata's hardreset. PATA ports don't
    use ->hardreset, so for those we override ->softreset instead.

    Signed-off-by: Mikael Pettersson
    Signed-off-by: Jeff Garzik

    Mikael Pettersson
     
  • From: Alexey Dobriyan

    Based upon a lockdep trace by Simon Arlott.

    xfrm_policy_kill() can be called from both BH and
    non-BH contexts, so we have to grab xfrm_policy_gc_lock
    with BH disabling.

    Signed-off-by: David S. Miller

    Alexey Dobriyan
     
  • Signed-off-by: David S. Miller

    David S. Miller
     
  • Updating the version

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • netif_carrier_off was called too early at the probe. In case of failure
    or simply bad timing, this can cause a fatal error since linkwatch_event
    might run too soon.

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • The current code read nothing but zeros on big-endian (wrong part of the
    32bits). This caused poor performance on big-endian machines. Though this
    issue did not cause the system to crash, the performance is significantly
    better with the fix so I view it as critical bug fix.

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • When the PMF flag is set, the driver can access the HW freely. When the
    driver is unloaded, it should not access the HW. The problem caused fatal
    errors when "ethtool -i" was called after the calling instance was unloaded
    and another instance was already loaded

    Signed-off-by: Eilon Greenstein
    Signed-off-by: David S. Miller

    Eilon Greenstein
     
  • The mv643xx_eth mii bus implementation uses wait_event_timeout() to
    wait for SMI completion interrupts.

    If wait_event_timeout() would return zero, mv643xx_eth would conclude
    that the SMI access timed out, but this is not necessarily true --
    wait_event_timeout() can also return zero in the case where the SMI
    completion interrupt did happen in time but where it took longer than
    the requested timeout for the process performing the SMI access to be
    scheduled again. This would lead to occasional SMI access timeouts
    when the system would be under heavy load.

    The fix is to ignore the return value of wait_event_timeout(), and
    to re-check the SMI done bit after wait_event_timeout() returns to
    determine whether or not the SMI access timed out.

    Signed-off-by: Lennert Buytenhek
    Signed-off-by: Jeff Garzik

    Lennert Buytenhek
     
  • The bool kconfig option added to ixgbe and myri10ge for DCA is ambigous,
    so this patch adds a description to the kconfig option.

    Signed-off-by: Jeff Kirsher
    Signed-off-by: Jeff Garzik

    Jeff Kirsher
     
  • 1. compile fix for irqreturn_t type change
    2. restore ->poll_controller after CONFIG_PPC_CPM_NEW_BINDING transition

    Signed-off-by: Alexey Dobriyan
    Signed-off-by: Jeff Garzik

    Alexey Dobriyan
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/sfrench/cifs-2.6:
    cifs: fix renaming one hardlink on top of another
    [CIFS] fix error in smb_send2
    [CIFS] Reduce number of socket retries in large write path

    Linus Torvalds
     
  • cifs: fix renaming one hardlink on top of another

    POSIX says that renaming one hardlink on top of another to the same
    inode is a no-op. We had the logic mostly right, but forgot to clear
    the return code.

    Signed-off-by: Jeff Layton
    Signed-off-by: Steve French

    Jeff Layton
     
  • …nel/git/tip/linux-2.6-tip

    * 'tracing-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    tracing, ring-buffer: add paranoid checks for loops
    ftrace: use kretprobe trampoline name to test in output
    tracing, alpha: undefined reference to `save_stack_trace'

    Linus Torvalds
     
  • …nel/git/tip/linux-2.6-tip

    * 'io-mappings-for-linus-2' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip:
    io mapping: clean up #ifdefs
    io mapping: improve documentation
    i915: use io-mapping interfaces instead of a variety of mapping kludges
    resources: add io-mapping functions to dynamically map large device apertures
    x86: add iomap_atomic*()/iounmap_atomic() on 32-bit using fixmaps

    Linus Torvalds
     
  • * 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tiwai/sound-2.6:
    ALSA: hda: make a STAC_DELL_EQ option
    ALSA: emu10k1 - Add more invert_shared_spdif flag to Audigy models
    ALSA: hda - Add a quirk for another Acer Aspire (1025:0090)
    ALSA: remove direct access of dev->bus_id in sound/isa/*
    sound: struct device - replace bus_id with dev_name(), dev_set_name()
    ALSA: Fix PIT lockup on some chipsets when using the PC-Speaker
    ALSA: rawmidi - Add open check in rawmidi callbacks
    ALSA: hda - Add digital-mic for ALC269 auto-probe mode
    ALSA: hda - Disable broken mic auto-muting in Realtek codes

    Linus Torvalds
     
  • * 'proc-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/adobriyan/proc:
    proc: revert /proc/uptime to ->read_proc hook

    Linus Torvalds
     
  • * 'drm-next' of git://git.kernel.org/pub/scm/linux/kernel/git/airlied/drm-2.6:
    i915: Add GEM ioctl to get available aperture size.
    drm/radeon: fixup further bus mastering confusion.
    build fix: CONFIG_DRM_I915=y && CONFIG_ACPI=n

    Linus Torvalds
     
  • Impact: cleanup

    clean up ifdefs: change #ifdef CONFIG_X86_32/64 to
    CONFIG_HAVE_ATOMIC_IOMAP.

    flip around the #ifdef sections to clean up the structure.

    Signed-off-by: Keith Packard
    Signed-off-by: Ingo Molnar

    Keith Packard
     
  • Impact: add documentation

    Signed-off-by: Keith Packard
    Signed-off-by: Ingo Molnar

    Keith Packard
     

03 Nov, 2008

10 commits

  • Takashi Iwai
     
  • Add support for explicitly enabling the EQ distortion hack for
    systems without software biquad support.

    Signed-off-by: Matthew Ranostay
    Cc: stable@kernel.org
    Signed-off-by: Takashi Iwai

    Matthew Ranostay
     
  • While writing a new tracer, I had a bug where I caused the ring-buffer
    to recurse in a bad way. The bug was with the tracer I was writing
    and not the ring-buffer itself. But it took a long time to find the
    problem.

    This patch adds paranoid checks into the ring-buffer infrastructure
    that will catch bugs of this nature.

    Note: I put the bug back in the tracer and this patch showed the error
    nicely and prevented the lockup.

    Signed-off-by: Steven Rostedt
    Signed-off-by: Ingo Molnar

    Steven Rostedt
     
  • Impact: ia64+tracing build fix

    When a function is kprobed, the return address is set to the
    kprobe_trampoline, or something similar. This caused the output
    of the trace to look confusing when the parent seemed to be this
    "kprobe_trampoline" function.

    To fix this, Abhishek Sagar added a test of the instruction pointer
    of the parent to see if it matched the kprobe_trampoline. If it
    did, the output would print a "[unknown/kretprobe'd]" instead.

    Unfortunately, not all archs do this the same way, and the trampoline
    function may not be exported, which causes failures in builds.

    This patch will compare the name instead of the pointer to see
    if it matches. This prevents us from depending on a function from
    being exported, and should work on all archs. The worst that can
    happen is that an arch might use a different name and then we
    go back to the confusing output. At least the arch will still build.

    Reported-by: Abhishek Sagar
    Signed-off-by: Steven Rostedt
    Signed-off-by: Ingo Molnar
    Tested-by: Abhishek Sagar
    Acked-by: Abhishek Sagar

    Steven Rostedt
     
  • While adding support for MIGRATE/KMADDRESS in strongSwan (as specified
    in draft-ebalard-mext-pfkey-enhanced-migrate-00), Andreas Steffen
    noticed that XFRMA_KMADDRESS attribute passed to userland contains the
    local address twice (remote provides local address instead of remote
    one).

    This bug in copy_to_user_kmaddress() affects only key managers that use
    native XFRM interface (key managers that use PF_KEY are not affected).

    For the record, the bug was in the initial changeset I posted which
    added support for KMADDRESS (13c1d18931ebb5cf407cb348ef2cd6284d68902d
    'xfrm: MIGRATE enhancements (draft-ebalard-mext-pfkey-enhanced-migrate)').

    Signed-off-by: Arnaud Ebalard
    Reported-by: Andreas Steffen
    Signed-off-by: David S. Miller

    Arnaud Ebalard
     
  • Reported in Novell bnc#440862:
    https://bugzilla.novell.com/show_bug.cgi?id=440862

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • Impact: build fix on !stacktrace architectures

    only select STACKTRACE on architectures that have STACKTRACE_SUPPORT

    ... since we also need to ifdef out the guts of ftrace_trace_stack().
    We also want to disallow setting TRACE_ITER_STACKTRACE in trace_flags
    on such configs, but that can wait.

    Signed-off-by: Al Viro
    Acked-by: Steven Rostedt
    Signed-off-by: Ingo Molnar

    Al Viro
     
  • Added a quirk for another Acer Aspier laptop (1025:0090) with ALC883
    codec. Reported in Novell bnc#426935:
    https://bugzilla.novell.com/show_bug.cgi?id=426935

    Signed-off-by: Takashi Iwai

    Takashi Iwai
     
  • This reverts 51ac3beffd4afaea4350526cf01fe74aaff25eff ('SMC91x: delete
    unused local variable "lp"') and adds __maybe_unused markers to these
    (potentially) unused variables.

    The issue is that in some configurations SMC_IO_SHIFT evaluates
    to '(lp->io_shift)', but in some others it's plain '0'.

    Based upon a build failure report from Manuel Lauss.

    Signed-off-by: David S. Miller

    David S. Miller
     
  • Removed the direct accesses of dev->bus_id in sound/isa/* by replacement
    with dev_err() or dev_warn() functions.

    Signed-off-by: Takashi Iwai

    Takashi Iwai