[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] Re: [PATCH v2 2/2] arm/efi: Use dom0less configuration when using EFI boot
On 22.09.2021 16:13, Luca Fancellu wrote: > +static unsigned int __init allocate_dom0less_file(EFI_FILE_HANDLE dir_handle, > + const char *name, > + unsigned int name_len) > +{ > + dom0less_module_name* file_name; > + union string module_name; > + unsigned int ret_idx; > + > + /* > + * Check if there is any space left for a domU module, the variable > + * dom0less_modules_available is updated each time we use read_file(...) > + * successfully. > + */ > + if ( !dom0less_modules_available ) > + blexit(L"No space left for domU modules"); > + > + module_name.s = (char*) name; Unfortunately there are too many style issues in these Arm additions to really enumerate; I'd like to ask that you go through yourself with ./CODING_STYLE, surrounding code, and review comments on earlier patches of yours in mind. This cast stands out, though: I'm pretty sure you were told before that casts are often dangerous and hence should be avoided whenever (easily) possible. There was a prior case where union string was used in a similar way, not all that long ago. Hence why it now has a "const char *" member. (That's still somewhat risky, but imo way better than a cast.) > @@ -1361,12 +1360,21 @@ efi_start(EFI_HANDLE ImageHandle, EFI_SYSTEM_TABLE > *SystemTable) > efi_bs->FreePages(cfg.addr, PFN_UP(cfg.size)); > cfg.addr = 0; > > - dir_handle->Close(dir_handle); > - > if ( gop && !base_video ) > gop_mode = efi_find_gop_mode(gop, cols, rows, depth); > } > > + /* > + * Check if a proper configuration is provided to start Xen: > + * - Dom0 specified (minimum required) > + * - Dom0 and DomU(s) specified > + * - DomU(s) specified > + */ > + if ( !efi_arch_check_dom0less_boot(dir_handle) && !kernel.addr ) > + blexit(L"No Dom0 kernel image specified."); > + > + dir_handle->Close(dir_handle); So far I was under the impression that handles and alike need closing before calling Exit(), to prevent resource leaks. While I will admit that likely there are more (pre-existing) affected paths, I think that - if that understanding of mine is correct - it would be nice to avoid adding yet more instances. Jan
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |