*/
#include <errno.h>
+#include <assert.h>
#include <alloca.h>
#include <multiboot.h>
#include <gpxe/uaccess.h>
unsigned int count = 0;
for_each_image ( module_image ) {
- /* Do not include kernel image as a module */
+
+ /* Do not include kernel image itself as a module */
if ( module_image == image )
continue;
module = &modules[count++];
+
/* Populate module data structure, if applicable */
if ( ! modules )
continue;
module_image->len );
if ( image->cmdline )
module->string = virt_to_phys ( image->cmdline );
+
+ /* We promise to page-align modules, so at least check */
+ assert ( ( module->mod_start & 0xfff ) == 0 );
}
return count;