mail archive of the barebox mailing list
 help / color / mirror / Atom feed
* [PATCH] commands: mem: truncate mem device size to fit the loff_t file size
@ 2018-11-06 16:14 Lucas Stach
  2018-11-07  7:47 ` Sascha Hauer
  2018-11-07 13:45 ` Peter Mamonov
  0 siblings, 2 replies; 5+ messages in thread
From: Lucas Stach @ 2018-11-06 16:14 UTC (permalink / raw)
  To: barebox

On 64bit arches the file covering the whole address space is larger than
what can be represented in the loff_t type (s64) used for the file size.
Thus the size of this device is interpreted as negative in a lot of
places. Fix this by truncating the size to fit the file size type.

Signed-off-by: Lucas Stach <l.stach@pengutronix.de>
---
 commands/mem.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/commands/mem.c b/commands/mem.c
index eb91ade05a88..cdd7a492d0d5 100644
--- a/commands/mem.c
+++ b/commands/mem.c
@@ -96,7 +96,8 @@ static int mem_probe(struct device_d *dev)
 	dev->priv = cdev;
 
 	cdev->name = (char*)dev->resource[0].name;
-	cdev->size = (unsigned long)resource_size(&dev->resource[0]);
+	cdev->size = min(resource_size(&dev->resource[0]),
+			 (unsigned long long)S64_MAX);
 	cdev->ops = &memops;
 	cdev->dev = dev;
 
-- 
2.19.1


_______________________________________________
barebox mailing list
barebox@lists.infradead.org
http://lists.infradead.org/mailman/listinfo/barebox

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2018-11-07 17:07 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-11-06 16:14 [PATCH] commands: mem: truncate mem device size to fit the loff_t file size Lucas Stach
2018-11-07  7:47 ` Sascha Hauer
2018-11-07 13:45 ` Peter Mamonov
2018-11-07 16:08   ` Lucas Stach
2018-11-07 17:07     ` Peter Mamonov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox