22 Jun, 2015

4 commits


20 Jun, 2015

1 commit

  • Pull clk fixes from Michael Turquette:
    "Very late clk regression fixes for the ARM-based AT91 platform.

    These went unnoticed by me until recently, hence the late pull
    request"

    * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
    clk: at91: fix h32mx prototype inclusion in pmc header
    clk: at91: trivial: typo in peripheral clock description
    clk: at91: fix PERIPHERAL_MAX_SHIFT definition
    clk: at91: pll: fix input range validity check

    Linus Torvalds
     

19 Jun, 2015

2 commits


17 Jun, 2015

1 commit


13 Jun, 2015

3 commits

  • Pull networking fixes from David Miller:

    1) Fix uninitialized struct station_info in cfg80211_wireless_stats(),
    from Johannes Berg.

    2) Revert commit attempt to fix ipv6 protocol resubmission, it adds
    regressions.

    3) Endless loops can be created in bridge port lists, fix from Nikolay
    Aleksandrov.

    4) Don't WARN_ON() if sk->sk_forward_alloc is non-zero in
    sk_clear_memalloc, it is a legal situation during swap deactivation.
    Fix from Mel Gorman.

    5) Fix order of disabling interrupts and unlocking NAPI in enic driver
    to avoid a race. From Govindarajulu Varadarajan.

    6) High and low register writes are swapped when programming the start
    of periodic output in igb driver. From Richard Cochran.

    7) Fix device rename handling in mpls stack, from Robert Shearman.

    8) Do not trigger compaction synchronously when optimistically trying
    to allocate an order 3 page in alloc_skb_with_frags() and
    skb_page_frag_refill(). From Shaohua Li.

    9) Authentication with COOKIE_ECHO is not handled properly in SCTP, fix
    from Marcelo Ricardo Leitner.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net:
    Doc: networking: Fix URL for wiki.wireshark.org in udplite.txt
    sctp: allow authenticating DATA chunks that are bundled with COOKIE_ECHO
    net: don't wait for order-3 page allocation
    mpls: handle device renames for per-device sysctls
    net: igb: fix the start time for periodic output signals
    enic: fix memory leak in rq_clean
    enic: check return value for stat dump
    enic: unlock napi busy poll before unmasking intr
    net, swap: Remove a warning and clarify why sk_mem_reclaim is required when deactivating swap
    bridge: fix multicast router rlist endless loop
    tipc: disconnect socket directly after probe failure
    Revert "ipv6: Fix protocol resubmission"
    cfg80211: wext: clear sinfo struct before calling driver

    Linus Torvalds
     
  • This patch fix URL (http to https) for wiki.wireshark.org.

    Signed-off-by: Masanari Iida
    Signed-off-by: David S. Miller

    Masanari Iida
     
  • Pull VT-d hardware workarounds from David Woodhouse:
    "This contains a workaround for hardware issues which I *thought* were
    never going to be seen on production hardware. I'm glad I checked
    that before the 4.1 release...

    Firstly, PASID support is so broken on existing chips that we're just
    going to declare the old capability bit 28 as 'reserved' and change
    the VT-d spec to move PASID support to another bit. So any existing
    hardware doesn't support SVM; it only sets that (now) meaningless bit
    28.

    That patch *wasn't* imperative for 4.1 because we don't have PASID
    support yet. But *even* the extended context tables are broken — if
    you just enable the wider tables and use none of the new bits in them,
    which is precisely what 4.1 does, you find that translations don't
    work. It's this problem which I thought was caught in time to be
    fixed before production, but wasn't.

    To avoid triggering this issue, we now *only* enable the extended
    context tables on hardware which also advertises "we have PASID
    support and we actually tested it this time" with the new PASID
    feature bit.

    In addition, I've added an 'intel_iommu=ecs_off' command line
    parameter to allow us to disable it manually if we need to"

    * git://git.infradead.org/intel-iommu:
    iommu/vt-d: Only enable extended context tables if PASID is supported
    iommu/vt-d: Change PASID support to bit 40 of Extended Capability Register

    Linus Torvalds
     

12 Jun, 2015

1 commit

  • Although the extended tables are theoretically a completely orthogonal
    feature to PASID and anything else that *uses* the newly-available bits,
    some of the early hardware has problems even when all we do is enable
    them and use only the same bits that were in the old context tables.

    For now, there's no motivation to support extended tables unless we're
    going to use PASID support to do SVM. So just don't use them unless
    PASID support is advertised too. Also add a command-line bailout just in
    case later chips also have issues.

    The equivalent problem for PASID support has already been fixed with the
    upcoming VT-d spec update and commit bd00c606a ("iommu/vt-d: Change
    PASID support to bit 40 of Extended Capability Register"), because the
    problematic platforms use the old definition of the PASID-capable bit,
    which is now marked as reserved and meaningless.

    So with this change, we'll magically start using ECS again only when we
    see the new hardware advertising "hey, we have PASID support and we
    actually tested it this time" on bit 40.

    The VT-d hardware architect has promised that we are not going to have
    any reason to support ECS *without* PASID any time soon, and he'll make
    sure he checks with us before changing that.

    In the future, if hypothetical new features also use new bits in the
    context tables and can be seen on implementations *without* PASID support,
    we might need to add their feature bits to the ecs_enabled() macro.

    Signed-off-by: David Woodhouse

    David Woodhouse
     

09 Jun, 2015

2 commits

  • Pull ARM SoC fixes from Kevin Hilman:
    "About 10 days worth of small bug fixes, and the (hopefully) final
    round fixes for from arm-soc land for the -rc cycle. Nothing special
    to note, but here's a brief summary of fixes by SoC type:

    - OMAP:
    small set of misc DT fixes; boot fix for THUMB2 kernel

    - mediatek:
    PMIC fixes; DT fix for model name

    - exynos:
    wakeup interupt fixes for 3250

    - mvebu:
    revert mbus patch which broke DMA masters

    * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc:
    ARM: dts: am335x-boneblack: disable RTC-only sleep to avoid hardware damage
    ARM: dts: AM35xx: fix system control module clocks
    arm64: dts: mt8173-evb: fix model name
    ARM: exynos: Fix wake-up interrupts for Exynos3250
    ARM: dts: Fix n900 dts file to work around 4.1 touchscreen regression on n900
    ARM: dts: Fix dm816x to use right compatible flag for MUSB
    ARM: OMAP3: Fix booting with thumb2 kernel
    Revert "bus: mvebu-mbus: make sure SDRAM CS for DMA don't overlap the MBus bridge window"
    bus: mvebu-mbus: do not set WIN_CTRL_SYNCBARRIER on non io-coherent platforms.
    ARM: mvebu: armada-xp-linksys-mamba: Disable internal RTC
    soc: mediatek: Add compile dependency to pmic-wrapper
    soc: mediatek: PMIC wrap: Fix register state machine handling
    soc: mediatek: PMIC wrap: Fix clock rate handling

    Linus Torvalds
     
  • …/git/tmlind/linux-omap into fixes

    Merge omap fixes for v4.1, urgent fix to avoid potential hardware damage From Tony Lindgren:

    Omap fixes for the -rc cycle, including a fix for potential hardware
    breakage on BeagleBones:

    - BeagleBones don't support RTC-only mode, it can cause hardware
    damage if system-power-controller is specified without
    ti,pmic-shutdown-controller

    - Fix a recent regression to am3517 SoCs caused by the recent clock
    move that was not noticed until now despite automated boot
    testing

    - Fix a regression for n900 touchscreen triggered by recent
    recent input changes

    - Fix compatible property for dm816x USB to avoid errors with
    USB Ethernet

    - Fix oops for omap3 when built with CONFIG_THUMB2_KERNEL

    * tag 'omap-for-v4.1/fixes-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
    ARM: dts: am335x-boneblack: disable RTC-only sleep to avoid hardware damage
    ARM: dts: AM35xx: fix system control module clocks
    ARM: dts: Fix n900 dts file to work around 4.1 touchscreen regression on n900
    ARM: dts: Fix dm816x to use right compatible flag for MUSB
    ARM: OMAP3: Fix booting with thumb2 kernel

    Kevin Hilman
     

07 Jun, 2015

1 commit

  • Pull USB and PHY driver fixes from Greg KH:
    "Here are some USB and PHY driver fixes that resolve some reported
    regressions. Also in here are some new device ids.

    All of the details are in the shortlog and these patches have been in
    linux-next with no problems"

    * tag 'usb-4.1-rc7' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/usb: (22 commits)
    USB: cp210x: add ID for HubZ dual ZigBee and Z-Wave dongle
    usb: renesas_usbhs: Don't disable the pipe if Control write status stage
    usb: renesas_usbhs: Fix fifo unclear in usbhsf_prepare_pop
    usb: gadget: f_fs: fix check in read operation
    usb: musb: fix order of conditions for assigning end point operations
    usb: gadget: f_uac1: check return code from config_ep_by_speed
    usb: gadget: ffs: fix: Always call ffs_closed() in ffs_data_clear()
    usb: gadget: g_ffs: Fix counting of missing_functions
    usb: s3c2410_udc: correct reversed pullup logic
    usb: dwc3: gadget: Fix incorrect DEPCMD and DGCMD status macros
    usb: phy: tahvo: Pass the IRQF_ONESHOT flag
    usb: phy: ab8500-usb: Pass the IRQF_ONESHOT flag
    usb: renesas_usbhs: Revise the binding document about the dma-names
    usb: host: xhci: add mutex for non-thread-safe data
    usb: make module xhci_hcd removable
    USB: serial: ftdi_sio: Add support for a Motion Tracker Development Board
    usb: gadget: f_midi: fix segfault when reading empty id
    phy: phy-rcar-gen2: Fix USBHS_UGSTS_LOCK value
    phy: omap-usb2: invoke pm_runtime_disable on error path
    phy: fix Kconfig dependencies
    ...

    Linus Torvalds
     

01 Jun, 2015

2 commits

  • Pull SCSI target fixes from Nicholas Bellinger:
    "These are mostly minor fixes, with the exception of the following that
    address fall-out from recent v4.1-rc1 changes:

    - regression fix related to the big fabric API registration changes
    and configfs_depend_item() usage, that required cherry-picking one
    of HCH's patches from for-next to address the issue for v4.1 code.

    - remaining TCM-USER -v2 related changes to enforce full CDB
    passthrough from Andy + Ilias.

    Also included is a target_core_pscsi driver fix from Andy that
    addresses a long standing issue with a Scsi_Host reference being
    leaked on PSCSI device shutdown"

    * git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending:
    iser-target: Fix error path in isert_create_pi_ctx()
    target: Use a PASSTHROUGH flag instead of transport_types
    target: Move passthrough CDB parsing into a common function
    target/user: Only support full command pass-through
    target/user: Update example code for new ABI requirements
    target/pscsi: Don't leak scsi_host if hba is VIRTUAL_HOST
    target: Fix se_tpg_tfo->tf_subsys regression + remove tf_subsystem
    target: Drop signal_pending checks after interruptible lock acquire
    target: Add missing parentheses
    target: Fix bidi command handling
    target/user: Disallow full passthrough (pass_level=0)
    ISCSI: fix minor memory leak

    Linus Torvalds
     
  • …l/git/groeck/linux-staging

    Pull hwmon fixes from Guenter Roeck:
    "Some late hwmon patches, all headed for -stable

    - fix sysfs attribute initialization in nct6775 and nct6683 drivers

    - do not attempt to auto-detect tmp435 on I2C address 0x37

    - ensure iio channel is of type IIO_VOLTAGE in ntc_thermistor driver"

    * tag 'hwmon-for-linus-v4.1-rc6' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging:
    hwmon: (nct6683) Add missing sysfs attribute initialization
    hwmon: (nct6775) Add missing sysfs attribute initialization
    hwmon: (tmp401) Do not auto-detect chip on I2C address 0x37
    hwmon: (ntc_thermistor) Ensure iio channel is of type IIO_VOLTAGE

    Linus Torvalds
     

31 May, 2015

2 commits

  • After much discussion, give up on only passing a subset of SCSI commands
    to userspace and pass them all. Based on what pscsi is doing, make sure
    to set SCF_SCSI_DATA_CDB for I/O ops, and define attributes identical to
    pscsi.

    Make hw_block_size configurable via dev param.

    Remove mention of command filtering from tcmu-design.txt.

    Signed-off-by: Andy Grover
    Reviewed-by: Ilias Tsitsimpis
    Signed-off-by: Nicholas Bellinger

    Andy Grover
     
  • We now require that the userspace handler set a bit if the command is not
    handled.

    Update calls to tcmu_hdr_get_op for v2.

    Signed-off-by: Andy Grover
    Reviewed-by: Ilias Tsitsimpis
    Signed-off-by: Nicholas Bellinger

    Andy Grover
     

30 May, 2015

2 commits


28 May, 2015

1 commit

  • Pull x86 fixes from Ingo Molnar:
    "This tree includes:

    - a fix that disables the compacted FPU XSAVE format by disabling
    XSAVES support: the fixes are too complex and the breakages
    ABI-affecting, so we want this to be quirked off in a robust way
    and backported, to make sure no broken kernel is exposed to the new
    hardware (which exposure is still very limited).

    - an MCE printk message fix

    - a documentation fix"

    * 'x86-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
    x86/fpu: Disable XSAVES* support for now
    x86/Documentation: Update the contact email for L3 cache index disable functionality
    x86/mce: Fix MCE severity messages

    Linus Torvalds
     

27 May, 2015

1 commit

  • …balbi/usb into usb-linus

    Felipe writes:

    usb: fixes for v4.1-rc5

    A few late important fixes which have been pending
    on mailing list due to my vacations.

    The important fixes are a fix for DEPCMD and DGCMD
    status bitfields on DWC3, a couple fixes for Renesas
    USB Controller, one of which prevents a broken DT
    binding from reaching v4.1-final, and an old fix for
    s3c2410-udc where pullup logic was reversed.

    Signed-off-by: Felipe Balbi <balbi@ti.com>

    Greg Kroah-Hartman
     

26 May, 2015

1 commit

  • Since the DT should describe the hardware (not the driver limitation),
    This patch revises the binding document about the dma-names to change
    simple numbering as "ch%d" instead of "tx" and "rx".

    Also this patch fixes the actual code of renesas_usbhs driver to handle
    the new dma-names.

    Signed-off-by: Yoshihiro Shimoda
    Acked-by: Mark Rutland
    Acked-by: Geert Uytterhoeven
    Signed-off-by: Felipe Balbi

    Yoshihiro Shimoda
     

23 May, 2015

2 commits

  • Pull networking fixes from David Miller:

    1) Don't leak ipvs->sysctl_tbl, from Tommi Rentala.

    2) Fix neighbour table entry leak in rocker driver, from Ying Xue.

    3) Do not emit bonding notifications for unregistered interfaces, from
    Nicolas Dichtel.

    4) Set ipv6 flow label properly when in TIME_WAIT state, from Florent
    Fourcot.

    5) Fix regression in ipv6 multicast filter test, from Henning Rogge.

    6) do_replace() in various footables netfilter modules is missing a
    check for 0 counters in the datastructure provided by the user. Fix
    from Dave Jones, and found with trinity.

    7) Fix RCU bug in packet scheduler classifier module unloads, from
    Daniel Borkmann.

    8) Avoid deadlock in tcp_get_info() by using u64_sync. From Eric
    Dumzaet.

    9) Input packet processing can race with inetdev_destroy() teardown,
    fix potential OOPS in ip_error() by explicitly testing whether the
    inetdev is still attached. From Eric W Biederman.

    10) MLDv2 parser in bridge multicast code breaks too early while
    parsing. Fix from Thadeu Lima de Souza Cascardo.

    11) Asking for settings on non-zero PHYID doesn't work because we do not
    import the command structure from the user and use the PHYID
    provided there. Fix from Arun Parameswaran.

    12) Fix UDP checksums with IPV6 RAW sockets, from Vlad Yasevich.

    13) Missing NF_TABLES depends for TPROXY etc can cause build failures,
    fix from Florian Westphal.

    14) Fix netfilter conntrack to handle RFC5961 challenge ACKs properly,
    from Jesper Dangaard Brouer.

    15) If netlink autobind retry fails, we have to reset the sockets portid
    back to zero. From Herbert Xu.

    16) VXLAN netns exit code unregisters using wrong device, from John W
    Linville.

    17) Add some USB device IDs to ath3k and btusb bluetooth drivers, from
    Dmitry Tunin and Wen-chien Jesse Sung.

    * git://git.kernel.org/pub/scm/linux/kernel/git/davem/net: (44 commits)
    bridge: fix lockdep splat
    net: core: 'ethtool' issue with querying phy settings
    bridge: fix parsing of MLDv2 reports
    ARM: zynq: DT: Use the zynq binding with macb
    net: macb: Disable half duplex gigabit on Zynq
    net: macb: Document zynq gem dt binding
    ipv4: fill in table id when replacing a route
    cdc_ncm: Fix tx_bytes statistics
    ipv4: Avoid crashing in ip_error
    tcp: fix a potential deadlock in tcp_get_info()
    net: sched: fix call_rcu() race on classifier module unloads
    net: phy: Make sure phy_start() always re-enables the phy interrupts
    ipv6: fix ECMP route replacement
    ipv6: do not delete previously existing ECMP routes if add fails
    Revert "netfilter: bridge: query conntrack about skb dnat"
    netfilter: ensure number of counters is >0 in do_replace()
    netfilter: nfnetlink_{log,queue}: Register pernet in first place
    tcp: don't over-send F-RTO probes
    tcp: only undo on partial ACKs in CA_Loss
    net/ipv6/udp: Fix ipv6 multicast socket filter regression
    ...

    Linus Torvalds
     
  • Signed-off-by: Nathan Sullivan
    Acked-by: Nicolas Ferre
    Signed-off-by: David S. Miller

    Nathan Sullivan
     

22 May, 2015

2 commits

  • Pull KVM fixes from Paolo Bonzini:
    "This includes a fix for two oopses, one on PPC and on x86.

    The rest is fixes for bugs with newer Intel processors"

    * tag 'for-linus' of git://git.kernel.org/pub/scm/virt/kvm/kvm:
    kvm/fpu: Enable eager restore kvm FPU for MPX
    Revert "KVM: x86: drop fpu_activate hook"
    kvm: fix crash in kvm_vcpu_reload_apic_access_page
    KVM: MMU: fix SMAP virtualization
    KVM: MMU: fix CR4.SMEP=1, CR0.WP=0 with shadow pages
    KVM: MMU: fix smap permission check
    KVM: PPC: Book3S HV: Fix list traversal in error case

    Linus Torvalds
     
  • Pull clk fixes from Michael Turquette:
    "The first set of clk fixes for 4.1 are all driver bugs, with the
    exception of a single locking fix in the core code.

    All driver fixes are for code that was merged recently. The Samsung
    stuff is mostly fixes around suspend/resume, the Qualcomm fixes are
    for invalid hardware configuration data and the Silicon Labs patches
    are fixes following their move away from platform_data to Device Tree"

    * tag 'clk-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/clk/linux:
    clk: si5351: Do not pass struct clk in platform_data
    clk: si5351: Mention clock-names in the binding documentation
    clk: add missing lock when call clk_core_enable in clk_set_parent
    clk: exynos5420: Restore GATE_BUS_TOP on suspend
    clk: qcom: Fix MSM8916 gfx3d_clk_src configuration
    clk: qcom: Fix MSM8916 venus divider value
    clk: exynos5433: Fix wrong PMS value of exynos5433_pll_rates
    clk: exynos5433: Fix wrong parent clock of sclk_apollo clock
    clk: exynos5433: Fix CLK_PCLK_MONOTONIC_CNT clk register assignment
    clk: exynos5433: Fix wrong offset of PCLK_MSCL_SECURE_SMMU_JPEG
    clk: Use CONFIG_ARCH_EXYNOS instead of CONFIG_ARCH_EXYNOS5433

    Linus Torvalds
     

19 May, 2015

1 commit

  • Pull MTD fixes from Brian Norris:
    "Two MTD fixes for 4.1:

    - readtest: the signal-handling code was clobbering the error codes
    we should be handling/reporting in this test, rendering it useless.
    Noticed by Coverity.

    - the common SPI NOR flash DT binding (merged for 4.1-rc1) is being
    revised, so let's change that before 4.1 is minted"

    * tag 'for-linus-20150516' of git://git.infradead.org/linux-mtd:
    Documentation: dt: mtd: replace "nor-jedec" binding with "jedec, spi-nor"
    mtd: readtest: don't clobber error reports

    Linus Torvalds
     

18 May, 2015

1 commit

  • The mailing list discuss@x86-64.org is now defunct.
    Use the lkml in its place.

    Signed-off-by: Aravind Gopalakrishnan
    Signed-off-by: Borislav Petkov
    Cc: Greg KH
    Cc: H. Peter Anvin
    Cc: Linus Torvalds
    Cc: Peter Zijlstra
    Cc: Thomas Gleixner
    Cc: linux-api@vger.kernel.org
    Cc: sboyd@codeaurora.org
    Cc: sudeep.holla@arm.com
    Link: http://lkml.kernel.org/r/1431125098-9470-1-git-send-email-Aravind.Gopalakrishnan@amd.com
    Link: http://lkml.kernel.org/r/1431936437-25286-2-git-send-email-bp@alien8.de
    [ Changed the contact email to lkml. ]
    Signed-off-by: Ingo Molnar

    Aravind Gopalakrishnan
     

17 May, 2015

1 commit

  • Pull tty/serial fixes from Greg KH:
    "Here's some TTY and serial driver fixes for reported issues.

    All of these have been in linux-next successfully"

    * tag 'tty-4.1-rc4' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty:
    pty: Fix input race when closing
    tty/n_gsm.c: fix a memory leak when gsmtty is removed
    Revert "serial/amba-pl011: Leave the TX IRQ alone when the UART is not open"
    serial: omap: Fix error handling in probe
    earlycon: Revert log warnings

    Linus Torvalds
     

16 May, 2015

1 commit

  • In commit 8ff16cf77ce3 ("Documentation: devicetree: m25p80: add "nor-jedec"
    binding"), we added a generic "nor-jedec" binding to catch all
    mostly-compatible SPI NOR flash which can be detected via the READ ID
    opcode (0x9F). This was discussed and reviewed at the time, however
    objections have come up since then as part of this discussion:

    http://lkml.kernel.org/g/20150511224646.GJ32500@ld-irv-0074

    It seems the parties involved agree that "jedec,spi-nor" does a better
    job of capturing the fact that this is SPI-specific, not just any NOR
    flash.

    This binding was only merged for v4.1-rc1, so it's still OK to change
    the naming.

    At the same time, let's move the documentation to a better name.

    Next up: stop referring to code (drivers/mtd/devices/m25p80.c) from the
    documentation.

    Signed-off-by: Brian Norris
    Cc: Marek Vasut
    Cc: Rafał Miłecki
    Cc: Rob Herring
    Cc: Pawel Moll
    Cc: Ian Campbell
    Cc: Kumar Gala
    Cc: devicetree@vger.kernel.org
    Acked-by: Stephen Warren
    Acked-by: Geert Uytterhoeven
    Acked-by: Mark Rutland

    Brian Norris
     

11 May, 2015

2 commits

  • KVM may turn a user page to a kernel page when kernel writes a readonly
    user page if CR0.WP = 1. This shadow page entry will be reused after
    SMAP is enabled so that kernel is allowed to access this user page

    Fix it by setting SMAP && !CR0.WP into shadow page's role and reset mmu
    once CR4.SMAP is updated

    Signed-off-by: Xiao Guangrong
    Cc: stable@vger.kernel.org
    Signed-off-by: Paolo Bonzini

    Xiao Guangrong
     
  • A read() from a pty master may mistakenly indicate EOF (errno == -EIO)
    after the pty slave has closed, even though input data remains to be read.
    For example,

    pty slave | input worker | pty master
    | |
    | | n_tty_read()
    pty_write() | | input avail? no
    add data | | sleep
    schedule worker --->| | .
    |---> flush_to_ldisc() | .
    pty_close() | fill read buffer | .
    wait for worker | wakeup reader --->| .
    | read buffer full? |---> input avail ? yes
    |= 4096 so the ldisc read buffer
    is empty
    3. the subsequent read() occurs before the kicked worker has processed
    more input

    However, the underlying cause of the race is that data is pipelined, while
    tty state is not; ie., data already written by the pty slave end is not
    yet visible to the pty master end, but state changes by the pty slave end
    are visible to the pty master end immediately.

    Pipeline the TTY_OTHER_CLOSED state through input worker to the reader.
    1. Introduce TTY_OTHER_DONE which is set by the input worker when
    TTY_OTHER_CLOSED is set and either the input buffers are flushed or
    input processing has completed. Readers/polls are woken when
    TTY_OTHER_DONE is set.
    2. Reader/poll checks TTY_OTHER_DONE instead of TTY_OTHER_CLOSED.
    3. A new input worker is started from pty_close() after setting
    TTY_OTHER_CLOSED, which ensures the TTY_OTHER_DONE state will be
    set if the last input worker is already finished (or just about to
    exit).

    Remove tty_flush_to_ldisc(); no in-tree callers.

    Fixes: 52bce7f8d4fc ("pty, n_tty: Simplify input processing on final close")
    Bugzilla: https://bugzilla.kernel.org/show_bug.cgi?id=96311
    BugLink: http://bugs.launchpad.net/bugs/1429756
    Cc: # 3.19+
    Reported-by: Andy Whitcroft
    Reported-by: H.J. Lu
    Signed-off-by: Peter Hurley
    Signed-off-by: Greg Kroah-Hartman

    Peter Hurley
     

10 May, 2015

1 commit

  • Pull ARM SoC fixes from Arnd Bergmann:
    "A few patches have come up since the merge window. The largest one is
    a rewrite of the PXA lubbock/mainstone IRQ handling. This was already
    broken in 2011 by a change to the GPIO code and only noticed now.

    The other changes contained here are:

    MAINTAINERS file updates:

    - Ray Jui and Scott Branden are now co-maintainers for some of the
    mach-bcm chips, while Christian Daudt and Marc Carino have stepped
    down.

    - Andrew Victor is no longer maintaining at91. Instead, Alexandre
    Belloni now becomes an official maintainer, after having done a
    bulk of the work for a while.

    - Baruch Siach, who added the mach-digicolor platform in 4.1 is now
    listed as maintainer

    - The git URL for mach-socfpga has changed

    Bug fixes:

    - Three bug fixes for new rockchip rk3288 code

    - A regression fix to make SD card support work on certain ux500
    boards

    - multiple smaller dts fixes for imx, omap, mvebu, and shmobile

    - a regression fiix for omap3 power consumption

    - a fix for regression in the ARM CCI bus driver

    Configuration changes:

    - more imx platforms are now enabled in multi_v7_defconfig"

    * tag 'fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc: (39 commits)
    MAINTAINERS: add Conexant Digicolor machines entry
    MAINTAINERS: socfpga: update the git repo for SoCFPGA
    ARM: multi_v7_defconfig: Select more FSL SoCs
    MAINTAINERS: replace an AT91 maintainer
    drivers: CCI: fix used_mask init in validate_group()
    bus: omap_l3_noc: Fix master id address decoding for OMAP5
    bus: omap_l3_noc: Fix offset for DRA7 CLK1_HOST_CLK1_2 instance
    ARM: dts: dra7: Fix efuse register size for ABB
    ARM: dts: am57xx-beagle-x15: Switch GPIO fan number
    ARM: dts: am57xx-beagle-x15: Switch UART mux pins
    ARM: dts: am437x-sk: reduce col-scan-delay-us
    ARM: dts: am437x-sk: fix for new newhaven display module revision
    ARM: dts: am57xx-beagle-x15: Fix RTC aliases
    ARM: dts: am57xx-beagle-x15: Fix IRQ type for mcp7941x
    ARM: dts: omap3: Add #iommu-cells to isp and iva iommu
    ARM: omap2plus_defconfig: Enable EXTCON_USB_GPIO
    ARM: dts: OMAP3-N900: Add microphone bias voltages
    ARM: OMAP2+: Fix omap off idle power consumption creeping up
    MAINTAINERS: Update brcmstb entry
    MAINTAINERS: Remove Christian Daudt for mach-bcm
    ...

    Linus Torvalds
     

09 May, 2015

1 commit


08 May, 2015

4 commits

  • Pull power management and ACPI fixes from Rafael Wysocki:
    "These include three regression fixes (PCI resources management,
    ACPI/PNP device enumeration, ACPI SBS on MacBook) and two ACPI
    documentation fixes related to GPIO.

    Specifics:

    - Fix for a PCI resources management regression introduced during the
    4.0 cycle and related to the handling of ACPI resources'
    Producer/Consumer flags that turn out to be useless (Jiang Liu)

    - Fix for a MacBook regression related to the Smart Battery Subsystem
    (SBS) driver causing various problems (stalls on boot, failure to
    detect or report battery) to happen and introduced during the 3.18
    cycle (Chris Bainbridge)

    - Fix for an ACPI/PNP device enumeration regression introduced during
    the 3.16 cycle caused by failing to include two PNP device IDs into
    the list of IDs that PNP device objects need to be created for
    (Witold Szczeponik)

    - Fixes for two minor mistakes in the ACPI GPIO properties
    documentation (Antonio Ospite, Rafael J Wysocki)"

    * tag 'pm+acpi-4.1-rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/rafael/linux-pm:
    ACPI / PNP: add two IDs to list for PNPACPI device enumeration
    ACPI / documentation: Fix ambiguity in the GPIO properties document
    ACPI / documentation: fix a sentence about GPIO resources
    ACPI / SBS: Add 5 us delay to fix SBS hangs on MacBook
    x86/PCI/ACPI: Make all resources except [io 0xcf8-0xcff] available on PCI bus

    Linus Torvalds
     
  • * acpi-resources:
    x86/PCI/ACPI: Make all resources except [io 0xcf8-0xcff] available on PCI bus

    * acpi-battery:
    ACPI / SBS: Add 5 us delay to fix SBS hangs on MacBook

    * acpi-doc:
    ACPI / documentation: Fix ambiguity in the GPIO properties document
    ACPI / documentation: fix a sentence about GPIO resources

    * acpi-pnp:
    ACPI / PNP: add two IDs to list for PNPACPI device enumeration

    Rafael J. Wysocki
     
  • …/git/tmlind/linux-omap into fixes

    Merge "omap fixes against v4.1-rc1" from Tony Lindgren:

    Fixes for omaps, mostly a fix for power power consumption
    creeping up during idle, and two l3-noc device fixes:

    - Fix power consumption creeping up with I2C4 staying on
    - Fix n900 microphone bias voltages
    - Fix dra7 l3-noc for host clock
    - Fix omap5 l3-noc id address decoding

    The rest are all just minor dts fixes:

    - Fix changed EXTCON_USB_GPIO_USB in defconfig
    - Fix missing isp and iva #iommu-cells property
    - Various beagle x15 dts fixes for pre-production changes
    - Fix am437x-sk display dts entries

    * tag 'omap-for-v4.1/fixes-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/tmlind/linux-omap:
    bus: omap_l3_noc: Fix master id address decoding for OMAP5
    bus: omap_l3_noc: Fix offset for DRA7 CLK1_HOST_CLK1_2 instance
    ARM: dts: dra7: Fix efuse register size for ABB
    ARM: dts: am57xx-beagle-x15: Switch GPIO fan number
    ARM: dts: am57xx-beagle-x15: Switch UART mux pins
    ARM: dts: am437x-sk: reduce col-scan-delay-us
    ARM: dts: am437x-sk: fix for new newhaven display module revision
    ARM: dts: am57xx-beagle-x15: Fix RTC aliases
    ARM: dts: am57xx-beagle-x15: Fix IRQ type for mcp7941x
    ARM: dts: omap3: Add #iommu-cells to isp and iva iommu
    ARM: omap2plus_defconfig: Enable EXTCON_USB_GPIO
    ARM: dts: OMAP3-N900: Add microphone bias voltages
    ARM: OMAP2+: Fix omap off idle power consumption creeping up

    Arnd Bergmann
     
  • Pull "The i.MX fixes for 4.1" from Shawn Guo:

    - A couple of imx23-olinuxino device tree fixes regarding to LED GPIO
    polarity and USB dr_mode setting
    - One i.MX28 device tree fix on AUART4 TX-DMA interrupt name
    - Add missing pwm-cells to PWM4 for i.MX25 device tree
    - Fix imx6q-phytec device tree to get correct USB VBUS control
    - Drop invalid pinctrl-assert-gpios property from imx6qdl-sabreauto
    device tree, which was sneaked in from vendor device tree
    - One fix on Wolfram's broken email address

    * tag 'imx-fixes-4.1' of git://git.kernel.org/pub/scm/linux/kernel/git/shawnguo/linux:
    ARM: dts: imx6qdl-sabreauto: remove pinctrl-assert-gpios
    ARM: dts: imx28: Fix AUART4 TX-DMA interrupt name
    ARM: dts: imx25: Add #pwm-cells to pwm4
    ARM: dts: imx6: phyFLEX: USB VBUS control is active-high
    ARM: mach-imx: devices: platform-sdhci-esdhc-imx: fix broken email address
    ARM: dts: imx23-olinuxino: Fix dr_mode of usb0
    ARM: dts: imx23-olinuxino: Fix polarity of LED GPIO

    Arnd Bergmann