Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: Bob-FU/linux-bananapi
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: bananapi-3.4
Choose a base ref
...
head repository: nisenbeck/linux-bananapi
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: bananapi-3.4
Choose a head ref
Checking mergeability… Don’t worry, you can still create the pull request.
  • 8 commits
  • 278 files changed
  • 5 contributors

Commits on May 13, 2016

  1. merge upstream 3.4.112

    nisenbeck committed May 13, 2016
    Configuration menu
    Copy the full SHA
    2b6e7b2 View commit details
    Browse the repository at this point in the history

Commits on Jul 14, 2016

  1. Configuration menu
    Copy the full SHA
    5c0dfc7 View commit details
    Browse the repository at this point in the history

Commits on Sep 26, 2016

  1. update fbtft to latest git version

    Stricted committed Sep 26, 2016
    Configuration menu
    Copy the full SHA
    41d771c View commit details
    Browse the repository at this point in the history

Commits on Oct 22, 2016

  1. mm, gup: close FOLL MAP_PRIVATE race

    commit 19be0ea upstream.
    
    faultin_page drops FOLL_WRITE after the page fault handler did the CoW
    and then we retry follow_page_mask to get our CoWed page. This is racy,
    however because the page might have been unmapped by that time and so
    we would have to do a page fault again, this time without CoW. This
    would cause the page cache corruption for FOLL_FORCE on MAP_PRIVATE
    read only mappings with obvious consequences.
    
    This is an ancient bug that was actually already fixed once by Linus
    eleven years ago in commit 4ceb5db ("Fix get_user_pages() race
    for write access") but that was then undone due to problems on s390
    by commit f33ea7f ("fix get_user_pages bug") because s390 didn't
    have proper dirty pte tracking until abf09be ("s390/mm: implement
    software dirty bits"). This wasn't a problem at the time as pointed out
    by Hugh Dickins because madvise relied on mmap_sem for write up until
    0a27a14 ("mm: madvise avoid exclusive mmap_sem") but since then we
    can race with madvise which can unmap the fresh COWed page or with KSM
    and corrupt the content of the shared page.
    
    This patch is based on the Linus' approach to not clear FOLL_WRITE after
    the CoW page fault (aka VM_FAULT_WRITE) but instead introduces FOLL_COW
    to note this fact. The flag is then rechecked during follow_pfn_pte to
    enforce the page fault again if we do not see the CoWed page. Linus was
    suggesting to check pte_dirty again as s390 is OK now. But that would
    make backporting to some old kernels harder. So instead let's just make
    sure that vm_normal_page sees a pure anonymous page.
    
    This would guarantee we are seeing a real CoW page. Introduce
    can_follow_write_pte which checks both pte_write and falls back to
    PageAnon on forced write faults which passed CoW already. Thanks to Hugh
    to point out that a special care has to be taken for KSM pages because
    our COWed page might have been merged with a KSM one and keep its
    PageAnon flag.
    
    Fixes: 0a27a14 ("mm: madvise avoid exclusive mmap_sem")
    Reported-by: Phil "not Paul" Oester <[email protected]>
    Disclosed-by: Andy Lutomirski <[email protected]>
    Signed-off-by: Linus Torvalds <[email protected]>
    Signed-off-by: Michal Hocko <[email protected]>
    [bwh: Backported to 3.2:
     - Adjust filename, context, indentation
     - The 'no_page' exit path in follow_page() is different, so open-code the
       cleanup
     - Delete a now-unused label]
    Signed-off-by: Ben Hutchings <[email protected]>
    Signed-off-by: Nico Isenbeck <[email protected]>
    Michal Hocko authored and nisenbeck committed Oct 22, 2016
    Configuration menu
    Copy the full SHA
    e535609 View commit details
    Browse the repository at this point in the history

Commits on Nov 25, 2016

  1. Merge pull request nisenbeck#7 from Stricted/update-fbtft

    update fbtft to latest git version
    nisenbeck authored Nov 25, 2016
    Configuration menu
    Copy the full SHA
    ee279e2 View commit details
    Browse the repository at this point in the history
  2. Revert "mm, gup: close FOLL MAP_PRIVATE race"

    This reverts commit e535609.
    nisenbeck committed Nov 25, 2016
    Configuration menu
    Copy the full SHA
    6c34cfc View commit details
    Browse the repository at this point in the history
  3. merge upstream 3.4.113

    nisenbeck committed Nov 25, 2016
    Configuration menu
    Copy the full SHA
    57e0e11 View commit details
    Browse the repository at this point in the history

Commits on May 6, 2017

  1. dccp: fix freeing skb too early for IPV6_RECVPKTINFO

    In the current DCCP implementation an skb for a DCCP_PKT_REQUEST packet
    is forcibly freed via __kfree_skb in dccp_rcv_state_process if
    dccp_v6_conn_request successfully returns.
    
    However, if IPV6_RECVPKTINFO is set on a socket, the address of the skb
    is saved to ireq->pktopts and the ref count for skb is incremented in
    dccp_v6_conn_request, so skb is still in use. Nevertheless, it gets freed
    in dccp_rcv_state_process.
    
    Fix by calling consume_skb instead of doing goto discard and therefore
    calling __kfree_skb.
    
    Similar fixes for TCP:
    
    fb7e239 [TCP]: skb is unexpectedly freed.
    0aea76d tcp: SYN packets are now
    simply consumed
    
    Signed-off-by: Andrey Konovalov <[email protected]>
    Acked-by: Eric Dumazet <[email protected]>
    Signed-off-by: David S. Miller <[email protected]>
    Signed-off-by: Nico Isenbeck <[email protected]>
    xairy authored and nisenbeck committed May 6, 2017
    Configuration menu
    Copy the full SHA
    876763c View commit details
    Browse the repository at this point in the history
Loading