New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add support for AR5BBU22 [0489:e03c] #17
Conversation
|
I don't do github pull requests. github throws away all the relevant information, like having even a Git comes with a nice pull-request generation module, but github I've told github people about my concerns, they didn't think they On Fri, May 11, 2012 at 4:27 AM, Roman
|
|
How do you feel about merging in things that may include commits downstream that have been pull requested with github? Seems hard to stop that. |
|
Somebody please look at the diff. Thats a simple 3 line code addition. I agree to you @torvalds but you could have excused this time :) |
|
By the way, its quite funny that github is sending instructions to @torvalds on using git. |
|
On Fri, May 11, 2012 at 1:03 PM, orblivion
Read my email. I have no problem with people using github as a hosting site. But in order for me to pull from github, you need to (a) make a real pull request, not the braindamaged crap that github (b) since github identities are random, I expect the pull request to I also refuse to pull commits that have been made with the github web
github could make it easy to write good commit messages and enforce Maybe some of this has changed, I haven't checked lately. But in I'm writing these explanations in the (probably vain) hope that people And the fact that other projects apparently have so low expectations |
|
Btw, Joseph, you're a quality example of why I detest the github The fact that I have higher standards then makes people like you make You're a moron. |
|
@torvalds The GitHub commit UI provides a text area for commit messages. This supports new lines and makes it easy to do nicely formatted commit messages :) |
|
@skalnik would be nice if it had an 80-character line to help format things nicely. |
|
Every time another Pull Request fiasco happens on one of Linus's repos it makes me sad, especially because I want someone whose work I greatly respect, to have a good experience on GitHub - instead he gets dozens of troll comments. An OS kernel very rightfully demands a very disciplined approach to development that is in many ways not compatible with the goals of GitHub, which is to get as many people of all skill levels involved in Free / Open Source Software. We can certainly make improvements though, and I appreciate that Linus has taken some time to detail exactly why he doesn't use PRs, even if it's a bit harsh. |
I think this is only because people who are new to Git are using GitHub and not understanding about Git-style committing. Remember, a lot of these newbies are just out of the gate from using SVN for years. I bet a lot of them don't even realize that I have to agree with you there. Commit message viewing on Github sucks and I hope they change it soon. |
|
On Fri, May 11, 2012 at 1:29 PM, Mike Skalnik
No it doesn't. What it supports is writing long lines that you have not a f*cking In other words, it makes it very hard indeed to do "nicely formatted So the github commit UI should have
It didn't do any of those last time I checked. |
|
I always thought of the title of a pull request as the one-liner ... |
|
Newbie question I know, but can someone point me to this "nice pull-request generation module" Linus mentions? My google fu, documentation fu, and command-line-help fu all failed. |
|
On Fri, May 11, 2012 at 1:40 PM, Tom Scott
The thing is, even if you do understand about git-style committing, The best way to do it is literally to open up another text editor Yes, commit messages should have proper word-wrap, with empty lines in And yes, that would almost require some kind of "markup" format with Right now, github simply seems to default to "broken horrible And I think it should default to "nice readable messages" with some |
|
@jrep: I believe he's referring to git-request-pull. |
|
I'm not sure I understand why the commit message itself should be hard word-wrapped. Naively, it seems like that should be a display property of the editor used to write the commit message or the tool used to display the commit message. |
|
On Fri, May 11, 2012 at 1:48 PM, Dominik Dabrowski
Umm. I think I've been able to reach my goals on the internet better The fact that I'm very clear about my opinions is probably part of it. If people get offended by accurate portrayals of the current state of I hate that whole "victim philosophy". The truth shouldn't be sugarcoated. |
|
While I do have great respect for you @torvalds and your work, and it's totally valid for the repository of Linux to have rather rigorous standards, have you considered the possibility there could be a lot of GitHub users who don't really need nor care about any of those "features" you try to portray as objectively superior? |
|
On Fri, May 11, 2012 at 1:49 PM, Daniel Nugent
No it shouldn't. Word-wrapping is a property of the text. And the tool you use to Some things should not be word-wrapped. They may be some kind of The tool displaying the thing can't know. The person writing the Sure, the alternative would be to have commit messages be some (And the rule is not 80 characters, because you do want to allow the Anyway, you are obviously free to do your commit messages any way you And quite frankly, anybody who thinks they have better rules had So I would suggest taking the cue for good log messages from projects |
|
If you add .patch onto this URL you'll get a git-am style patch. (Github is very silly for not exposing this in the interface, and for not even really mentioning this feature.) I agree with you on the messages, I wish the text areas were at least monospaced. |
|
On Fri, May 11, 2012 at 2:01 PM, Prathan Thananart
Sure. And when those people with lower standards try to get their commits Agreed? Btw, the commit message rules we use in the kernel really are |
|
On Fri, May 11, 2012 at 2:03 PM, Mahmut Bulut
.. because I think github does some things very well. So sure, you may think I hate github. I don't. I hate very specific But other parts are done really really well. I think github does a stellar job at the actual hosting part. I That's wonderful. I think github is absolutely lovely in many respects. And that then makes me really annoyed at the places where I think |
Just curious - why is it that the tool used to visualize things cannot know how to wrap text it displays? And if it is the case, isn't that a problem with the viewer itself, rather than a reason to hard wrap? |
|
Commit messages must be limited to 140 characters, like tweets. Right in git's core. (See what I did there? What's “pure garbage” for you is just perfect for a lot of people.) |
|
@torvalds Thank you for your rational and good opinion. I appreciate you. |
|
Do you guys not understand that this is Linus' blessed repository and he can accept and reject whomever and whichever request he likes? He has specific and pertinent rules when it comes to merging that he's learned over 20 years of maintaining the Linux kernel. He developed git - in case you forgot, he was the initial developer - with features specifically for gpg signoffs, shortlogs, etc. - things he and other intelligent computer scientists find useful for maintaining repositories. I've maintained small projects with three developers plus myself and as soon as you become loose with your merging criteria, the entire repository goes to hell. If he wants gpg signoffs, then he'll get gpg signoffs. Try maintaining 20 millions lines of code and merges requests from 2,000 developers, and then you can give Linus advise. |
|
I think @torvalds is a pretty cool guy. eh scolds githubs and doesnt afraid of anything. |
"GitHub is the best place to share code with friends, co-workers, Roman, in the future, you should follow the kernel's guide for FWIW, Reviewed-by: Corbin Simpson MostAwesomeDude@gmail.com, but (As an example of broken UI, while writing this message, I split my |
Original-Subject: [ARCHEOLOGY] Add Radxa ROCK Pi 4C Plus (#4129) > X-Git-Archeology: > recovered message: > * Add Rockpi 4C+ > X-Git-Archeology: > recovered message: > * add newer patches: > X-Git-Archeology: > recovered message: > - apply patches from RadxaNaoki <noaki@radxa.com> > X-Git-Archeology: > recovered message: > - ref 5652d6f9c2a4e2c50ac1040c0388859381b0616f: arm64: dts: rockchip: add gmac for ROCK 4C+ (torvalds#17) > X-Git-Archeology: > recovered message: > - apply latest patches from Marcone <marco.nelissen@gmail.com> > X-Git-Archeology: > recovered message: > - ref e39da181b099a86f5440ed1c08fc699d4a65aed7: arm64: dts: rockchip: Make Rock Pi 4C+ ethernet actually work > X-Git-Archeology: > recovered message: > - ref 8c519612eeb852268371b3c596eec4622460e5bf: arm64: dts: rockchip: add Rock Pi 4C+ LEDs > X-Git-Archeology: > recovered message: > - ref 726441afe687ea6059bac37f145ff204b75430f7: arm64: dts: rockchip: enable Rock Pi 4C+ wifi > X-Git-Archeology: > recovered message: > - ref caad7bef3b5558e2598480c0a0089e2ac3cedcdd: arm64: dts: rockchip: enable Rock Pi 4C+ nvme > X-Git-Archeology: > recovered message: > - ref 6cdc3215d1691bcd2a407a30e88efa0cec179eb2: arm64: dts: rockchip: enable Rock Pi 4C+ OTG > X-Git-Archeology: > recovered message: > * default top USB3 port to host mode > X-Git-Archeology: > recovered message: > * get 2nd HDMI port to work at least. :) > X-Git-Archeology: > recovered message: > * revert OTG USB3.1 port back to otg mode > X-Git-Archeology: > recovered message: > * [rockpi4c+] update board def. add usb host overlay. > X-Git-Archeology: > recovered message: > * remove redundant HDMI clocks and voltages > X-Git-Archeology: > recovered message: > * enable test builds for Rock PI 4 C+ > X-Git-Archeology: > recovered message: > * [rockpi4c+] add USB host overlay > X-Git-Archeology: > recovered message: > Co-authored-by: Joe Khoobyar <fourheads@gmail.com> > X-Git-Archeology: - Revision 9780da320eeb45832ddb680959646fcc5a6a38c3: armbian/build@9780da3 > X-Git-Archeology: Date: Wed, 02 Nov 2022 06:58:31 +0100 > X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com> > X-Git-Archeology: Subject: Add Radxa ROCK Pi 4C Plus (#4129) > X-Git-Archeology: > X-Git-Archeology: - Revision 92f1a22d76b987afa7ba555d5b509adc51d689e7: armbian/build@92f1a22 > X-Git-Archeology: Date: Fri, 16 Dec 2022 13:38:13 +0100 > X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com> > X-Git-Archeology: Subject: Re-add rockchip64 6.0 patches (#4575) > X-Git-Archeology: X-Armbian: Patch-File: overlays-12-add-rockpi4cplus-usb-host X-Armbian: Patch-File-Counter: 1 X-Armbian: Patch-Rel-Directory: patch/kernel/archive/rockchip64-6.1 X-Armbian: Patch-Type: kernel X-Armbian: Patch-Root-Type: core X-Armbian: Patch-Sub-Type: common X-Armbian: Original-Subject: [ARCHEOLOGY] Add Radxa ROCK Pi 4C Plus (#4129)
Original-Subject: [ARCHEOLOGY] Add Radxa ROCK Pi 4C Plus (#4129) > X-Git-Archeology: > recovered message: > * Add Rockpi 4C+ > X-Git-Archeology: > recovered message: > * add newer patches: > X-Git-Archeology: > recovered message: > - apply patches from RadxaNaoki <noaki@radxa.com> > X-Git-Archeology: > recovered message: > - ref 5652d6f9c2a4e2c50ac1040c0388859381b0616f: arm64: dts: rockchip: add gmac for ROCK 4C+ (torvalds#17) > X-Git-Archeology: > recovered message: > - apply latest patches from Marcone <marco.nelissen@gmail.com> > X-Git-Archeology: > recovered message: > - ref e39da181b099a86f5440ed1c08fc699d4a65aed7: arm64: dts: rockchip: Make Rock Pi 4C+ ethernet actually work > X-Git-Archeology: > recovered message: > - ref 8c519612eeb852268371b3c596eec4622460e5bf: arm64: dts: rockchip: add Rock Pi 4C+ LEDs > X-Git-Archeology: > recovered message: > - ref 726441afe687ea6059bac37f145ff204b75430f7: arm64: dts: rockchip: enable Rock Pi 4C+ wifi > X-Git-Archeology: > recovered message: > - ref caad7bef3b5558e2598480c0a0089e2ac3cedcdd: arm64: dts: rockchip: enable Rock Pi 4C+ nvme > X-Git-Archeology: > recovered message: > - ref 6cdc3215d1691bcd2a407a30e88efa0cec179eb2: arm64: dts: rockchip: enable Rock Pi 4C+ OTG > X-Git-Archeology: > recovered message: > * default top USB3 port to host mode > X-Git-Archeology: > recovered message: > * get 2nd HDMI port to work at least. :) > X-Git-Archeology: > recovered message: > * revert OTG USB3.1 port back to otg mode > X-Git-Archeology: > recovered message: > * [rockpi4c+] update board def. add usb host overlay. > X-Git-Archeology: > recovered message: > * remove redundant HDMI clocks and voltages > X-Git-Archeology: > recovered message: > * enable test builds for Rock PI 4 C+ > X-Git-Archeology: > recovered message: > * [rockpi4c+] add USB host overlay > X-Git-Archeology: > recovered message: > Co-authored-by: Joe Khoobyar <fourheads@gmail.com> > X-Git-Archeology: - Revision 9780da320eeb45832ddb680959646fcc5a6a38c3: armbian/build@9780da3 > X-Git-Archeology: Date: Wed, 02 Nov 2022 06:58:31 +0100 > X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com> > X-Git-Archeology: Subject: Add Radxa ROCK Pi 4C Plus (#4129) > X-Git-Archeology: > X-Git-Archeology: - Revision af24261cad8aac0fe13efd57449a82ab1b33e868: armbian/build@af24261 > X-Git-Archeology: Date: Wed, 02 Nov 2022 10:45:35 -0400 > X-Git-Archeology: From: Joe Khoobyar <joekhoobyar@users.noreply.github.com> > X-Git-Archeology: Subject: AR-1301: add edge and desktop (#4377) > X-Git-Archeology: > X-Git-Archeology: - Revision 92f1a22d76b987afa7ba555d5b509adc51d689e7: armbian/build@92f1a22 > X-Git-Archeology: Date: Fri, 16 Dec 2022 13:38:13 +0100 > X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com> > X-Git-Archeology: Subject: Re-add rockchip64 6.0 patches (#4575) > X-Git-Archeology: X-Armbian: Patch-File: add-board-rock-pi-4c-plus X-Armbian: Patch-File-Counter: 1 X-Armbian: Patch-Rel-Directory: patch/kernel/archive/rockchip64-6.1 X-Armbian: Patch-Type: kernel X-Armbian: Patch-Root-Type: core X-Armbian: Patch-Sub-Type: common X-Armbian: Original-Subject: [ARCHEOLOGY] Add Radxa ROCK Pi 4C Plus (#4129)
Original-Subject: [ARCHEOLOGY] Add Radxa ROCK Pi 4C Plus (#4129) > X-Git-Archeology: > recovered message: > * Add Rockpi 4C+ > X-Git-Archeology: > recovered message: > * add newer patches: > X-Git-Archeology: > recovered message: > - apply patches from RadxaNaoki <noaki@radxa.com> > X-Git-Archeology: > recovered message: > - ref 5652d6f9c2a4e2c50ac1040c0388859381b0616f: arm64: dts: rockchip: add gmac for ROCK 4C+ (torvalds#17) > X-Git-Archeology: > recovered message: > - apply latest patches from Marcone <marco.nelissen@gmail.com> > X-Git-Archeology: > recovered message: > - ref e39da181b099a86f5440ed1c08fc699d4a65aed7: arm64: dts: rockchip: Make Rock Pi 4C+ ethernet actually work > X-Git-Archeology: > recovered message: > - ref 8c519612eeb852268371b3c596eec4622460e5bf: arm64: dts: rockchip: add Rock Pi 4C+ LEDs > X-Git-Archeology: > recovered message: > - ref 726441afe687ea6059bac37f145ff204b75430f7: arm64: dts: rockchip: enable Rock Pi 4C+ wifi > X-Git-Archeology: > recovered message: > - ref caad7bef3b5558e2598480c0a0089e2ac3cedcdd: arm64: dts: rockchip: enable Rock Pi 4C+ nvme > X-Git-Archeology: > recovered message: > - ref 6cdc3215d1691bcd2a407a30e88efa0cec179eb2: arm64: dts: rockchip: enable Rock Pi 4C+ OTG > X-Git-Archeology: > recovered message: > * default top USB3 port to host mode > X-Git-Archeology: > recovered message: > * get 2nd HDMI port to work at least. :) > X-Git-Archeology: > recovered message: > * revert OTG USB3.1 port back to otg mode > X-Git-Archeology: > recovered message: > * [rockpi4c+] update board def. add usb host overlay. > X-Git-Archeology: > recovered message: > * remove redundant HDMI clocks and voltages > X-Git-Archeology: > recovered message: > * enable test builds for Rock PI 4 C+ > X-Git-Archeology: > recovered message: > * [rockpi4c+] add USB host overlay > X-Git-Archeology: > recovered message: > Co-authored-by: Joe Khoobyar <fourheads@gmail.com> > X-Git-Archeology: - Revision 9780da320eeb45832ddb680959646fcc5a6a38c3: armbian/build@9780da3 > X-Git-Archeology: Date: Wed, 02 Nov 2022 06:58:31 +0100 > X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com> > X-Git-Archeology: Subject: Add Radxa ROCK Pi 4C Plus (#4129) > X-Git-Archeology: > X-Git-Archeology: - Revision af24261cad8aac0fe13efd57449a82ab1b33e868: armbian/build@af24261 > X-Git-Archeology: Date: Wed, 02 Nov 2022 10:45:35 -0400 > X-Git-Archeology: From: Joe Khoobyar <joekhoobyar@users.noreply.github.com> > X-Git-Archeology: Subject: AR-1301: add edge and desktop (#4377) > X-Git-Archeology: > X-Git-Archeology: - Revision 92f1a22d76b987afa7ba555d5b509adc51d689e7: armbian/build@92f1a22 > X-Git-Archeology: Date: Fri, 16 Dec 2022 13:38:13 +0100 > X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com> > X-Git-Archeology: Subject: Re-add rockchip64 6.0 patches (#4575) > X-Git-Archeology: X-Armbian: Patch-File: overlays-12-add-rockpi4cplus-usb-host X-Armbian: Patch-File-Counter: 1 X-Armbian: Patch-Rel-Directory: patch/kernel/archive/rockchip64-6.1 X-Armbian: Patch-Type: kernel X-Armbian: Patch-Root-Type: core X-Armbian: Patch-Sub-Type: common X-Armbian: Original-Subject: [ARCHEOLOGY] Add Radxa ROCK Pi 4C Plus (#4129)
Original-Subject: [ARCHEOLOGY] Add Radxa ROCK Pi 4C Plus (#4129) > X-Git-Archeology: > recovered message: > * Add Rockpi 4C+ > X-Git-Archeology: > recovered message: > * add newer patches: > X-Git-Archeology: > recovered message: > - apply patches from RadxaNaoki <noaki@radxa.com> > X-Git-Archeology: > recovered message: > - ref 5652d6f9c2a4e2c50ac1040c0388859381b0616f: arm64: dts: rockchip: add gmac for ROCK 4C+ (torvalds#17) > X-Git-Archeology: > recovered message: > - apply latest patches from Marcone <marco.nelissen@gmail.com> > X-Git-Archeology: > recovered message: > - ref e39da181b099a86f5440ed1c08fc699d4a65aed7: arm64: dts: rockchip: Make Rock Pi 4C+ ethernet actually work > X-Git-Archeology: > recovered message: > - ref 8c519612eeb852268371b3c596eec4622460e5bf: arm64: dts: rockchip: add Rock Pi 4C+ LEDs > X-Git-Archeology: > recovered message: > - ref 726441afe687ea6059bac37f145ff204b75430f7: arm64: dts: rockchip: enable Rock Pi 4C+ wifi > X-Git-Archeology: > recovered message: > - ref caad7bef3b5558e2598480c0a0089e2ac3cedcdd: arm64: dts: rockchip: enable Rock Pi 4C+ nvme > X-Git-Archeology: > recovered message: > - ref 6cdc3215d1691bcd2a407a30e88efa0cec179eb2: arm64: dts: rockchip: enable Rock Pi 4C+ OTG > X-Git-Archeology: > recovered message: > * default top USB3 port to host mode > X-Git-Archeology: > recovered message: > * get 2nd HDMI port to work at least. :) > X-Git-Archeology: > recovered message: > * revert OTG USB3.1 port back to otg mode > X-Git-Archeology: > recovered message: > * [rockpi4c+] update board def. add usb host overlay. > X-Git-Archeology: > recovered message: > * remove redundant HDMI clocks and voltages > X-Git-Archeology: > recovered message: > * enable test builds for Rock PI 4 C+ > X-Git-Archeology: > recovered message: > * [rockpi4c+] add USB host overlay > X-Git-Archeology: > recovered message: > Co-authored-by: Joe Khoobyar <fourheads@gmail.com> > X-Git-Archeology: - Revision 9780da320eeb45832ddb680959646fcc5a6a38c3: armbian/build@9780da3 > X-Git-Archeology: Date: Wed, 02 Nov 2022 06:58:31 +0100 > X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com> > X-Git-Archeology: Subject: Add Radxa ROCK Pi 4C Plus (#4129) > X-Git-Archeology: > X-Git-Archeology: - Revision af24261cad8aac0fe13efd57449a82ab1b33e868: armbian/build@af24261 > X-Git-Archeology: Date: Wed, 02 Nov 2022 10:45:35 -0400 > X-Git-Archeology: From: Joe Khoobyar <joekhoobyar@users.noreply.github.com> > X-Git-Archeology: Subject: AR-1301: add edge and desktop (#4377) > X-Git-Archeology: > X-Git-Archeology: - Revision 92f1a22d76b987afa7ba555d5b509adc51d689e7: armbian/build@92f1a22 > X-Git-Archeology: Date: Fri, 16 Dec 2022 13:38:13 +0100 > X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com> > X-Git-Archeology: Subject: Re-add rockchip64 6.0 patches (#4575) > X-Git-Archeology: X-Armbian: Patch-File: add-board-rock-pi-4c-plus X-Armbian: Patch-File-Counter: 1 X-Armbian: Patch-Rel-Directory: patch/kernel/archive/rockchip64-6.1 X-Armbian: Patch-Type: kernel X-Armbian: Patch-Root-Type: core X-Armbian: Patch-Sub-Type: common X-Armbian: Original-Subject: [ARCHEOLOGY] Add Radxa ROCK Pi 4C Plus (#4129)
Original-Subject: [ARCHEOLOGY] Add Radxa ROCK Pi 4C Plus (#4129) > X-Git-Archeology: > recovered message: > * Add Rockpi 4C+ > X-Git-Archeology: > recovered message: > * add newer patches: > X-Git-Archeology: > recovered message: > - apply patches from RadxaNaoki <noaki@radxa.com> > X-Git-Archeology: > recovered message: > - ref 5652d6f9c2a4e2c50ac1040c0388859381b0616f: arm64: dts: rockchip: add gmac for ROCK 4C+ (torvalds#17) > X-Git-Archeology: > recovered message: > - apply latest patches from Marcone <marco.nelissen@gmail.com> > X-Git-Archeology: > recovered message: > - ref e39da181b099a86f5440ed1c08fc699d4a65aed7: arm64: dts: rockchip: Make Rock Pi 4C+ ethernet actually work > X-Git-Archeology: > recovered message: > - ref 8c519612eeb852268371b3c596eec4622460e5bf: arm64: dts: rockchip: add Rock Pi 4C+ LEDs > X-Git-Archeology: > recovered message: > - ref 726441afe687ea6059bac37f145ff204b75430f7: arm64: dts: rockchip: enable Rock Pi 4C+ wifi > X-Git-Archeology: > recovered message: > - ref caad7bef3b5558e2598480c0a0089e2ac3cedcdd: arm64: dts: rockchip: enable Rock Pi 4C+ nvme > X-Git-Archeology: > recovered message: > - ref 6cdc3215d1691bcd2a407a30e88efa0cec179eb2: arm64: dts: rockchip: enable Rock Pi 4C+ OTG > X-Git-Archeology: > recovered message: > * default top USB3 port to host mode > X-Git-Archeology: > recovered message: > * get 2nd HDMI port to work at least. :) > X-Git-Archeology: > recovered message: > * revert OTG USB3.1 port back to otg mode > X-Git-Archeology: > recovered message: > * [rockpi4c+] update board def. add usb host overlay. > X-Git-Archeology: > recovered message: > * remove redundant HDMI clocks and voltages > X-Git-Archeology: > recovered message: > * enable test builds for Rock PI 4 C+ > X-Git-Archeology: > recovered message: > * [rockpi4c+] add USB host overlay > X-Git-Archeology: > recovered message: > Co-authored-by: Joe Khoobyar <fourheads@gmail.com> > X-Git-Archeology: - Revision 9780da320eeb45832ddb680959646fcc5a6a38c3: armbian/build@9780da3 > X-Git-Archeology: Date: Wed, 02 Nov 2022 06:58:31 +0100 > X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com> > X-Git-Archeology: Subject: Add Radxa ROCK Pi 4C Plus (#4129) > X-Git-Archeology: > X-Git-Archeology: - Revision af24261cad8aac0fe13efd57449a82ab1b33e868: armbian/build@af24261 > X-Git-Archeology: Date: Wed, 02 Nov 2022 10:45:35 -0400 > X-Git-Archeology: From: Joe Khoobyar <joekhoobyar@users.noreply.github.com> > X-Git-Archeology: Subject: AR-1301: add edge and desktop (#4377) > X-Git-Archeology: > X-Git-Archeology: - Revision 92f1a22d76b987afa7ba555d5b509adc51d689e7: armbian/build@92f1a22 > X-Git-Archeology: Date: Fri, 16 Dec 2022 13:38:13 +0100 > X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com> > X-Git-Archeology: Subject: Re-add rockchip64 6.0 patches (#4575) > X-Git-Archeology: X-Armbian: Patch-File: overlays-12-add-rockpi4cplus-usb-host X-Armbian: Patch-File-Counter: 1 X-Armbian: Patch-Rel-Directory: patch/kernel/archive/rockchip64-6.1 X-Armbian: Patch-Type: kernel X-Armbian: Patch-Root-Type: core X-Armbian: Patch-Sub-Type: common X-Armbian: Original-Subject: [ARCHEOLOGY] Add Radxa ROCK Pi 4C Plus (#4129)
Original-Subject: [ARCHEOLOGY] Add Radxa ROCK Pi 4C Plus (#4129) > X-Git-Archeology: > recovered message: > * Add Rockpi 4C+ > X-Git-Archeology: > recovered message: > * add newer patches: > X-Git-Archeology: > recovered message: > - apply patches from RadxaNaoki <noaki@radxa.com> > X-Git-Archeology: > recovered message: > - ref 5652d6f9c2a4e2c50ac1040c0388859381b0616f: arm64: dts: rockchip: add gmac for ROCK 4C+ (torvalds#17) > X-Git-Archeology: > recovered message: > - apply latest patches from Marcone <marco.nelissen@gmail.com> > X-Git-Archeology: > recovered message: > - ref e39da181b099a86f5440ed1c08fc699d4a65aed7: arm64: dts: rockchip: Make Rock Pi 4C+ ethernet actually work > X-Git-Archeology: > recovered message: > - ref 8c519612eeb852268371b3c596eec4622460e5bf: arm64: dts: rockchip: add Rock Pi 4C+ LEDs > X-Git-Archeology: > recovered message: > - ref 726441afe687ea6059bac37f145ff204b75430f7: arm64: dts: rockchip: enable Rock Pi 4C+ wifi > X-Git-Archeology: > recovered message: > - ref caad7bef3b5558e2598480c0a0089e2ac3cedcdd: arm64: dts: rockchip: enable Rock Pi 4C+ nvme > X-Git-Archeology: > recovered message: > - ref 6cdc3215d1691bcd2a407a30e88efa0cec179eb2: arm64: dts: rockchip: enable Rock Pi 4C+ OTG > X-Git-Archeology: > recovered message: > * default top USB3 port to host mode > X-Git-Archeology: > recovered message: > * get 2nd HDMI port to work at least. :) > X-Git-Archeology: > recovered message: > * revert OTG USB3.1 port back to otg mode > X-Git-Archeology: > recovered message: > * [rockpi4c+] update board def. add usb host overlay. > X-Git-Archeology: > recovered message: > * remove redundant HDMI clocks and voltages > X-Git-Archeology: > recovered message: > * enable test builds for Rock PI 4 C+ > X-Git-Archeology: > recovered message: > * [rockpi4c+] add USB host overlay > X-Git-Archeology: > recovered message: > Co-authored-by: Joe Khoobyar <fourheads@gmail.com> > X-Git-Archeology: - Revision 9780da320eeb45832ddb680959646fcc5a6a38c3: armbian/build@9780da3 > X-Git-Archeology: Date: Wed, 02 Nov 2022 06:58:31 +0100 > X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com> > X-Git-Archeology: Subject: Add Radxa ROCK Pi 4C Plus (#4129) > X-Git-Archeology: > X-Git-Archeology: - Revision af24261cad8aac0fe13efd57449a82ab1b33e868: armbian/build@af24261 > X-Git-Archeology: Date: Wed, 02 Nov 2022 10:45:35 -0400 > X-Git-Archeology: From: Joe Khoobyar <joekhoobyar@users.noreply.github.com> > X-Git-Archeology: Subject: AR-1301: add edge and desktop (#4377) > X-Git-Archeology: > X-Git-Archeology: - Revision 92f1a22d76b987afa7ba555d5b509adc51d689e7: armbian/build@92f1a22 > X-Git-Archeology: Date: Fri, 16 Dec 2022 13:38:13 +0100 > X-Git-Archeology: From: Igor Pecovnik <igorpecovnik@users.noreply.github.com> > X-Git-Archeology: Subject: Re-add rockchip64 6.0 patches (#4575) > X-Git-Archeology: X-Armbian: Patch-File: overlays-12-add-rockpi4cplus-usb-host X-Armbian: Patch-File-Counter: 1 X-Armbian: Patch-Rel-Directory: patch/kernel/archive/rockchip64-6.1 X-Armbian: Patch-Type: kernel X-Armbian: Patch-Root-Type: core X-Armbian: Patch-Sub-Type: common X-Armbian: Original-Subject: [ARCHEOLOGY] Add Radxa ROCK Pi 4C Plus (#4129)
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
…g the sock [ Upstream commit 3cf7203 ] There is a race condition in vxlan that when deleting a vxlan device during receiving packets, there is a possibility that the sock is released after getting vxlan_sock vs from sk_user_data. Then in later vxlan_ecn_decapsulate(), vxlan_get_sk_family() we will got NULL pointer dereference. e.g. #0 [ffffa25ec6978a38] machine_kexec at ffffffff8c669757 #1 [ffffa25ec6978a90] __crash_kexec at ffffffff8c7c0a4d #2 [ffffa25ec6978b58] crash_kexec at ffffffff8c7c1c48 #3 [ffffa25ec6978b60] oops_end at ffffffff8c627f2b #4 [ffffa25ec6978b80] page_fault_oops at ffffffff8c678fcb #5 [ffffa25ec6978bd8] exc_page_fault at ffffffff8d109542 torvalds#6 [ffffa25ec6978c00] asm_exc_page_fault at ffffffff8d200b62 [exception RIP: vxlan_ecn_decapsulate+0x3b] RIP: ffffffffc1014e7b RSP: ffffa25ec6978cb0 RFLAGS: 00010246 RAX: 0000000000000008 RBX: ffff8aa000888000 RCX: 0000000000000000 RDX: 000000000000000e RSI: ffff8a9fc7ab803e RDI: ffff8a9fd1168700 RBP: ffff8a9fc7ab803e R8: 0000000000700000 R9: 00000000000010ae R10: ffff8a9fcb748980 R11: 0000000000000000 R12: ffff8a9fd1168700 R13: ffff8aa000888000 R14: 00000000002a0000 R15: 00000000000010ae ORIG_RAX: ffffffffffffffff CS: 0010 SS: 0018 torvalds#7 [ffffa25ec6978ce8] vxlan_rcv at ffffffffc10189cd [vxlan] torvalds#8 [ffffa25ec6978d90] udp_queue_rcv_one_skb at ffffffff8cfb6507 torvalds#9 [ffffa25ec6978dc0] udp_unicast_rcv_skb at ffffffff8cfb6e45 torvalds#10 [ffffa25ec6978dc8] __udp4_lib_rcv at ffffffff8cfb8807 torvalds#11 [ffffa25ec6978e20] ip_protocol_deliver_rcu at ffffffff8cf76951 torvalds#12 [ffffa25ec6978e48] ip_local_deliver at ffffffff8cf76bde torvalds#13 [ffffa25ec6978ea0] __netif_receive_skb_one_core at ffffffff8cecde9b torvalds#14 [ffffa25ec6978ec8] process_backlog at ffffffff8cece139 torvalds#15 [ffffa25ec6978f00] __napi_poll at ffffffff8ceced1a torvalds#16 [ffffa25ec6978f28] net_rx_action at ffffffff8cecf1f3 torvalds#17 [ffffa25ec6978fa0] __softirqentry_text_start at ffffffff8d4000ca torvalds#18 [ffffa25ec6978ff0] do_softirq at ffffffff8c6fbdc3 Reproducer: https://github.com/Mellanox/ovs-tests/blob/master/test-ovs-vxlan-remove-tunnel-during-traffic.sh Fix this by waiting for all sk_user_data reader to finish before releasing the sock. Reported-by: Jianlin Shi <jishi@redhat.com> Suggested-by: Jakub Sitnicki <jakub@cloudflare.com> Fixes: 6a93cc9 ("udp-tunnel: Add a few more UDP tunnel APIs") Signed-off-by: Hangbin Liu <liuhangbin@gmail.com> Reviewed-by: Jiri Pirko <jiri@nvidia.com> Signed-off-by: David S. Miller <davem@davemloft.net> Signed-off-by: Sasha Levin <sashal@kernel.org>
No description provided.