On Mon, Jul 21, 2014 at 9:36 AM, Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> wrote: > On Mon, Jul 21, 2014 at 08:43:07AM -0700, Kees Cook wrote: >> On Mon, Jul 21, 2014 at 08:26:35AM -0700, Greg Kroah-Hartman wrote: >> > On Mon, Jul 21, 2014 at 08:08:16AM -0700, Kees Cook wrote: >> > > Perhaps it would be easier if I also sent the patch to udev's helper, >> > > so you could see how I propose handling the userspace change to using >> > > the new interface? >> > >> > As there is no more "udev firmware helper", I don't know what you would >> > be patching here. Firmware should always be loaded by the kernel >> > directly, udev isn't involved anyore at all. >> > >> > confused, >> > >> > greg k-h >> >> The kernel _can_ load directly (when the paths are configured correctly), >> but I'm not sure why you say udev isn't involved any more. It's been like >> this for years, and even the latest systemd shows the udev rule is still in >> place: >> http://cgit.freedesktop.org/systemd/systemd/tree/rules/50-firmware.rules >> and that the firmware loader is still in the source tree: >> http://cgit.freedesktop.org/systemd/systemd/tree/src/udev/udev-builtin-firmware.c > > Ah, I thought that I had seen patches to delete this code on the systemd > mailing list in the past, I didn't realize they hadn't been accepted > yet. > > But, with my current tree, in linux-next, it's really hard to select the > "external firmware loader" on purpose, as we want people to use the > in-kernel one if at all possible, and only fall back to the "legacy" > udev userspace loader if they are running on old userspace systems. Heh. Where non-legacy means running a userspace with unaccepted systemd patches? That's some serious time-travel. :) >> Here's the patch for the new interface... > > I'd really not like to add a new interface for this model when we are > trying to delete it entirely. Why not just rely on the in-kernel loader > instead for this new feature? Yeah, I see what you're saying. Obviously if the udev loader is going to vanish entirely, it makes no sense to add the "fd" interface. I'll keep the last 3 patches in the series in my tree for backporting purposes, but since the LSM hook is still useful for origin/content validation, I'd still like to see those go in. Though it sounds like I should do that through the security-next tree? applied: doc: fix minor typos in firmware_class README test: add firmware_class loader test hopefully for security-next: security: introduce kernel_fw_from_file hook firmware_class: perform new LSM checks I'll keep these external for backporting to "legacy" kernels/userspace: firmware_class: extract start loading logic firmware_class: add "fd" input file test: add "fd" firmware loading test to selftests Does that look okay? -Kees -- Kees Cook Chrome OS Security -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html