{"push_id":1374785269,"size":11,"distinct_size":11,"ref":"refs/heads/mptcp_v0.91","head":"3c6a606349b2b366d7cca4b1421697b0c69f59f2","before":"3b9e9b2d701a36963d01adef5cdb0dc20bb11058","commits":[{"sha":"486eeb6d6755a573829e6c5438eb7aae18891bb1","author":{"name":"Christopher S. Hall","email":"cdd5969e578ddbbecbd0d86f6386fccf024decf4@intel.com"},"message":"time: Add cycles to nanoseconds translation\n\n[ Upstream commit 6bd58f09e1d8cc6c50a824c00bf0d617919986a1 ]\n\nThe timekeeping code does not currently provide a way to translate\nexternally provided clocksource cycles to system time. The cycle count\nis always provided by the result clocksource read() method internal to\nthe timekeeping code. The added function timekeeping_cycles_to_ns()\ncalculated a nanosecond value from a cycle count that can be added to\ntk_read_base.base value yielding the current system time. This allows\nclocksource cycle values external to the timekeeping code to provide a\ncycle count that can be transformed to system time.\n\nCc: Prarit Bhargava <prarit@redhat.com>\nCc: Richard Cochran <richardcochran@gmail.com>\nCc: Thomas Gleixner <tglx@linutronix.de>\nCc: Ingo Molnar <mingo@kernel.org>\nCc: Andy Lutomirski <luto@amacapital.net>\nCc: kevin.b.stanton@intel.com\nCc: kevin.j.clarke@intel.com\nCc: hpa@zytor.com\nCc: jeffrey.t.kirsher@intel.com\nCc: netdev@vger.kernel.org\nReviewed-by: Thomas Gleixner <tglx@linutronix.de>\nSigned-off-by: Christopher S. Hall <christopher.s.hall@intel.com>\nSigned-off-by: John Stultz <john.stultz@linaro.org>\nSigned-off-by: Sasha Levin <alexander.levin@verizon.com>","distinct":true,"url":"https://api.github.com/repos/zorun/mptcp/commits/486eeb6d6755a573829e6c5438eb7aae18891bb1"},{"sha":"4edf04a3a307195be345f8189e37501ac247f68b","author":{"name":"John Stultz","email":"43a1884c0f1dca3e1332089eeb4ce74424519f3b@linaro.org"},"message":"timekeeping: Fix __ktime_get_fast_ns() regression\n\n[ Upstream commit 58bfea9532552d422bde7afa207e1a0f08dffa7d ]\n\nIn commit 27727df240c7 (\"Avoid taking lock in NMI path with\nCONFIG_DEBUG_TIMEKEEPING\"), I changed the logic to open-code\nthe timekeeping_get_ns() function, but I forgot to include\nthe unit conversion from cycles to nanoseconds, breaking the\nfunction's output, which impacts users like perf.\n\nThis results in bogus perf timestamps like:\n swapper     0 [000]   253.427536:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]   254.426573:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]   254.426687:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]   254.426800:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]   254.426905:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]   254.427022:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]   254.427127:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]   254.427239:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]   254.427346:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]   254.427463:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]   255.426572:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n\nInstead of more reasonable expected timestamps like:\n swapper     0 [000]    39.953768:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]    40.064839:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]    40.175956:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]    40.287103:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]    40.398217:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]    40.509324:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]    40.620437:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]    40.731546:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]    40.842654:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]    40.953772:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n swapper     0 [000]    41.064881:  111111111 cpu-clock:  ffffffff810a0de6 native_safe_halt+0x6 ([kernel.kallsyms])\n\nAdd the proper use of timekeeping_delta_to_ns() to convert\nthe cycle delta to nanoseconds as needed.\n\nThanks to Brendan and Alexei for finding this quickly after\nthe v4.8 release. Unfortunately the problematic commit has\nlanded in some -stable trees so they'll need this fix as\nwell.\n\nMany apologies for this mistake. I'll be looking to add a\nperf-clock sanity test to the kselftest timers tests soon.\n\nFixes: 27727df240c7 \"timekeeping: Avoid taking lock in NMI path with CONFIG_DEBUG_TIMEKEEPING\"\nReported-by: Brendan Gregg <bgregg@netflix.com>\nReported-by: Alexei Starovoitov <alexei.starovoitov@gmail.com>\nTested-and-reviewed-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>\nSigned-off-by: John Stultz <john.stultz@linaro.org>\nCc: Peter Zijlstra <peterz@infradead.org>\nCc: stable <stable@vger.kernel.org>\nCc: Steven Rostedt <rostedt@goodmis.org>\nLink: http://lkml.kernel.org/r/1475636148-26539-1-git-send-email-john.stultz@linaro.org\nSigned-off-by: Thomas Gleixner <tglx@linutronix.de>\nSigned-off-by: Sasha Levin <alexander.levin@verizon.com>","distinct":true,"url":"https://api.github.com/repos/zorun/mptcp/commits/4edf04a3a307195be345f8189e37501ac247f68b"},{"sha":"c865f98df72112a3997b219bf711bc46c1e90706","author":{"name":"Linus Torvalds","email":"ead7104581934751970e9decb2db5deb20a9e407@linux-foundation.org"},"message":"mm: remove gup_flags FOLL_WRITE games from __get_user_pages()\n\n[ Upstream commit 19be0eaffa3ac7d8eb6784ad9bdbc7d67ed8e619 ]\n\nThis is an ancient bug that was actually attempted to be fixed once\n(badly) by me eleven years ago in commit 4ceb5db9757a (\"Fix\nget_user_pages() race for write access\") but that was then undone due to\nproblems on s390 by commit f33ea7f404e5 (\"fix get_user_pages bug\").\n\nIn the meantime, the s390 situation has long been fixed, and we can now\nfix it by checking the pte_dirty() bit properly (and do it better).  The\ns390 dirty bit was implemented in abf09bed3cce (\"s390/mm: implement\nsoftware dirty bits\") which made it into v3.9.  Earlier kernels will\nhave to look at the page state itself.\n\nAlso, the VM has become more scalable, and what used a purely\ntheoretical race back then has become easier to trigger.\n\nTo fix it, we introduce a new internal FOLL_COW flag to mark the \"yes,\nwe already did a COW\" rather than play racy games with FOLL_WRITE that\nis very fundamental, and then use the pte dirty flag to validate that\nthe FOLL_COW flag is still valid.\n\nReported-and-tested-by: Phil \"not Paul\" Oester <kernel@linuxace.com>\nAcked-by: Hugh Dickins <hughd@google.com>\nReviewed-by: Michal Hocko <mhocko@suse.com>\nCc: Andy Lutomirski <luto@kernel.org>\nCc: Kees Cook <keescook@chromium.org>\nCc: Oleg Nesterov <oleg@redhat.com>\nCc: Willy Tarreau <w@1wt.eu>\nCc: Nick Piggin <npiggin@gmail.com>\nCc: Greg Thelen <gthelen@google.com>\nCc: stable@vger.kernel.org\nSigned-off-by: Linus Torvalds <torvalds@linux-foundation.org>\nSigned-off-by: Sasha Levin <alexander.levin@verizon.com>","distinct":true,"url":"https://api.github.com/repos/zorun/mptcp/commits/c865f98df72112a3997b219bf711bc46c1e90706"},{"sha":"3b244a6e53dc33f6701bfde8601d7677c0c6e9e8","author":{"name":"Mathias Nyman","email":"6f76a2d91b00c1a813d5588fd87cc784fe96486e@linux.intel.com"},"message":"xhci: fix usb2 resume timing and races.\n\n[ Upstream commit f69115fdbc1ac0718e7d19ad3caa3da2ecfe1c96 ]\n\nAccording to USB 2 specs ports need to signal resume for at least 20ms,\nin practice even longer, before moving to U0 state.\nBoth host and devices can initiate resume.\n\nOn device initiated resume, a port status interrupt with the port in resume\nstate in issued. The interrupt handler tags a resume_done[port]\ntimestamp with current time + USB_RESUME_TIMEOUT, and kick roothub timer.\nRoot hub timer requests for port status, finds the port in resume state,\nchecks if resume_done[port] timestamp passed, and set port to U0 state.\n\nOn host initiated resume, current code sets the port to resume state,\nsleep 20ms, and finally sets the port to U0 state. This should also\nbe changed to work in a similar way as the device initiated resume, with\ntimestamp tagging, but that is not yet tested and will be a separate\nfix later.\n\nThere are a few issues with this approach\n\n1. A host initiated resume will also generate a resume event. The event\n   handler will find the port in resume state, believe it's a device\n   initiated resume, and act accordingly.\n\n2. A port status request might cut the resume signalling short if a\n   get_port_status request is handled during the host resume signalling.\n   The port will be found in resume state. The timestamp is not set leading\n   to time_after_eq(jiffies, timestamp) returning true, as timestamp = 0.\n   get_port_status will proceed with moving the port to U0.\n\n3. If an error, or anything else happens to the port during device\n   initiated resume signalling it will leave all the device resume\n   parameters hanging uncleared, preventing further suspend, returning\n   -EBUSY, and cause the pm thread to busyloop trying to enter suspend.\n\nFix this by using the existing resuming_ports bitfield to indicate that\nresume signalling timing is taken care of.\nCheck if the resume_done[port] is set before using it for timestamp\ncomparison, and also clear out any resume signalling related variables\nif port is not in U0 or Resume state\n\nThis issue was discovered when a PM thread busylooped, trying to runtime\nsuspend the xhci USB 2 roothub on a Dell XPS\n\nCc: stable <stable@vger.kernel.org>\nReported-by: Daniel J Blueman <daniel@quora.org>\nTested-by: Daniel J Blueman <daniel@quora.org>\nSigned-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>\nSigned-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>\nSigned-off-by: Sasha Levin <alexander.levin@verizon.com>","distinct":true,"url":"https://api.github.com/repos/zorun/mptcp/commits/3b244a6e53dc33f6701bfde8601d7677c0c6e9e8"},{"sha":"9ca365c0c8bdd8552ec064f0e696600cf7ea66dd","author":{"name":"Sasha Levin","email":"21b3700b83417709f72331cfb49b49e6145a3cad@verizon.com"},"message":"Linux 4.1.35\n\nSigned-off-by: Sasha Levin <alexander.levin@verizon.com>","distinct":true,"url":"https://api.github.com/repos/zorun/mptcp/commits/9ca365c0c8bdd8552ec064f0e696600cf7ea66dd"},{"sha":"7ffdc0c37b3d0dcdd3032404eb1b933ecf35d64f","author":{"name":"Christoph Paasch","email":"32066835e2725d6bd5e72ee0785ead46454a0d9f@apple.com"},"message":"mptcp: Cleanup - Rename sk to meta_sk in mptcp_time_wait\n\nmptcp_time_wait is only called for meta-sockets. We should have\nconsistent naming in this case.\n\nSigned-off-by: Christoph Paasch <cpaasch@apple.com>\nSigned-off-by: Matthieu Baerts <matthieu.baerts@tessares.net>\n(cherry picked from commit 7fef208a4b9429fef6717c498500d74ecebc4001)\nSigned-off-by: Matthieu Baerts <matthieu.baerts@tessares.net>","distinct":true,"url":"https://api.github.com/repos/zorun/mptcp/commits/7ffdc0c37b3d0dcdd3032404eb1b933ecf35d64f"},{"sha":"0248ed18d2babe557ff0a2783c84021c736ac147","author":{"name":"Christoph Paasch","email":"32066835e2725d6bd5e72ee0785ead46454a0d9f@apple.com"},"message":"mptcp: Call mptcp_fin, even if we are already a \"time-wait\"-socket\n\nWe may be in FIN_WAIT_2 while being marked as a time-wait-socket. In\nthis case, we should still acknowledge the DATA_FIN. Otherwise the other\nend keeps on retransmitting indefinitely.\n\nSo, we now do call mptcp_fin if in_time_wait is set. In that case, we\nhave to treat the meta_sk as a time-wait socket and thus not modify its\nstate. We just go through the state-machine in mptcp_fin to send an ACK\nand set mptw_state (as well as the subflow's mptw->rcv_nxt)\nappropriately.\n\nFixes: Zero-day bug\nSigned-off-by: Christoph Paasch <cpaasch@apple.com>\nSigned-off-by: Matthieu Baerts <matthieu.baerts@tessares.net>\n(cherry picked from commit 7db50e52051ead55697f06f0c709e57468382d1e)\nSigned-off-by: Matthieu Baerts <matthieu.baerts@tessares.net>","distinct":true,"url":"https://api.github.com/repos/zorun/mptcp/commits/0248ed18d2babe557ff0a2783c84021c736ac147"},{"sha":"122a0efe4d2eac97bbc794fc9be398ababb83e10","author":{"name":"Christoph Paasch","email":"32066835e2725d6bd5e72ee0785ead46454a0d9f@apple.com"},"message":"mptcp: Parse TCP-options in time-wait-state always if it was an MPTCP-connection\n\ntcp_timewait_state_process only parses the TCP options if timestamps are\nenabled. However, if it is an MPTCP-socket we also have to parse it to\nfind possible DATA_FINs.\n\nSo, check for mptcp_tw to parse this correctly.\n\nFixes: Zero-day Bug\nSigned-off-by: Christoph Paasch <cpaasch@apple.com>\nSigned-off-by: Matthieu Baerts <matthieu.baerts@tessares.net>\n(cherry picked from commit 9120763dd2b3ca8ddab13bb9112bffc7341c3306)\nSigned-off-by: Matthieu Baerts <matthieu.baerts@tessares.net>","distinct":true,"url":"https://api.github.com/repos/zorun/mptcp/commits/122a0efe4d2eac97bbc794fc9be398ababb83e10"},{"sha":"44ae4f949d384a6b03836de7f6ed3fe5968ea374","author":{"name":"Baptiste Jonglez","email":"82aa651db30bdad58bbc6cb0b15504c97e23e6c2@imag.fr"},"message":"Merge tag 'v4.1.34' into mptcp_v0.91\n\nLinux 4.1.34","distinct":true,"url":"https://api.github.com/repos/zorun/mptcp/commits/44ae4f949d384a6b03836de7f6ed3fe5968ea374"},{"sha":"214e17c446d98e238c3bc8a3177990eae6a7059b","author":{"name":"Christoph Paasch","email":"32066835e2725d6bd5e72ee0785ead46454a0d9f@apple.com"},"message":"mptcp: Stable Release v0.91.1\n\nSigned-off-by: Christoph Paasch <cpaasch@apple.com>","distinct":true,"url":"https://api.github.com/repos/zorun/mptcp/commits/214e17c446d98e238c3bc8a3177990eae6a7059b"},{"sha":"3c6a606349b2b366d7cca4b1421697b0c69f59f2","author":{"name":"Baptiste Jonglez","email":"5bf00c93c9250d44d769b81890fa6584403ae7e0@bitsofnetworks.org"},"message":"Merge tag 'v4.1.35' into mptcp_v0.91\n\nLinux 4.1.35","distinct":true,"url":"https://api.github.com/repos/zorun/mptcp/commits/3c6a606349b2b366d7cca4b1421697b0c69f59f2"}]}
{"actor":{"display_login":"zorun"}}