-
Notifications
You must be signed in to change notification settings - Fork 164
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
Can't access user address #370
Comments
If you want to read the memory of a process on a live system, try reading from |
Thanks for reply. But my system doesn't have swap and the kernel source says
I think |
Huh, that does sound like a bug. I wasn't able to reproduce this on x86-64. What architecture and kernel version are you running? |
kernel version: 4.18.0-193.6.3.el8_2 I've tested multiple machines, and they all seem to have this issue, particularly when the process involves heavy memory usage. For example, I'm using drgn to scan a process with an Rss of 90G, but it can only access a small fraction of the memory pages. How can I assist in analyzing this problem? |
Could you please run this script on one of these processes and share the output: https://gist.github.com/osandov/12d524c7c5cebfda2593b29e0b564234 Pass it the PID and optionally which address range to check (or leave off the addresses to check the entire process address space). So for your initial report, it'd look like:
|
Here is a vma extracted from the smaps file. It is evident that this particular VMA contains 1942012kB of anonymous memory.
Now, using drgn 0.0.24, we can scan each address within this VMA and count the number of addresses that can be successfully accessed.
The result indicates a count of 20436, and the total accessible size is 79.828125MB, which is significantly smaller than the actual size.
I don't know how to solve this...
The text was updated successfully, but these errors were encountered: