FAQ Search Today's Posts Mark Forums Read
» Video Reviews

» Linux Archive

Linux-archive is a website aiming to archive linux email lists and to make them easily accessible for linux users/developers.


» Sponsor

» Partners

» Sponsor

Go Back   Linux Archive > Debian > Debian Kernel

 
 
LinkBack Thread Tools
 
Old 05-09-2011, 07:00 PM
Will Woods
 
Default FileDevice._create: don't alloc memory equal to file size, close fd

Write the new file out in 1k blocks of zeroes.
---
pyanaconda/storage/devices.py | 8 +++++---
1 files changed, 5 insertions(+), 3 deletions(-)

diff --git a/pyanaconda/storage/devices.py b/pyanaconda/storage/devices.py
index 51f2a13..0eca0a9 100644
--- a/pyanaconda/storage/devices.py
+++ b/pyanaconda/storage/devices.py
@@ -3458,9 +3458,11 @@ class FileDevice(StorageDevice):
def _create(self, w):
""" Create the device. """
log_method_call(self, self.name, status=self.status)
- fd = os.open(self.path, os.O_RDWR)
- buf = '' * 1024 * 1024 * self.size
- os.write(fd, buf)
+ fd = os.open(self.path, os.O_WRONLY|os.O_CREAT|os.O_TRUNC)
+ buf = "" * 1024 * 1024
+ for n in range(self.size):
+ os.write(fd, buf)
+ os.close(fd)

def _destroy(self):
""" Destroy the device. """
--
1.7.5.1

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@redhat.com
https://www.redhat.com/mailman/listinfo/anaconda-devel-list
 

Thread Tools




All times are GMT. The time now is 03:27 AM.

VBulletin, Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.
Content Relevant URLs by vBSEO ©2007, Crawlability, Inc.
Copyright 2007 - 2008, www.linux-archive.org