From nobody@FreeBSD.org  Tue Mar  8 22:19:18 2011
Return-Path: <nobody@FreeBSD.org>
Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34])
	by hub.freebsd.org (Postfix) with ESMTP id EAA9E106564A
	for <freebsd-gnats-submit@FreeBSD.org>; Tue,  8 Mar 2011 22:19:18 +0000 (UTC)
	(envelope-from nobody@FreeBSD.org)
Received: from red.freebsd.org (red.freebsd.org [IPv6:2001:4f8:fff6::22])
	by mx1.freebsd.org (Postfix) with ESMTP id D91868FC17
	for <freebsd-gnats-submit@FreeBSD.org>; Tue,  8 Mar 2011 22:19:18 +0000 (UTC)
Received: from red.freebsd.org (localhost [127.0.0.1])
	by red.freebsd.org (8.14.4/8.14.4) with ESMTP id p28MJIEH090152
	for <freebsd-gnats-submit@FreeBSD.org>; Tue, 8 Mar 2011 22:19:18 GMT
	(envelope-from nobody@red.freebsd.org)
Received: (from nobody@localhost)
	by red.freebsd.org (8.14.4/8.14.4/Submit) id p28MJIrX090151;
	Tue, 8 Mar 2011 22:19:18 GMT
	(envelope-from nobody)
Message-Id: <201103082219.p28MJIrX090151@red.freebsd.org>
Date: Tue, 8 Mar 2011 22:19:18 GMT
From: Zhihao Yuan <lichray@gmail.com>
To: freebsd-gnats-submit@FreeBSD.org
Subject: sysutils/xfce4-systemload-plugin: Memory size overflow when >3.5GB
X-Send-Pr-Version: www-3.1
X-GNATS-Notify: thorsten.greiner@web.de

>Number:         155382
>Category:       ports
>Synopsis:       sysutils/xfce4-systemload-plugin: Memory size overflow when >3.5GB
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    makc
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          change-request
>Submitter-Id:   current-users
>Arrival-Date:   Tue Mar 08 22:20:08 UTC 2011
>Closed-Date:    Sun Jul 03 12:04:49 UTC 2011
>Last-Modified:  Sun Jul  3 12:10:15 UTC 2011
>Originator:     Zhihao Yuan
>Release:        FreeBSD 8.2-STABLE
>Organization:
Northern Illinois University
>Environment:
FreeBSD compaq.yuetime 8.2-STABLE FreeBSD 8.2-STABLE #0: Tue Mar  8 01:53:40 CST 2011     root@compaq.yuetime:/usr/obj/usr/src/sys/HOUKAGO  amd64
>Description:
In file panel-plugin/memswap.c , the author defined the *_pages
variables as int, which is long enough to represent the length of pages.
But he multiplied the total_pages by pagesize, so the overflow occurred.
>How-To-Repeat:
Starts xfce4-systemload-plugin on a system with more than 3.5GB real
memory, you will see a very huge number for the total memory (If the
used memory is larger than 3.5GB, no lucky).
>Fix:
Use the authors' own macro CONVERT(_pages), which casts the page length
into quad_t, to calculate the memory sizes.


Patch attached with submission follows:

--- panel-plugin/memswap.c.orig	2010-12-09 10:04:10.000000000 -0600
+++ panel-plugin/memswap.c	2011-02-22 21:41:38.000000000 -0600
@@ -228,8 +228,8 @@ gint read_memswap(gulong *mem, gulong *s
         return -1;
     }
 
-    *MT = (total_pages*pagesize) >> 10;
-    *MU = ((total_pages-free_pages-inactive_pages) * pagesize) >> 10;
+    *MT = CONVERT(total_pages);
+    *MU = CONVERT(total_pages-free_pages-inactive_pages);
     *mem = *MU * 100 / *MT;
 
     if((*swap = swapmode(&swap_avail, &swap_free)) >= 0) {


>Release-Note:
>Audit-Trail:
Responsible-Changed-From-To: freebsd-ports-bugs->pgollucci 
Responsible-Changed-By: edwin 
Responsible-Changed-When: Tue Mar 8 22:20:22 UTC 2011 
Responsible-Changed-Why:  
pgollucci@ wants this port PRs (via the GNATS Auto Assign Tool) 

http://www.freebsd.org/cgi/query-pr.cgi?pr=155382 
State-Changed-From-To: open->feedback 
State-Changed-By: edwin 
State-Changed-When: Tue Mar 8 22:20:27 UTC 2011 
State-Changed-Why:  
Awaiting maintainers feedback (via the GNATS Auto Assign Tool) 

http://www.freebsd.org/cgi/query-pr.cgi?pr=155382 

From: Edwin Groothuis <edwin@FreeBSD.org>
To: thorsten.greiner@web.de
Cc: bug-followup@FreeBSD.org
Subject: Re: ports/155382: sysutils/xfce4-systemload-plugin: Memory size overflow when >3.5GB
Date: Tue, 8 Mar 2011 22:20:25 UT

 Maintainer of sysutils/xfce4-systemload-plugin,
 
 Please note that PR ports/155382 has just been submitted.
 
 If it contains a patch for an upgrade, an enhancement or a bug fix
 you agree on, reply to this email stating that you approve the patch
 and a committer will take care of it.
 
 The full text of the PR can be found at:
     http://www.freebsd.org/cgi/query-pr.cgi?pr=ports/155382
 
 -- 
 Edwin Groothuis via the GNATS Auto Assign Tool
 edwin@FreeBSD.org

From: Zhihao Yuan <lichray@gmail.com>
To: bug-followup@FreeBSD.org, pgollucci@FreeBSD.org
Cc:  
Subject: Re: ports/155382: sysutils/xfce4-systemload-plugin: Memory size
 overflow when &gt;3.5GB
Date: Tue, 17 May 2011 22:06:02 -0500

 --00151747849e2fda0104a3842b9e
 Content-Type: text/plain; charset=UTF-8
 
 Maintainer timeout. Please just commit the patch included.
 
 --00151747849e2fda0104a3842b9e
 Content-Type: application/octet-stream; 
 	name="xfce4-systemload-plugin_2.patch"
 Content-Disposition: attachment; filename="xfce4-systemload-plugin_2.patch"
 Content-Transfer-Encoding: base64
 X-Attachment-Id: f_gntov0vd0
 
 ZGlmZiAtcnVOIC0tZXhjbHVkZT1DVlMgL3Vzci9wb3J0cy9zeXN1dGlscy94ZmNlNC1zeXN0ZW1s
 b2FkLXBsdWdpbi5vcmlnL01ha2VmaWxlIC91c3IvcG9ydHMvc3lzdXRpbHMveGZjZTQtc3lzdGVt
 bG9hZC1wbHVnaW4vTWFrZWZpbGUKLS0tIC91c3IvcG9ydHMvc3lzdXRpbHMveGZjZTQtc3lzdGVt
 bG9hZC1wbHVnaW4ub3JpZy9NYWtlZmlsZQkyMDExLTAzLTE0IDA2OjQ4OjAxLjU3MTk1MDAwNiAt
 MDUwMAorKysgL3Vzci9wb3J0cy9zeXN1dGlscy94ZmNlNC1zeXN0ZW1sb2FkLXBsdWdpbi9NYWtl
 ZmlsZQkyMDExLTAzLTE0IDA2OjQ3OjQ3LjI2NDMxMDkxOSAtMDUwMApAQCAtNyw3ICs3LDcgQEAK
 IAogUE9SVE5BTUU9CXhmY2U0LXN5c3RlbWxvYWQtcGx1Z2luCiBQT1JUVkVSU0lPTj0JMS4wLjAK
 LVBPUlRSRVZJU0lPTj0JMQorUE9SVFJFVklTSU9OPQkyCiBDQVRFR09SSUVTPQlzeXN1dGlscyB4
 ZmNlCiBNQVNURVJfU0lURVM9CSR7TUFTVEVSX1NJVEVfWEZDRX0KIE1BU1RFUl9TSVRFX1NVQkRJ
 Uj0Jc3JjL3BhbmVsLXBsdWdpbnMvJHtQT1JUTkFNRX0vJHtQT1JUVkVSU0lPTjpSfQpkaWZmIC1y
 dU4gLS1leGNsdWRlPUNWUyAvdXNyL3BvcnRzL3N5c3V0aWxzL3hmY2U0LXN5c3RlbWxvYWQtcGx1
 Z2luLm9yaWcvZmlsZXMvcGF0Y2gtbWVtc3dhcC5jIC91c3IvcG9ydHMvc3lzdXRpbHMveGZjZTQt
 c3lzdGVtbG9hZC1wbHVnaW4vZmlsZXMvcGF0Y2gtbWVtc3dhcC5jCi0tLSAvdXNyL3BvcnRzL3N5
 c3V0aWxzL3hmY2U0LXN5c3RlbWxvYWQtcGx1Z2luLm9yaWcvZmlsZXMvcGF0Y2gtbWVtc3dhcC5j
 CTE5NjktMTItMzEgMTg6MDA6MDAuMDAwMDAwMDAwIC0wNjAwCisrKyAvdXNyL3BvcnRzL3N5c3V0
 aWxzL3hmY2U0LXN5c3RlbWxvYWQtcGx1Z2luL2ZpbGVzL3BhdGNoLW1lbXN3YXAuYwkyMDExLTAz
 LTE0IDA2OjQ0OjIxLjgzODMzNTUzNCAtMDUwMApAQCAtMCwwICsxLDEzIEBACistLS0gcGFuZWwt
 cGx1Z2luL21lbXN3YXAuYy5vcmlnCTIwMTAtMTItMDkgMTA6MDQ6MTAuMDAwMDAwMDAwIC0wNjAw
 CisrKysgcGFuZWwtcGx1Z2luL21lbXN3YXAuYwkyMDExLTAyLTIyIDIxOjQxOjM4LjAwMDAwMDAw
 MCAtMDYwMAorQEAgLTIyOCw4ICsyMjgsOCBAQCBnaW50IHJlYWRfbWVtc3dhcChndWxvbmcgKm1l
 bSwgZ3Vsb25nICpzCisgICAgICAgICByZXR1cm4gLTE7CisgICAgIH0KKyAKKy0gICAgKk1UID0g
 KHRvdGFsX3BhZ2VzKnBhZ2VzaXplKSA+PiAxMDsKKy0gICAgKk1VID0gKCh0b3RhbF9wYWdlcy1m
 cmVlX3BhZ2VzLWluYWN0aXZlX3BhZ2VzKSAqIHBhZ2VzaXplKSA+PiAxMDsKKysgICAgKk1UID0g
 Q09OVkVSVCh0b3RhbF9wYWdlcyk7CisrICAgICpNVSA9IENPTlZFUlQodG90YWxfcGFnZXMtZnJl
 ZV9wYWdlcy1pbmFjdGl2ZV9wYWdlcyk7CisgICAgICptZW0gPSAqTVUgKiAxMDAgLyAqTVQ7Cisg
 CisgICAgIGlmKCgqc3dhcCA9IHN3YXBtb2RlKCZzd2FwX2F2YWlsLCAmc3dhcF9mcmVlKSkgPj0g
 MCkgewpkaWZmIC1ydU4gLS1leGNsdWRlPUNWUyAvdXNyL3BvcnRzL3N5c3V0aWxzL3hmY2U0LXN5
 c3RlbWxvYWQtcGx1Z2luLm9yaWcvZmlsZXMvcGF0Y2gtdXB0aW1lLmMgL3Vzci9wb3J0cy9zeXN1
 dGlscy94ZmNlNC1zeXN0ZW1sb2FkLXBsdWdpbi9maWxlcy9wYXRjaC11cHRpbWUuYwotLS0gL3Vz
 ci9wb3J0cy9zeXN1dGlscy94ZmNlNC1zeXN0ZW1sb2FkLXBsdWdpbi5vcmlnL2ZpbGVzL3BhdGNo
 LXVwdGltZS5jCTE5NjktMTItMzEgMTg6MDA6MDAuMDAwMDAwMDAwIC0wNjAwCisrKyAvdXNyL3Bv
 cnRzL3N5c3V0aWxzL3hmY2U0LXN5c3RlbWxvYWQtcGx1Z2luL2ZpbGVzL3BhdGNoLXVwdGltZS5j
 CTIwMTEtMDMtMTQgMDY6NDc6MDYuMzY4MDcxNjAyIC0wNTAwCkBAIC0wLDAgKzEsMTEgQEAKKy0t
 LSBwYW5lbC1wbHVnaW4vdXB0aW1lLmMub3JpZwkyMDEwLTEyLTA5IDEwOjA0OjEwLjAwMDAwMDAw
 MCAtMDYwMAorKysrIHBhbmVsLXBsdWdpbi91cHRpbWUuYwkyMDExLTAzLTE0IDA2OjQ1OjQ0LjQ1
 MjA1MjA3NCAtMDUwMAorQEAgLTkzLDcgKzkzLDcgQEAgZ3Vsb25nIHJlYWRfdXB0aW1lKCkKKyAg
 ICBpbnQgbWliWzJdID0ge0NUTF9LRVJOLCBLRVJOX0JPT1RUSU1FfTsKKyAgICBzdHJ1Y3QgdGlt
 ZXZhbCBib290dGltZTsKKyAgICB0aW1lX3Qgbm93OworLSAgIGludCBzaXplID0gc2l6ZW9mKGJv
 b3R0aW1lKTsKKysgICBzaXplX3Qgc2l6ZSA9IHNpemVvZihib290dGltZSk7CisgICAgZ3Vsb25n
 IHVwdGltZTsKKyAgCisgICAgaWYoKHN5c2N0bChtaWIsIDIsICZib290dGltZSwgJnNpemUsIE5V
 TEwsIDApICE9IC0xKQo=
 --00151747849e2fda0104a3842b9e--
Responsible-Changed-From-To: pgollucci->freebsd-ports-bugs 
Responsible-Changed-By: pgollucci 
Responsible-Changed-When: Thu Jun 23 18:44:47 UTC 2011 
Responsible-Changed-Why:  
E-NO-TIME right now, back to pool 

http://www.freebsd.org/cgi/query-pr.cgi?pr=155382 
Responsible-Changed-From-To: freebsd-ports-bugs->makc 
Responsible-Changed-By: makc 
Responsible-Changed-When: Sun Jul 3 11:31:07 UTC 2011 
Responsible-Changed-Why:  
I'll take it. 

http://www.freebsd.org/cgi/query-pr.cgi?pr=155382 
State-Changed-From-To: feedback->open 
State-Changed-By: makc 
State-Changed-When: Sun Jul 3 11:44:22 UTC 2011 
State-Changed-Why:  
Maintainer timeout 

http://www.freebsd.org/cgi/query-pr.cgi?pr=155382 
State-Changed-From-To: open->closed 
State-Changed-By: makc 
State-Changed-When: Sun Jul 3 12:04:47 UTC 2011 
State-Changed-Why:  
Committed. Thanks! 

http://www.freebsd.org/cgi/query-pr.cgi?pr=155382 

From: dfilter@FreeBSD.ORG (dfilter service)
To: bug-followup@FreeBSD.org
Cc:  
Subject: Re: ports/155382: commit references a PR
Date: Sun,  3 Jul 2011 12:04:49 +0000 (UTC)

 makc        2011-07-03 12:04:37 UTC
 
   FreeBSD ports repository
 
   Modified files:
     sysutils/xfce4-systemload-plugin Makefile 
   Added files:
     sysutils/xfce4-systemload-plugin/files 
                                            patch-panel-plugin__memswap.c 
                                            patch-panel-plugin__uptime.c 
   Log:
   Fix reported memory size on systems with more than 3.5GB real memory.
   
   PR:             ports/155382
   Submitted by:   Zhihao Yuan <lichray at gmail.com>
   Approved by:    maintainer timeout (several months)
   
   Revision  Changes    Path
   1.37      +1 -1      ports/sysutils/xfce4-systemload-plugin/Makefile
   1.1       +13 -0     ports/sysutils/xfce4-systemload-plugin/files/patch-panel-plugin__memswap.c (new)
   1.1       +11 -0     ports/sysutils/xfce4-systemload-plugin/files/patch-panel-plugin__uptime.c (new)
 _______________________________________________
 cvs-all@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/cvs-all
 To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
 
>Unformatted:
