Mailing List Archive

svn commit: r1911171 - /perl/Apache-SizeLimit/trunk/lib/Apache/SizeLimit/Core.pm
Author: stevehay
Date: Fri Jul 21 10:22:15 2023
New Revision: 1911171

URL: http://svn.apache.org/viewvc?rev=1911171&view=rev
Log:
Fix unshared memory values when using /proc/self/statm

Patch by Zefram <zefram@fysh.org> on CPAN RT#73752

Modified:
perl/Apache-SizeLimit/trunk/lib/Apache/SizeLimit/Core.pm

Modified: perl/Apache-SizeLimit/trunk/lib/Apache/SizeLimit/Core.pm
URL: http://svn.apache.org/viewvc/perl/Apache-SizeLimit/trunk/lib/Apache/SizeLimit/Core.pm?rev=1911171&r1=1911170&r2=1911171&view=diff
==============================================================================
--- perl/Apache-SizeLimit/trunk/lib/Apache/SizeLimit/Core.pm (original)
+++ perl/Apache-SizeLimit/trunk/lib/Apache/SizeLimit/Core.pm Fri Jul 21 10:22:15 2023
@@ -162,10 +162,10 @@ BEGIN {
sub _linux_size_check {
my $class = shift;

- my ($size, $share) = (0, 0);
+ my ($size, $data) = (0, 0);

if (open my $fh, '<', '/proc/self/statm') {
- ($size, $share) = (split /\s/, scalar <$fh>)[0,2];
+ ($size, $data) = (split /\s/, scalar <$fh>)[0,5];
close $fh;
}
else {
@@ -173,7 +173,9 @@ sub _linux_size_check {
}

# linux on intel x86 has 4KB page size...
- return ($size * 4, $share * 4);
+ $size <<= 2;
+ $data <<= 2;
+ return ($size, $size - $data, $data);
}

sub _solaris_2_6_size_check {