11 Mar, 2008

8 commits


10 Mar, 2008

1 commit

  • This has been around for a while but nobody reported it until recently.
    Resubmitting the fix as it's appropriate for 2.6.25

    Signed-off-by: Alan Cox
    Signed-off-by: Linus Torvalds

    Alan Cox
     

08 Mar, 2008

7 commits

  • This adds another Broadcom BCM2045 based device to the blacklist, with
    these settings the micro dongle works on my system.

    Signed-off-by: Karsten Keil
    Acked-by: Marcel Holtmann
    Signed-off-by: Linus Torvalds

    Karsten Keil
     
  • Fix all references to Documentation/ide/ide.txt.
    Add/update ide/00-INDEX file.

    Signed-off-by: Randy Dunlap
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Randy Dunlap
     
  • Relocating the index to come after finding the hwif pointer.

    Signed-off-by: Peter Teoh
    Reported-by: Adrian Bunk
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Peter Teoh
     
  • ide_tune_dma() should return '1' if IDE_HFLAG_NO_SET_MODE host flag is set.

    Cc: Sergei Shtylyov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • On Thursday 06 March 2008, walt wrote:

    > For me, this commit causes the problem it's intended to fix:
    >
    > commit 9f10d9ee0ac6d79d7bc8b9a158bf4a29322d84d3
    > Author: Bartlomiej Zolnierkiewicz
    > Date: Tue Feb 26 21:50:35 2008 +0100
    >
    > ide-cd: fix 'ireason' handling for REQ_TYPE_ATA_PC requests
    >
    > This fixes some hangs caused by not finishing the transfer before ending
    > the request and also makes use of 'ireason == 1' quirk for spurious IRQs.
    >
    > When I mount a CD there is a long delay, and I see this error message:
    >
    > hdc: ide_cd_check_ireason: wrong transfer direction!
    > cdrom: failed setting lba address space
    > hdc: status error: status=0x58 { DriveReady SeekComplete DataRequest }
    > ide: failed opcode was: unknown
    > hdc: drive not ready for command
    >
    >
    > When I revert this commit everything works properly again, including
    > CD burning.

    It turned out that REQ_TYPE_ATA_PC write requests were not marked as such
    (the previous commit assumed them to be).

    Reported-by: walt
    Tested-by: walt
    Reviewed-by: Borislav Petkov
    Signed-off-by: Bartlomiej Zolnierkiewicz

    Bartlomiej Zolnierkiewicz
     
  • The card state mutex was only initialized when a device was connected,
    but used during unload unconditionally, leading to an Oops if a driver
    was loaded and unloaded again without ever connecting a device.

    Fix this by initializing the mutex as soon as the structure is allocated.
    Also add a missing mutex unlock revealed in the same execution path.

    This fixes a possible Oops in 2.6.25-rc that was introduced by commit
    e468c04894f36045cf93d1384183a461014b6840 ("Gigaset: permit module
    unload").

    Thanks to Roland Kletzing for reporting this problem.

    Signed-off-by: Tilman Schmidt
    Tested-by: Roland Kletzing
    Cc: Hansjoerg Lipp
    Cc: Karsten Keil
    Signed-off-by: Linus Torvalds

    Tilman Schmidt
     
  • randconfig testing found a bootup lockup in drivers/char/esp.c because
    of a spinlock that wasn't correctly initialized.

    I'm not sure why it became more prominent in 2.6.25-rc4, the bug seems
    rather old and i've been doing allyesconfig bootups for ages with
    CONFIG_ESP enabled.

    This fixes this bootup lockup:

    PM: Adding info for No Bus:ttyP63
    ttyP32 at 0x0240 (irq = 0) is an ESP primary port
    BUG: spinlock lockup on CPU#0, swapper/1, f56dd004
    Pid: 1, comm: swapper Not tainted 2.6.25-rc4-sched-devel.git-x86-latest.git #402 [] _raw_spin_lock+0x134/0x140
    [] _spin_lock_irqsave+0x5e/0x80
    [] ? espserial_init+0x2be/0x6e0
    [] espserial_init+0x2be/0x6e0
    [] kernel_init+0x83/0x260
    [] ? espserial_init+0x0/0x6e0
    [] ? restore_nocheck_notrace+0x0/0xe
    [] ? kernel_init+0x0/0x260
    [] ? kernel_init+0x0/0x260
    [] kernel_thread_helper+0x7/0x10
    =======================

    kzalloc() is not the way to initialize spinlocks anymore.

    Signed-off-by: Ingo Molnar
    Signed-off-by: Linus Torvalds

    Ingo Molnar
     

07 Mar, 2008

1 commit

  • * git://git.kernel.org/pub/scm/linux/kernel/git/lethal/sh-2.6.25:
    sh: Fix up the sh64 build.
    sh: Fix up SH7710 VoIP-GW build.
    sh: Flag PMB support as EXPERIMENTAL.
    sh: Update r7780mp defconfig.
    fb: hitfb: Balance probe/remove section annotations.
    sh: hp6xx: Fix up hp6xx_apm build failure.
    fb: pvr2fb: Fix up remaining section mismatch.
    sh: Fix up section mismatches.
    sh: hp6xx: Correct APM output.
    sh: update se7780 defconfig
    sh: replace remaining __FUNCTION__ occurrences
    sh: export copy-page() to modules
    sh_ksyms_32.c update for gcc 4.3
    sh/mm/pg-sh7705.c must #include

    Linus Torvalds
     

06 Mar, 2008

14 commits

  • hitfb presently has probe using __init whilst remove uses __devexit.
    As this device can't possibly be hotplugged, switch to __exit and
    __exit_p() instead.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • Building with CONFIG_DEBUG_SECTION_MISMATCH=y reports:

    CC drivers/video/pvr2fb.o
    LD drivers/video/built-in.o
    WARNING: drivers/video/built-in.o(.text+0xb9b0): Section mismatch in reference from the function pvr2fb_check_var() to the variable .devinit.data:pvr2_fix
    The function pvr2fb_check_var() references
    the variable __devinitdata pvr2_fix.
    This is often because pvr2fb_check_var lacks a __devinitdata
    annotation or the annotation of pvr2_fix is wrong.

    This is obviously crap as no such reference exists, but it's a bit
    closer to reality from older versions which blamed the PCI table. The
    real problem was a reference to pvr2_var.vmode from pvr2fb_check_var(),
    as pvr2_var is flagged as __devinitdata (pvr2_fix is also, so at least
    that part is right).

    pvr2_var.vmode is just a fancy way of saying FB_VMODE_NONINTERLACED, so
    we just reference that explicitly instead.

    Signed-off-by: Paul Mundt

    Paul Mundt
     
  • * 'for-linus' of git://git.infradead.org/~dedekind/ubi-2.6:
    UBI: mtd/ubi/vtbl.c: fix memory leak
    UBI: fix sparse errors in ubi.h
    UBI: fix error message
    UBI: silence warning

    Linus Torvalds
     
  • On 32bits boxes, boundary_size becomes zero due to a overflow and we
    hit BUG_ON in iommu_is_span_boundary.

    Signed-off-by: FUJITA Tomonori
    Cc: Kyle McMartin
    Cc: Matthew Wilcox
    Acked-by: Grant Grundler
    Signed-off-by: Linus Torvalds

    FUJITA Tomonori
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/jejb/scsi-rc-fixes-2.6: (27 commits)
    [SCSI] mpt fusion: don't oops if NumPhys==0
    [SCSI] iscsi class: regression - fix races with state manipulation and blocking/unblocking
    [SCSI] qla4xxx: regression - add start scan callout
    [SCSI] qla4xxx: fix host reset dpc race
    [SCSI] tgt: fix build errors when dprintk is defined
    [SCSI] tgt: set the data length properly
    [SCSI] tgt: stop zero'ing scsi_cmnd
    [SCSI] ibmvstgt: set up scsi_host properly before __scsi_alloc_queue
    [SCSI] docbook: fix fusion source files
    [SCSI] docbook: fix scsi source file
    [SCSI] qla2xxx: Update version number to 8.02.00-k9.
    [SCSI] qla2xxx: Correct usage of inconsistent timeout values while issuing ELS commands.
    [SCSI] qla2xxx: Correct discrepancies during OVERRUN handling on FWI2-capable cards.
    [SCSI] qla2xxx: Correct needless clean-up resets during shutdown.
    [SCSI] arcmsr: update version and changelog
    [SCSI] ps3rom: disable clustering
    [SCSI] ps3rom: fix wrong resid calculation bug
    [SCSI] mvsas: fix phy sas address
    [SCSI] gdth: fix to internal commands execution
    [SCSI] gdth: bugfix for the at-exit problems
    ...

    Linus Torvalds
     
  • * 'fixes-25' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq:
    [CPUFREQ] fix section mismatch warnings
    [CPUFREQ] Remove debugging message from e_powersaver
    [CPUFREQ] Fix missing cpufreq_cpu_put() call in ->store
    [CPUFREQ] Fix missing cpufreq_cpu_put() call in ->show

    Linus Torvalds
     
  • * 'for-linus' of git://git390.osdl.marist.edu/pub/scm/linux-2.6:
    [S390] incorrect reipl nss name.
    [S390] Load disabled wait psw if reipl fails.
    [S390] Fix IPL from NSS.
    [S390] zcrypt: fix ap_device_list handling
    [S390] sclp_vt220: speed up console output for interactive work
    [S390] dasd: fix reference counting in display method for proc/dasd/devices
    [S390] dasd: let dasd erp matching recognize alias recovery
    [S390] Get rid of memcpy gcc warning workaround.
    [S390] idle: Fix machine check handling in idle loop.
    [S390] Update default configuration.

    Linus Torvalds
     
  • Don't oops if NumPhys==0, instead return -ENODEV.
    This patch fixes http://bugzilla.kernel.org/show_bug.cgi?id=9909

    Signed-off-by: Krzysztof Piotr Oledzki
    Acked-by: Eric Moore
    Signed-off-by: Andrew Morton
    Signed-off-by: James Bottomley

    Krzysztof Oledzki
     
  • Fix the following warnings:
    WARNING: vmlinux.o(.text+0xfe6711): Section mismatch in reference from the function cpufreq_unregister_driver() to the variable .cpuinit.data:cpufreq_cpu_notifier
    WARNING: vmlinux.o(.text+0xfe68af): Section mismatch in reference from the function cpufreq_register_driver() to the variable .cpuinit.data:cpufreq_cpu_notifier
    WARNING: vmlinux.o(.exit.text+0xc4fa): Section mismatch in reference from the function cpufreq_stats_exit() to the variable .cpuinit.data:cpufreq_stat_cpu_notifier

    The warnings were casued by references to unregister_hotcpu_notifier()
    from normal functions or exit functions.
    This is flagged by modpost as a potential error because
    it does not know that for the non HOTPLUG_CPU
    scenario the unregister_hotcpu_notifier() is a nop.
    Silence the warning by replacing the __initdata
    annotation with a __refdata annotation.

    Signed-off-by: Sam Ravnborg
    Signed-off-by: Dave Jones

    Sam Ravnborg
     
  • refactor to use gotos instead of explicit exit paths

    Signed-off-by: Dave Jones

    Dave Jones
     
  • refactor to use gotos instead of explicit exit paths

    Signed-off-by: Dave Jones

    Dave Jones
     
  • For qla4xxx, we could be starting a session, but some error (network,
    target, IO from a device that got started, etc) could cause the session
    to fail and curring the block/unblock and state manipulation could race
    with each other. This patch just has those operations done in the
    single threaded iscsi eh work queue, so that way they are serialized.

    Signed-off-by: Mike Christie
    Signed-off-by: James Bottomley

    Mike Christie
     
  • We are seeing EXIST errors from sysfs during device addition.
    We need a start scan callout so we do not start scanning sessions
    found during hba setup, before the async scsi scan code is ready.

    Signed-off-by: Mike Christie
    Acked-by: David C Somayajulu
    Signed-off-by: James Bottomley

    Mike Christie
     
  • The host reset callout could be starting to reset the hba at the same
    time the dpc thread is. This creates lots of problems because they both
    want to do wierd things with the firmware and interrupts, etc.

    This patch just has the host reset function fully shutdown the dpc
    thread before resetting the hba.

    This patch also moves the setting of the session online bit to fix
    a potential race with the dpc thread and iscsi recovery thread.

    Signed-off-by: Mike Christie
    Acked-by: David C Somayajulu
    Signed-off-by: James Bottomley

    Mike Christie
     

05 Mar, 2008

9 commits

  • This addresses the recent ATI SB600 errata, where the hardware does
    not like 256-length PRD entries during FPDMA (aka NCQ).

    It hurts performance on SB600, but it is more important to get a
    correct patch eliminating the data corruption/lockups, and then later
    on tune for performance.

    We simply limit each command to a maximum of 255 sectors, on SB600.

    Signed-off-by: Jeff Garzik

    Jeff Garzik
     
  • When masking, mask out the modes that are unsupported not the ones
    that are supported. This makes life happier.

    Signed-off-by: Alan Cox
    Signed-off-by: Andrew Morton
    Signed-off-by: Jeff Garzik

    Alan Cox
     
  • In ap_device_probe() we can add the new ap device to the internal
    device list only if the device probe function successfully returns.
    Otherwise we might end up with an invalid device in the internal ap
    device list.

    Signed-off-by: Ralph Wuerthner
    Signed-off-by: Martin Schwidefsky

    Ralph Wuerthner
     
  • Currently an output buffer can wait up to HZ/2 until the buffer is
    flushed. The wait time is noticeable in interactive tools like mc.

    Change the value to HZ/20, which seems enough for interactive work.

    Signed-off-by: Christian Borntraeger
    Signed-off-by: Martin Schwidefsky

    Christian Borntraeger
     
  • Using the /proc/dasd/devices interface leaves the reference counter
    of alias devices in an inconsistent state. A process that tries to set
    such a device offline afterwards will hang.
    The dasd_devices_show function returns immediately for alias devices
    and this code path was missing a dasd_put_device call.

    Signed-off-by: Stefan Weinhuber
    Signed-off-by: Martin Schwidefsky

    Stefan Weinhuber
     
  • When a request fails that was started on an alias device then the
    first recovery step is to retry it on the base device. If the
    recovery request fails again with the same symptoms, the next step
    should not be a simple retry, but should be a proper recovery based
    on sense data, etc. To do so, the dasd recovery functions need to
    recognize the alias recovery step in the erp chain by comparing
    the start devices.

    Signed-off-by: Stefan Weinhuber
    Signed-off-by: Martin Schwidefsky

    Stefan Weinhuber
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-2.6: (22 commits)
    [IPCONFIG]: The kernel gets no IP from some DHCP servers
    b43legacy: Fix module init message
    rndis_wlan: fix broken data copy
    libertas: compare the current command with response
    libertas: fix sanity check on sequence number in command response
    p54: fix eeprom parser length sanity checks
    p54: fix EEPROM structure endianness
    ssb: Add pcibios_enable_device() return value check
    rc80211-pid: fix rate adjustment
    [ESP]: Add select on AUTHENC
    [TCP]: Improve ipv4 established hash function.
    [NETPOLL]: Revert two bogus cleanups that broke netconsole.
    [PPPOL2TP]: Add missing sock_put() in pppol2tp_tunnel_closeall()
    Subject: [PPPOL2TP] add missing sock_put() in pppol2tp_recv_dequeue()
    [BLUETOOTH]: l2cap info_timer delete fix in hci_conn_del
    [NET]: Fix race in generic address resolution.
    iucv: fix build error on !SMP
    [TCP]: Must count fack_count also when skipping
    [TUN]: Fix RTNL-locking in tun/tap driver
    [SCTP]: Use proc_create to setup de->proc_fops.
    ...

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-2.6:
    debugfs: fix sparse warnings
    Driver core: Fix cleanup when failing device_add().
    driver core: Remove dpm_sysfs_remove() from error path of device_add()
    PM: fix new mutex-locking bug in the PM core
    PM: Do not acquire device semaphores upfront during suspend
    kobject: properly initialize ksets
    sysfs: CONFIG_SYSFS_DEPRECATED fix
    driver core: fix up Kconfig text for CONFIG_SYSFS_DEPRECATED

    Linus Torvalds
     
  • * git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/pci-2.6:
    pci: hotplug: pciehp: fix error code path in hpc_power_off_slot
    PCI: Add DECLARE_PCI_DEVICE_TABLE macro
    PCI: fix up error messages for pci_bus registering
    PCI: fix section mismatch warning in pci_scan_child_bus
    PCI: consolidate duplicated MSI enable functions
    PCI: use dev_printk in quirk messages

    Linus Torvalds