Date: Thu, 23 Jun 2022 09:57:42 -0600 From: Warner Losh <imp@bsdimp.com> To: Harris Snyder <harris.snyder@gmail.com> Cc: FreeBSD Hackers <freebsd-hackers@freebsd.org> Subject: Re: Sanity check on a change to module load order Message-ID: <CANCZdfpaYosHz=Bxdp81VhzuxgCQU7FH7%2B7KfGjCEUCYqo-GBA@mail.gmail.com> In-Reply-To: <CAKF5_TmfR-xcQUrfrLYc=pw2VOZVc7NM%2BQ6JWmHcSdatfuU46w@mail.gmail.com> References: <CAKF5_TmfR-xcQUrfrLYc=pw2VOZVc7NM%2BQ6JWmHcSdatfuU46w@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
[-- Attachment #1 --]
On Mon, Jun 20, 2022 at 8:11 PM Harris Snyder <harris.snyder@gmail.com>
wrote:
> Hello,
>
> I've been trying to get the iSCSI boot module to work ("isboot" in the
> ports collection) with a PCIe Mellanox NIC, and I noticed that isboot
> is declared as part of the SI_SUB_PROTO_END subsystem, whereas the
> mellanox driver module is SI_SUB_ROOT_CONF-2 (via a linux kpi
> #define), which comes later. So the iSCSI boot failed, because it
> couldn't find the Mellanox NIC as the driver wasn''t loaded yet. I am
> brand new to the FreeBSD kernel, but I was going to propose that the
> port maintainer simply move isboot down to SI_SUB_ROOT_CONF-1. Is this
> a bad idea for some reason that I'm not aware of? I tried the proposed
> modification on my own system. iSCSI boot is still failing, but for
> what I think is an unrelated reason. Even if I do get it working, are
> there any obvious undesirable side effects that I'm simply not aware
> of?
>
In general, moving things later in the boot process to satisfy a prereq
like this is fine (unless you move it past something else that depends
on this having already started).
I'm not super familiar with this code, but I took a quick look. I'm not
seeing anything that I would flag as an issue.
Warner
[-- Attachment #2 --]
<div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Mon, Jun 20, 2022 at 8:11 PM Harris Snyder <<a href="mailto:harris.snyder@gmail.com">harris.snyder@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Hello,<br>
<br>
I've been trying to get the iSCSI boot module to work ("isboot" in the<br>
ports collection) with a PCIe Mellanox NIC, and I noticed that isboot<br>
is declared as part of the SI_SUB_PROTO_END subsystem, whereas the<br>
mellanox driver module is SI_SUB_ROOT_CONF-2 (via a linux kpi<br>
#define), which comes later. So the iSCSI boot failed, because it<br>
couldn't find the Mellanox NIC as the driver wasn''t loaded yet. I am<br>
brand new to the FreeBSD kernel, but I was going to propose that the<br>
port maintainer simply move isboot down to SI_SUB_ROOT_CONF-1. Is this<br>
a bad idea for some reason that I'm not aware of? I tried the proposed<br>
modification on my own system. iSCSI boot is still failing, but for<br>
what I think is an unrelated reason. Even if I do get it working, are<br>
there any obvious undesirable side effects that I'm simply not aware<br>
of?<br></blockquote><div><br></div><div>In general, moving things later in the boot process to satisfy a prereq</div><div>like this is fine (unless you move it past something else that depends</div><div>on this having already started).</div><div><br></div><div>I'm not super familiar with this code, but I took a quick look. I'm not</div><div>seeing anything that I would flag as an issue.</div><div><br></div><div>Warner</div></div></div>
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CANCZdfpaYosHz=Bxdp81VhzuxgCQU7FH7%2B7KfGjCEUCYqo-GBA>
