Skip to content
Commits on Jul 7, 2012
  1. @NigelCunningham

    Cleanup - indentation, unneeded exports etc.

    NigelCunningham committed Jul 7, 2012
    Cleanup indentation & remove unneeded includes and symbol
    exports. Generally minimise the diff from vanilla.
    
    Signed-off-by: Nigel <nigel@tuxonice.net>
  2. @NigelCunningham

    Remove obsolete __make_request addition

    NigelCunningham committed Jul 7, 2012
    Remove the obsolete __make_request in blk-core.c.
    
    Signed-off-by: Nigel <nigel@tuxonice.net>
Commits on Jul 6, 2012
  1. @NigelCunningham

    TuxOnIce 3.3

    NigelCunningham committed Jul 6, 2012
    Having fixed a couple of long standing bugs, let's bump the
    version number.
    
    Signed-off-by: Nigel <nigel@tuxonice.net>
  2. @NigelCunningham

    Fix failure to free memory.

    NigelCunningham committed Jul 6, 2012
    The code we add to stop other processes getting into memory freeing
    paths was also now stopping us freeing memory. Fix the condition to
    match. And modify another tweak to the conditions for freeing memory
    while we're at it.
    
    Signed-off-by: Nigel <nigel@tuxonice.net>
  3. @NigelCunningham

    Replace refs to shrink_all_memory with shrink_memory_mask.

    NigelCunningham committed Jul 6, 2012
    Fix a couple of out-of-date comments and messages.
    
    Signed-off-by: Nigel <nigel@tuxonice.net>
Commits on Jul 5, 2012
  1. @NigelCunningham
Commits on Jul 4, 2012
  1. @bwhacks

    Linux 3.2.22

    bwhacks committed Jul 4, 2012
  2. @bwhacks

    batman-adv: only drop packets of known wifi clients

    Marek Lindner committed with bwhacks Jun 20, 2012
    commit 5870adc upstream.
    
    bug introduced with 59b699c
    
    If the source or destination mac address of an ethernet packet
    could not be found in the translation table the packet was
    dropped if AP isolation was turned on. This behavior would
    make it impossible to send broadcast packets over the mesh as
    the broadcast address will never enter the translation table.
    
    Signed-off-by: Marek Lindner <lindner_marek@yahoo.de>
    Acked-by: Antonio Quartulli <ordex@autistici.org>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  3. @bwhacks

    acpi_pad: fix power_saving thread deadlock

    Stuart Hayes committed with bwhacks Jun 13, 2012
    commit 5f16012 upstream.
    
    The acpi_pad driver can get stuck in destroy_power_saving_task()
    waiting for kthread_stop() to stop a power_saving thread.  The problem
    is that the isolated_cpus_lock mutex is owned when
    destroy_power_saving_task() calls kthread_stop(), which waits for a
    power_saving thread to end, and the power_saving thread tries to
    acquire the isolated_cpus_lock when it calls round_robin_cpu().  This
    patch fixes the issue by making round_robin_cpu() use its own mutex.
    
    https://bugzilla.kernel.org/show_bug.cgi?id=42981
    
    Signed-off-by: Stuart Hayes <Stuart_Hayes@Dell.com>
    Signed-off-by: Len Brown <len.brown@intel.com>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  4. @bwhacks

    can: flexcan: use be32_to_cpup to handle the value of dt entry

    Hui Wang committed with bwhacks Jun 27, 2012
    commit 85f2f83 upstream.
    
    The freescale arm i.MX series platform can support this driver, and
    usually the arm cpu works in the little endian mode by default, while
    device tree entry value is stored in big endian format, we should use
    be32_to_cpup() to handle them, after modification, it can work well
    both on the le cpu and be cpu.
    
    Cc: Shawn Guo <shawn.guo@linaro.org>
    Signed-off-by: Hui Wang <jason77.wang@gmail.com>
    Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  5. @bwhacks

    xen/netfront: teardown the device before unregistering it.

    Ian Campbell committed with bwhacks Jun 25, 2012
    commit 6bc96d0 upstream.
    
    Fixes:
    [   15.470311] WARNING: at /local/scratch/ianc/devel/kernels/linux/fs/sysfs/file.c:498 sysfs_attr_ns+0x95/0xa0()
    [   15.470326] sysfs: kobject eth0 without dirent
    [   15.470333] Modules linked in:
    [   15.470342] Pid: 12, comm: xenwatch Not tainted 3.4.0-x86_32p-xenU #93
    and
    [    9.150554] BUG: unable to handle kernel paging request at 2b359000
    [    9.150577] IP: [<c1279561>] linkwatch_do_dev+0x81/0xc0
    [    9.150592] *pdpt = 000000002c3c9027 *pde = 0000000000000000
    [    9.150604] Oops: 0002 [#1] SMP
    [    9.150613] Modules linked in:
    
    This is http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=675190
    
    Reported-by: George Shuklin <george.shuklin@gmail.com>
    Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
    Tested-by: William Dauchy <wdauchy@gmail.com>
    Cc: 675190@bugs.debian.org
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  6. @craigshelley @bwhacks

    USB: CP210x Add 10 Device IDs

    craigshelley committed with bwhacks Jun 26, 2012
    commit 3fcc8f9 upstream.
    
    This patch adds 10 device IDs for CP210x based devices from the following manufacturers:
    Timewave
    Clipsal
    Festo
    Link Instruments
    
    Signed-off-by: Craig Shelley <craig@microtron.org.uk>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  7. @bwhacks

    USB: option: Add USB ID for Novatel Ovation MC551

    Forest Bond committed with bwhacks Jun 22, 2012
    commit 065b07e upstream.
    
    This device is also known as the Verizon USB551L.
    
    Signed-off-by: Forest Bond <forest.bond@rapidrollout.com>
    Acked-by: Dan Williams <dcbw@redhat.com>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  8. @bwhacks

    ALSA: hda - Add Realtek ALC280 codec support

    David Henningsson committed with bwhacks Jun 25, 2012
    commit befae82 upstream.
    
    This chip looks very similar to ALC269 and ALC27* variants. The bug reporter
    has verified that sound was working after this patch had been applied.
    
    BugLink: https://bugs.launchpad.net/bugs/1017017
    Tested-by: Richard Crossley <richardcrossley@o2.co.uk>
    Signed-off-by: David Henningsson <david.henningsson@canonical.com>
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  9. @bwhacks

    stable: Allow merging of backports for serious user-visible performan…

    Mel Gorman committed with bwhacks Jun 21, 2012
    …ce issues
    
    commit eb3979f upstream.
    
    Distribution kernel maintainers routinely backport fixes for users that
    were deemed important but not "something critical" as defined by the
    rules. To users of these kernels they are very serious and failing to fix
    them reduces the value of -stable.
    
    The problem is that the patches fixing these issues are often subtle and
    prone to regressions in other ways and need greater care and attention.
    To combat this, these "serious" backports should have a higher barrier
    to entry.
    
    This patch relaxes the rules to allow a distribution maintainer to merge
    to -stable a backported patch or small series that fixes a "serious"
    user-visible performance issue. They should include additional information on
    the user-visible bug affected and a link to the bugzilla entry if available.
    The same rules about the patch being already in mainline still apply.
    
    Signed-off-by: Mel Gorman <mgorman@suse.de>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  10. @bwhacks

    x86, cpufeature: Rename X86_FEATURE_DTS to X86_FEATURE_DTHERM

    H. Peter Anvin committed with bwhacks Jun 22, 2012
    commit 4ad3341 upstream.
    
    It makes sense to label "Digital Thermal Sensor" as "DTS", but
    unfortunately the string "dts" was already used for "Debug Store", and
    /proc/cpuinfo is a user space ABI.
    
    Therefore, rename this to "dtherm".
    
    This conflict went into mainline via the hwmon tree without any x86
    maintainer ack, and without any kind of hint in the subject.
    
        a465905 x86/hwmon: fix initialization of coretemp
    
    Reported-by: Jean Delvare <khali@linux-fr.org>
    Link: http://lkml.kernel.org/r/4FE34BCB.5050305@linux.intel.com
    Cc: Jan Beulich <JBeulich@suse.com>
    Signed-off-by: H. Peter Anvin <hpa@linux.intel.com>
    [bwh: Backported to 3.2: drop the coretemp device table change]
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  11. @bwhacks

    PM / Sleep: Prevent waiting forever on asynchronous suspend after abort

    Mandeep Singh Baines committed with bwhacks Jun 24, 2012
    commit 1f758b2 upstream.
    
    __device_suspend() must always send a completion. Otherwise, parent
    devices will wait forever.
    
    Commit 1e2ef05, "PM: Limit race conditions between runtime PM and
    system sleep (v2)", introduced a regression by short-circuiting the
    complete_all() for certain error cases.
    
    This patch fixes the bug by always signalling a completion.
    
    Addresses http://crosbug.com/31972
    
    Tested by injecting an abort.
    
    Signed-off-by: Mandeep Singh Baines <msb@chromium.org>
    Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  12. @tiwai @bwhacks

    drm/i915: Fix eDP blank screen after S3 resume on HP desktops

    tiwai committed with bwhacks Jun 21, 2012
    commit 6db65cb upstream.
    
    This patch fixes the problem on some HP desktop machines with eDP
    which give blank screens after S3 resume.
    
    It turned out that BLC_PWM_CPU_CTL must be written after
    BLC_PWM_CPU_CTL2.  Otherwise it doesn't take effect on these
    SNB machines.
    
    Tested with 3.5-rc3 kernel.
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=49233
    
    Signed-off-by: Takashi Iwai <tiwai@suse.de>
    Signed-off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  13. @danvet @bwhacks

    drm/i915: rip out the PM_IIR WARN

    danvet committed with bwhacks Jun 21, 2012
    commit 58bf806 upstream.
    
    After banging my head against this for the past few months, I still
    don't see how this could possible race under the premise that once an
    irq bit is masked in PM_IMR and reset in PM_IIR it won't show up again
    until we unmask it in PM_IMR.
    
    Still, we have reports of this being seen in the wild. Now Bspec has
    this little bit of lovely language in the PMIIR register:
    
    Public SNB Docs, Vol3Part2, 2.5.14 "PMIIR":
    
    "For each bit, the IIR can store a second pending interrupt if two or
    more of the same interrupt conditions occur before the first condition
    is cleared. Upon clearing the interrupt, the IIR bit will momentarily
    go low, then return high to indicate there is another interrupt
    pending."
    
    Now if we presume that PMIMR only prevent new interrupts from being
    queued, we could easily end up masking an interrupt and clearing it,
    but the 2nd pending interrupt setting the bit in PMIIR right away
    again. Which leads, the next time the irq handler runs, to hitting the
    WARN.
    
    Also, no bad side effects of this have ever been reported. And we've
    tracked down our issues with the gpu turbo getting stuck to bogus
    interrupt generation limits in th RPLIMIT register.
    
    So let's just rip out this WARN as bogus and call it a day. The only
    shallow thing here is that this 2-deep irq queue in the hw makes you
    wonder how racy the windows irq handler is ...
    
    Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=42907
    Acked-by: Chris Wilson <chris@chris-wilson.co.uk>
    Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  14. @ickle @bwhacks

    drm/i915: Refactor the deferred PM_IIR handling into a single function

    ickle committed with bwhacks Apr 15, 2012
    commit fc6826d upstream.
    
    This function, along with the registers and deferred work hander, are
    all shared with SandyBridge, IvyBridge and their variants. So remove the
    duplicate code into a single function.
    
    Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
    Reviewed-by: Ben Widawsky <ben@bwidawsk.net>
    Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    [bwh: Backported to 3.2: adjust context; drop changes for Valley View]
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  15. @wildea01 @bwhacks

    oprofile: perf: use NR_CPUS instead or nr_cpumask_bits for static array

    wildea01 committed with bwhacks Jun 8, 2012
    commit e734568 upstream.
    
    The OProfile perf backend uses a static array to keep track of the
    perf events on the system. When compiling with CONFIG_CPUMASK_OFFSTACK=y
    && SMP, nr_cpumask_bits is not a compile-time constant and the build
    will fail with:
    
    oprofile_perf.c:28: error: variably modified 'perf_events' at file scope
    
    This patch uses NR_CPUs instead of nr_cpumask_bits for the array
    initialisation. If this causes space problems in the future, we can
    always move to dynamic allocation for the events array.
    
    Cc: Matt Fleming <matt@console-pimps.org>
    Reported-by: Russell King - ARM Linux <linux@arm.linux.org.uk>
    Signed-off-by: Will Deacon <will.deacon@arm.com>
    Signed-off-by: Robert Richter <robert.richter@amd.com>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  16. @shmygov @bwhacks

    USB: option: add id for Cellient MEN-200

    shmygov committed with bwhacks Jun 20, 2012
    commit 1e2c4e5 upstream.
    
    Add vendor and product ID to option.c driver
    for Cellient MEN-200 EVDO Rev.B 450MHz data module.
    http://cellient.com
    
    Signed-off-by: Dmitry Shmygov <shmygov@rambler.ru>
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  17. @JoseGoncalves @bwhacks

    ARM: SAMSUNG: Fix for S3C2412 EBI memory mapping

    JoseGoncalves committed with bwhacks May 12, 2012
    commit 3dca938 upstream.
    
    While upgrading the kernel on a S3C2412 based board I've noted
    that it was impossible to boot the board with a 2.6.32 or upper
    kernel. I've tracked down the problem to the EBI virtual memory
    mapping that is in conflict with the IO mapping definition in
    arch/arm/mach-s3c24xx/s3c2412.c.
    
    Signed-off-by: Jose Miguel Goncalves <jose.goncalves@inov.pt>
    Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  18. @jmberg @bwhacks

    iwlwifi: remove log_event debugfs file debugging is disabled

    jmberg committed with bwhacks Jun 20, 2012
    commit 882b7b7 upstream.
    
    When debugging is disabled, the event log functions aren't
    functional in the way that the debugfs file expects. This
    leads to the debugfs access crashing. Since the event log
    functions aren't functional then, remove the debugfs file
    when CONFIG_IWLWIFI_DEBUG is not set.
    
    Reported-by: Lekensteyn <lekensteyn@gmail.com>
    Reviewed-by: Emmanuel Grumbach <emmanuel.grumbach@intel.com>
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
    [bwh: Backported to 3.2: adjust filename, context]
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  19. @bwhacks

    ath9k_hw: avoid possible infinite loop in ar9003_get_pll_sqsum_dvc

    Mohammed Shafi Shajakhan committed with bwhacks Jun 18, 2012
    commit f18e3c6 upstream.
    
    "ath9k: Fix softlockup in AR9485" with commit id
    64bc123 fixed the reported
    issue, yet its better to avoid the possible infinite loop
    in ar9003_get_pll_sqsum_dvc by having a timeout as suggested
    by ath9k maintainers.
    http://www.spinics.net/lists/linux-wireless/msg92126.html.
    Based on my testing PLL's locking measurement is done in
    ~200us (2 iterations).
    
    Cc: Rolf Offermanns <rolf.offermanns@gmx.net>
    Cc: Sujith Manoharan <c_manoha@qca.qualcomm.com>
    Cc: Senthil Balasubramanian <senthilb@qca.qualcomm.com>
    Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  20. @bwhacks

    ARM: SAMSUNG: Should check for IS_ERR(clk) instead of NULL

    Jonghwan Choi committed with bwhacks Jun 20, 2012
    commit a5d8f47 upstream.
    
    On the error condition clk_get() returns ERR_PTR().
    
    Signed-off-by: Jonghwan Choi <jhbird.choi@samsung.com>
    Signed-off-by: Kukjin Kim <kgene.kim@samsung.com>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  21. @bwhacks

    batman-adv: fix skb->data assignment

    Antonio Quartulli committed with bwhacks Jun 29, 2012
    commit 2c995ff upstream.
    
    skb_linearize(skb) possibly rearranges the skb internal data and then changes
    the skb->data pointer value. For this reason any other pointer in the code that
    was assigned skb->data before invoking skb_linearise(skb) must be re-assigned.
    
    In the current tt_query message handling code this is not done and therefore, in
    case of skb linearization, the pointer used to handle the packet header ends up
    in pointing to free'd memory.
    
    This bug was introduced by a73105b
    (batman-adv: improved client announcement mechanism)
    
    Signed-off-by: Antonio Quartulli <ordex@autistici.org>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    [This patch is a backport for kernel versions 3.1 and 3.2 - Antonio]
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  22. @nbd168 @bwhacks

    ath9k: fix a tx rate duration calculation bug

    nbd168 committed with bwhacks Jun 15, 2012
    commit 76591be upstream.
    
    The rate pointer variable for a rate series is used in a loop before it is
    initialized. This went unnoticed because it was used earlier for the RTS/CTS
    rate. This bug can lead to the wrong PHY type being passed to the
    duration calculation function.
    
    Signed-off-by: Felix Fietkau <nbd@openwrt.org>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  23. @bwhacks

    can: c_can: precedence error in c_can_chip_config()

    Dan Carpenter committed with bwhacks Jun 15, 2012
    commit d9cb9bd upstream.
    
    (CAN_CTRLMODE_LISTENONLY & CAN_CTRLMODE_LOOPBACK) is (0x02 & 0x01) which
    is zero so the condition is never true.  The intent here was to test
    that both flags were set.
    
    Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
    Acked-by: Oliver Hartkopp <socketcan@hartkopp.net>
    Signed-off-by: Marc Kleine-Budde <mkl@pengutronix.de>
    Signed-off-by: David S. Miller <davem@davemloft.net>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  24. @bwhacks

    ath9k: Fix softlockup in AR9485

    Mohammed Shafi Shajakhan committed with bwhacks Jun 13, 2012
    commit bcb7ad7 upstream.
    
    steps to recreate:
    load latest ath9k driver with AR9485
    stop the network-manager and wpa_supplicant
    bring the interface up
    
    	Call Trace:
    	[<ffffffffa0517490>] ? ath_hw_check+0xe0/0xe0 [ath9k]
    	[<ffffffff812cd1e8>] __const_udelay+0x28/0x30
    	[<ffffffffa03bae7a>] ar9003_get_pll_sqsum_dvc+0x4a/0x80 [ath9k_hw]
    	[<ffffffffa05174eb>] ath_hw_pll_work+0x5b/0xe0 [ath9k]
    	[<ffffffff810744fe>] process_one_work+0x11e/0x470
    	[<ffffffff8107530f>] worker_thread+0x15f/0x360
    	[<ffffffff810751b0>] ? manage_workers+0x230/0x230
    	[<ffffffff81079af3>] kthread+0x93/0xa0
    	[<ffffffff815fd3a4>] kernel_thread_helper+0x4/0x10
    	[<ffffffff81079a60>] ? kthread_freezable_should_stop+0x70/0x70
    	[<ffffffff815fd3a0>] ? gs_change+0x13/0x13
    
    ensure that the PLL-WAR for AR9485/AR9340 is executed only if the STA is
    associated (or) IBSS/AP mode had started beaconing. Ideally this WAR
    is needed to recover from some rare beacon stuck during stress testing.
    Before the STA is associated/IBSS had started beaconing, PLL4(0x1618c)
    always seem to have zero even though we had configured PLL3(0x16188) to
    query about PLL's locking status. When we keep on polling infinitely PLL4's
    8th bit(ie check for PLL locking measurements is done), machine hangs
    due to softlockup.
    
    fixes https://bugzilla.redhat.com/show_bug.cgi?id=811142
    
    Reported-by: Rolf Offermanns <rolf.offermanns@gmx.net>
    Tested-by: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
    Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  25. @elp @bwhacks

    cfg80211: fix potential deadlock in regulatory

    elp committed with bwhacks Jun 12, 2012
    commit fe20b39 upstream.
    
    reg_timeout_work() calls restore_regulatory_settings() which
    takes cfg80211_mutex.
    
    reg_set_request_processed() already holds cfg80211_mutex
    before calling cancel_delayed_work_sync(reg_timeout),
    so it might deadlock.
    
    Call the async cancel_delayed_work instead, in order
    to avoid the potential deadlock.
    
    This is the relevant lockdep warning:
    
    cfg80211: Calling CRDA for country: XX
    
    ======================================================
    [ INFO: possible circular locking dependency detected ]
    3.4.0-rc5-wl+ #26 Not tainted
    -------------------------------------------------------
    kworker/0:2/1391 is trying to acquire lock:
     (cfg80211_mutex){+.+.+.}, at: [<bf28ae00>] restore_regulatory_settings+0x34/0x418 [cfg80211]
    
    but task is already holding lock:
     ((reg_timeout).work){+.+...}, at: [<c0059e94>] process_one_work+0x1f0/0x480
    
    which lock already depends on the new lock.
    
    the existing dependency chain (in reverse order) is:
    
    -> #2 ((reg_timeout).work){+.+...}:
           [<c008fd44>] validate_chain+0xb94/0x10f0
           [<c0090b68>] __lock_acquire+0x8c8/0x9b0
           [<c0090d40>] lock_acquire+0xf0/0x114
           [<c005b600>] wait_on_work+0x4c/0x154
           [<c005c000>] __cancel_work_timer+0xd4/0x11c
           [<c005c064>] cancel_delayed_work_sync+0x1c/0x20
           [<bf28b274>] reg_set_request_processed+0x50/0x78 [cfg80211]
           [<bf28bd84>] set_regdom+0x550/0x600 [cfg80211]
           [<bf294cd8>] nl80211_set_reg+0x218/0x258 [cfg80211]
           [<c03c7738>] genl_rcv_msg+0x1a8/0x1e8
           [<c03c6a00>] netlink_rcv_skb+0x5c/0xc0
           [<c03c7584>] genl_rcv+0x28/0x34
           [<c03c6720>] netlink_unicast+0x15c/0x228
           [<c03c6c7c>] netlink_sendmsg+0x218/0x298
           [<c03933c8>] sock_sendmsg+0xa4/0xc0
           [<c039406c>] __sys_sendmsg+0x1e4/0x268
           [<c0394228>] sys_sendmsg+0x4c/0x70
           [<c0013840>] ret_fast_syscall+0x0/0x3c
    
    -> #1 (reg_mutex){+.+.+.}:
           [<c008fd44>] validate_chain+0xb94/0x10f0
           [<c0090b68>] __lock_acquire+0x8c8/0x9b0
           [<c0090d40>] lock_acquire+0xf0/0x114
           [<c04734dc>] mutex_lock_nested+0x48/0x320
           [<bf28b2cc>] reg_todo+0x30/0x538 [cfg80211]
           [<c0059f44>] process_one_work+0x2a0/0x480
           [<c005a4b4>] worker_thread+0x1bc/0x2bc
           [<c0061148>] kthread+0x98/0xa4
           [<c0014af4>] kernel_thread_exit+0x0/0x8
    
    -> #0 (cfg80211_mutex){+.+.+.}:
           [<c008ed58>] print_circular_bug+0x68/0x2cc
           [<c008fb28>] validate_chain+0x978/0x10f0
           [<c0090b68>] __lock_acquire+0x8c8/0x9b0
           [<c0090d40>] lock_acquire+0xf0/0x114
           [<c04734dc>] mutex_lock_nested+0x48/0x320
           [<bf28ae00>] restore_regulatory_settings+0x34/0x418 [cfg80211]
           [<bf28b200>] reg_timeout_work+0x1c/0x20 [cfg80211]
           [<c0059f44>] process_one_work+0x2a0/0x480
           [<c005a4b4>] worker_thread+0x1bc/0x2bc
           [<c0061148>] kthread+0x98/0xa4
           [<c0014af4>] kernel_thread_exit+0x0/0x8
    
    other info that might help us debug this:
    
    Chain exists of:
      cfg80211_mutex --> reg_mutex --> (reg_timeout).work
    
     Possible unsafe locking scenario:
    
           CPU0                    CPU1
           ----                    ----
      lock((reg_timeout).work);
                                   lock(reg_mutex);
                                   lock((reg_timeout).work);
      lock(cfg80211_mutex);
    
     *** DEADLOCK ***
    
    2 locks held by kworker/0:2/1391:
     #0:  (events){.+.+.+}, at: [<c0059e94>] process_one_work+0x1f0/0x480
     #1:  ((reg_timeout).work){+.+...}, at: [<c0059e94>] process_one_work+0x1f0/0x480
    
    stack backtrace:
    [<c001b928>] (unwind_backtrace+0x0/0x12c) from [<c0471d3c>] (dump_stack+0x20/0x24)
    [<c0471d3c>] (dump_stack+0x20/0x24) from [<c008ef70>] (print_circular_bug+0x280/0x2cc)
    [<c008ef70>] (print_circular_bug+0x280/0x2cc) from [<c008fb28>] (validate_chain+0x978/0x10f0)
    [<c008fb28>] (validate_chain+0x978/0x10f0) from [<c0090b68>] (__lock_acquire+0x8c8/0x9b0)
    [<c0090b68>] (__lock_acquire+0x8c8/0x9b0) from [<c0090d40>] (lock_acquire+0xf0/0x114)
    [<c0090d40>] (lock_acquire+0xf0/0x114) from [<c04734dc>] (mutex_lock_nested+0x48/0x320)
    [<c04734dc>] (mutex_lock_nested+0x48/0x320) from [<bf28ae00>] (restore_regulatory_settings+0x34/0x418 [cfg80211])
    [<bf28ae00>] (restore_regulatory_settings+0x34/0x418 [cfg80211]) from [<bf28b200>] (reg_timeout_work+0x1c/0x20 [cfg80211])
    [<bf28b200>] (reg_timeout_work+0x1c/0x20 [cfg80211]) from [<c0059f44>] (process_one_work+0x2a0/0x480)
    [<c0059f44>] (process_one_work+0x2a0/0x480) from [<c005a4b4>] (worker_thread+0x1bc/0x2bc)
    [<c005a4b4>] (worker_thread+0x1bc/0x2bc) from [<c0061148>] (kthread+0x98/0xa4)
    [<c0061148>] (kthread+0x98/0xa4) from [<c0014af4>] (kernel_thread_exit+0x0/0x8)
    cfg80211: Calling CRDA to update world regulatory domain
    cfg80211: World regulatory domain updated:
    cfg80211:   (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp)
    cfg80211:   (2402000 KHz - 2472000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
    cfg80211:   (2457000 KHz - 2482000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
    cfg80211:   (2474000 KHz - 2494000 KHz @ 20000 KHz), (300 mBi, 2000 mBm)
    cfg80211:   (5170000 KHz - 5250000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
    cfg80211:   (5735000 KHz - 5835000 KHz @ 40000 KHz), (300 mBi, 2000 mBm)
    
    Signed-off-by: Eliad Peller <eliad@wizery.com>
    Signed-off-by: Johannes Berg <johannes.berg@intel.com>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  26. @bwhacks

    ath9k: Fix a WARNING on suspend/resume with IBSS

    Mohammed Shafi Shajakhan committed with bwhacks Jun 6, 2012
    commit 2031b4c upstream.
    
    this patch is dependent on the patch "cfg80211: fix interface
    combinations"
    
    In ath9k currently we have ADHOC interface as a single incompatible
    interface. when drv_add_interface is called during resume we got to
    consider number of vifs already present in addition to checking the
    drivers 'opmode' information about ADHOC.  we incorrectly assume
    an ADHOC interface is already present. Then we may miss some driver
    specific data for the ADHOC interface after resume.
    
    The above mentioned checks can be removed from the driver,
    as the patch 'cfg80211: fix interface combinations' ensures that
    if an interface type is not advertised by the driver in any of the
    interface combinations(via ieee80211_iface_combination) then it shall
    be treated as a single incompatible interface. Fixes the following
    warning on suspend/resume with ibss interface.
    
            ath: phy0: Cannot create ADHOC interface when other
            interfaces already exist.
            WARNING: at net/mac80211/driver-ops.h:12
            ieee80211_reconfig+0x1882/0x1ca0 [mac80211]()
            Hardware name: 2842RK1
            wlan2:  Failed check-sdata-in-driver check, flags: 0x0
    
            Call Trace:
            [<c01361b2>] warn_slowpath_common+0x72/0xa0
            [<f8aaa7c2>] ? ieee80211_reconfig+0x1882/0x1ca0
            [mac80211]
            [<f8aaa7c2>] ? ieee80211_reconfig+0x1882/0x1ca0
            [mac80211]
            [<c0136283>] warn_slowpath_fmt+0x33/0x40
            [<f8aaa7c2>] ieee80211_reconfig+0x1882/0x1ca0 [mac80211]
            [<c06c1d1a>] ? mutex_lock_nested+0x23a/0x2f0
            [<f8a95097>] ieee80211_resume+0x27/0x70 [mac80211]
            [<fd177edf>] wiphy_resume+0x8f/0xa0 [cfg80211]
    
    Cc: Rajkumar Manoharan <rmanohar@qca.qualcomm.com>
    Signed-off-by: Mohammed Shafi Shajakhan <mohammed@qca.qualcomm.com>
    Signed-off-by: John W. Linville <linville@tuxdriver.com>
    [bwh: Backported to 3.2: adjust context]
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  27. @snitm @bwhacks

    dm thin: reinstate missing mempool_free in cell_release_singleton

    snitm committed with bwhacks May 12, 2012
    commit 03aaae7 upstream.
    
    Fix a significant memory leak inadvertently introduced during
    simplification of cell_release_singleton() in commit
    6f94a4c ("dm thin: fix stacked bi_next
    usage").
    
    A cell's hlist_del() must be accompanied by a mempool_free().
    Use __cell_release() to do this, like before.
    
    Signed-off-by: Mike Snitzer <snitzer@redhat.com>
    Signed-off-by: Alasdair G Kergon <agk@redhat.com>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  28. @bwhacks

    drm/nouveau/fbcon: using nv_two_heads is not a good idea

    Ben Skeggs committed with bwhacks Jun 26, 2012
    commit 9bd0c15 upstream.
    
    nv_two_heads() was never meant to be used outside of pre-nv50 code.  The
    code checks for >= NV_10 for 2 CRTCs, then downgrades a few specific
    chipsets to 1 CRTC based on (pci_device & 0x0ff0).
    
    The breakage example seen is on GTX 560Ti, with a pciid of 0x1200, which
    gets detected as an NV20 (0x020x) with 1 CRTC by nv_two_heads(), causing
    memory corruption because there's actually 2 CRTCs..
    
    This switches fbcon to use the CRTC count directly from the mode_config
    structure, which will also fix the same issue on Kepler boards which have
    4 CRTCs.
    
    Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  29. @danvet @bwhacks

    drm/edid: don't return stack garbage from supports_rb

    danvet committed with bwhacks Jun 19, 2012
    commit b196a49 upstream.
    
    We need to initialize this to false, because the is_rb callback only
    ever sets it to true.
    
    Noticed while reading through the code.
    
    Signed-Off-by: Daniel Vetter <daniel.vetter@ffwll.ch>
    Reviewed-by: Adam Jackson <ajax@redhat.com>
    Signed-off-by: Dave Airlie <airlied@redhat.com>
    Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
Something went wrong with that request. Please try again.