Skip to content
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

Ported pcie-brcmstb bounce buffer implementation to ARM64. #3144

Merged
merged 5 commits into from
Aug 14, 2019
Merged

Ported pcie-brcmstb bounce buffer implementation to ARM64. #3144

merged 5 commits into from
Aug 14, 2019

Conversation

yaroslavros
Copy link

@yaroslavros yaroslavros commented Aug 12, 2019

This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.
This addresses #3093

full 4G RAM usage on Raspberry Pi in 64-bit mode.
@pelwell
Copy link
Contributor

pelwell commented Aug 12, 2019

Thank you. Do you have a "Signed-off-by: name " I can add for you?

full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
@yaroslavros
Copy link
Author

Added a commit d1e0a4c with "Signed-off-by"

Sorry about missing this

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
@yaroslavros
Copy link
Author

I left a diagnostic trace message in arch/arm64/mm/dma-mapping.c
This is rectified by 6e7a2b8

@pelwell
Copy link
Contributor

pelwell commented Aug 12, 2019

Thanks - that should all squash down when it is time to merge.

@agherzan
Copy link
Contributor

@yaroslavros all we need now is a squash to one commit so we can merge it. Do you think you can do that soon?

@pelwell
Copy link
Contributor

pelwell commented Aug 14, 2019

No need - I can squash and merge if you've had a chance to test it.

@agherzan
Copy link
Contributor

agherzan commented Aug 14, 2019

I see. I'll give it a spin tomorrow. Will update as soon as.

@sakaki-
Copy link

sakaki- commented Aug 14, 2019

Very nice - seems to work well (in the very basic testing I have done anyhow)!

I have added this PR to my bcm2711-kernel-bis weekly autobuild pro tem, until it is merged upstream. A prebuilt release tarball may be downloaded here.

Screenshot (64-bit Gentoo userland, also has #3063 applied for V3D):

screenshot

Thanks, sakaki

@pelwell pelwell merged commit ea2c11a into raspberrypi:rpi-4.19.y Aug 14, 2019
@pY4x3g
Copy link

pY4x3g commented Aug 14, 2019

I tested the current kernel with the bounce buffer implementation on arm64. After the ram went over 1GB most of the programs are not usable anymore, network broke down and I was not able to shutdown the system at all. More or less the same as before the merge. I see errors in dmesg like in issue #3120 is this to be expected with a 32bit userspace? Sorry for asking, I dont know much about kernels.

Edit: after using the kernel from sakaki the problem is not present anymore. Maybe I compiled the kernel wrong... (used the introduction from https://andrei.gherzan.ro/linux/raspbian-rpi-64/)

satmandu added a commit to satmandu/docker-rpi4-imagebuilder that referenced this pull request Aug 14, 2019
@agherzan
Copy link
Contributor

agherzan commented Aug 15, 2019

@pY4x3g How have you tested this? I just ran some stress tools and I was able to go above 3G without any obvious issues.

root@raspberrypi4-64:~# free -m
              total        used        free      shared  buff/cache   available
Mem:        3780536     3269616      447608       10784       63312      468548
Swap:             0           0           0

This is on a full 64bit distro (kernel + userspace).

@pelwell
Copy link
Contributor

pelwell commented Aug 15, 2019

It's all looking good here, with just arm_64bit=1 in config.txt.

@pY4x3g
Copy link

pY4x3g commented Aug 15, 2019

@agherzan I started a self compiled go program (siacoin - arm64), after 1 GB of memory was used the system was not usable anymore. I actually do not know what I did wrong, but with the compiled kernel as mentioned above all is working fine now with usage at full 4GB (-300M for GPU) memory and swapping of 2 GB. System is running stable since yesterday. Using the official 32bit raspbian userspace.

@sakaki-
Copy link

sakaki- commented Aug 15, 2019

@agherzan, see @pY4x3g's edit to the original message:

Edit: after using the kernel from sakaki the problem is not present anymore. Maybe I compiled the kernel wrong... (used the introduction from https://andrei.gherzan.ro/linux/raspbian-rpi-64/)

So I guess just a localized build issue originally?

@sakaki-
Copy link

sakaki- commented Aug 15, 2019

Ooops - our posts just crossed @pY4x3g, apologies ^-^

@agherzan
Copy link
Contributor

Gotcha. Thanks for clarifying. Looks good!

agherzan added a commit to agherzan/meta-raspberrypi that referenced this pull request Aug 15, 2019
The PCIe bounce buffers were ported[1] in the kernel so we can remove
this limitation now.

[1] raspberrypi/linux#3144

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
agherzan added a commit to agherzan/meta-raspberrypi that referenced this pull request Aug 15, 2019
The PCIe bounce buffers were ported[1] in the kernel so we can remove
this limitation now.

[1] raspberrypi/linux#3144

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
agherzan added a commit to agherzan/meta-raspberrypi that referenced this pull request Aug 15, 2019
The PCIe bounce buffers were ported[1] in the kernel so we can remove
this limitation now.

[1] raspberrypi/linux#3144

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
agherzan added a commit to agherzan/meta-raspberrypi that referenced this pull request Aug 15, 2019
The PCIe bounce buffers were ported[1] in the kernel so we can remove
this limitation now.

[1] raspberrypi/linux#3144

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
agherzan added a commit to agherzan/meta-raspberrypi that referenced this pull request Aug 16, 2019
The PCIe bounce buffers were ported[1] in the kernel so we can remove
this limitation now.

[1] raspberrypi/linux#3144

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
popcornmix pushed a commit that referenced this pull request Apr 7, 2020
Ported pcie-brcmstb bounce buffer implementation to ARM64.
This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
popcornmix pushed a commit that referenced this pull request Apr 7, 2020
popcornmix pushed a commit that referenced this pull request Apr 16, 2020
Ported pcie-brcmstb bounce buffer implementation to ARM64.
This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
popcornmix pushed a commit that referenced this pull request Apr 16, 2020
popcornmix pushed a commit that referenced this pull request Apr 16, 2020
Ported pcie-brcmstb bounce buffer implementation to ARM64.
This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
popcornmix pushed a commit that referenced this pull request Apr 16, 2020
popcornmix pushed a commit that referenced this pull request Apr 27, 2020
Ported pcie-brcmstb bounce buffer implementation to ARM64.
This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
popcornmix pushed a commit that referenced this pull request Apr 27, 2020
popcornmix pushed a commit that referenced this pull request May 4, 2020
Ported pcie-brcmstb bounce buffer implementation to ARM64.
This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
popcornmix pushed a commit that referenced this pull request May 4, 2020
popcornmix pushed a commit that referenced this pull request May 11, 2020
Ported pcie-brcmstb bounce buffer implementation to ARM64.
This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
popcornmix pushed a commit that referenced this pull request May 11, 2020
popcornmix pushed a commit that referenced this pull request May 20, 2020
Ported pcie-brcmstb bounce buffer implementation to ARM64.
This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
popcornmix pushed a commit that referenced this pull request May 20, 2020
popcornmix pushed a commit that referenced this pull request May 20, 2020
Ported pcie-brcmstb bounce buffer implementation to ARM64.
This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
popcornmix pushed a commit that referenced this pull request May 20, 2020
popcornmix pushed a commit that referenced this pull request Jun 3, 2020
Ported pcie-brcmstb bounce buffer implementation to ARM64.
This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
popcornmix pushed a commit that referenced this pull request Jun 3, 2020
popcornmix pushed a commit that referenced this pull request Jun 10, 2020
Ported pcie-brcmstb bounce buffer implementation to ARM64.
This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
popcornmix pushed a commit that referenced this pull request Jun 10, 2020
popcornmix pushed a commit that referenced this pull request Jun 17, 2020
Ported pcie-brcmstb bounce buffer implementation to ARM64.
This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
popcornmix pushed a commit that referenced this pull request Jun 17, 2020
popcornmix pushed a commit that referenced this pull request Jun 26, 2020
Ported pcie-brcmstb bounce buffer implementation to ARM64.
This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
popcornmix pushed a commit that referenced this pull request Jun 26, 2020
popcornmix pushed a commit that referenced this pull request Jul 1, 2020
Ported pcie-brcmstb bounce buffer implementation to ARM64.
This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
popcornmix pushed a commit that referenced this pull request Jul 1, 2020
popcornmix pushed a commit that referenced this pull request Jul 13, 2020
Ported pcie-brcmstb bounce buffer implementation to ARM64.
This enables full 4G RAM usage on Raspberry Pi in 64-bit mode.

Signed-off-by: Yaroslav Rosomakho <yaroslavros@gmail.com>
popcornmix pushed a commit that referenced this pull request Jul 13, 2020
daregit pushed a commit to daregit/yocto-combined that referenced this pull request May 22, 2024
The PCIe bounce buffers were ported[1] in the kernel so we can remove
this limitation now.

[1] raspberrypi/linux#3144

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
daregit pushed a commit to daregit/yocto-combined that referenced this pull request May 22, 2024
The PCIe bounce buffers were ported[1] in the kernel so we can remove
this limitation now.

[1] raspberrypi/linux#3144

Signed-off-by: Andrei Gherzan <andrei@gherzan.ro>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

8 participants