diff mbox

UBUNTU: d-i: initrd needs crypro, ext4 and scsi modules

Message ID 1473696349-2734-1-git-send-email-manoj.iyer@canonical.com
State New
Headers show

Commit Message

Manoj Iyer Sept. 12, 2016, 4:05 p.m. UTC
From: Manoj Iyer <manoj.iyer@canonical.com>

ext4, scsi drive support is now built as modules, d-i will need to
have these modules in initrd to be able to install.

Signed-off-by: Manoj Iyer <manoj.iyer@canonical.com>
---
 debian.master/d-i/modules/crypto-modules  | 3 +++
 debian.master/d-i/modules/fs-core-modules | 2 ++
 debian.master/d-i/modules/scsi-modules    | 1 +
 3 files changed, 6 insertions(+)

Comments

Tim Gardner Sept. 12, 2016, 4:28 p.m. UTC | #1
Applied to unstable and Yakkety master-next.
dann frazier Sept. 12, 2016, 9:03 p.m. UTC | #2
On Mon, Sep 12, 2016 at 10:05 AM,  <manoj.iyer@canonical.com> wrote:
> From: Manoj Iyer <manoj.iyer@canonical.com>
>
> ext4, scsi drive support is now built as modules, d-i will need to
> have these modules in initrd to be able to install.
>
> Signed-off-by: Manoj Iyer <manoj.iyer@canonical.com>
> ---
>  debian.master/d-i/modules/crypto-modules  | 3 +++
>  debian.master/d-i/modules/fs-core-modules | 2 ++
>  debian.master/d-i/modules/scsi-modules    | 1 +
>  3 files changed, 6 insertions(+)
>
> diff --git a/debian.master/d-i/modules/crypto-modules b/debian.master/d-i/modules/crypto-modules
> index 333f5a5..1b8ba41 100644
> --- a/debian.master/d-i/modules/crypto-modules
> +++ b/debian.master/d-i/modules/crypto-modules
> @@ -24,6 +24,9 @@ cryptd ?
>  cryptoloop ?
>  crypto_null ?
>  crypto_user ?
> +crc32 ?
> +crypto ?
> +crypto_crc32c ?
>  ctr ?
>  cts ?
>  deflate ?
> diff --git a/debian.master/d-i/modules/fs-core-modules b/debian.master/d-i/modules/fs-core-modules
> index 7a7c2fc..84f2266 100644
> --- a/debian.master/d-i/modules/fs-core-modules
> +++ b/debian.master/d-i/modules/fs-core-modules
> @@ -1,5 +1,7 @@
>  ext2 ?
> +ext4 ?
>  jfs ?
> +jbd2 ?
>  reiserfs ?
>  xfs ?
>  zfs ?

Manoj,

You don't need to list all the dependencies of ext4 - kernel-wedge
will resolve those for you. That is, if you just add 'ext4', then
jbd2, crc32, etc will automatically get included in the
fs-core-modules udeb. It's easier to maintain that way since we don't
have to keep track of dependencies manually, plus it avoids bloating
udebs like crypto-modules (if crypto_crc32c is only a dependency of
ext4, better to ship it w/ ext4).

The only time you do need to explicitly list a module dependency is
when modules in 2 or more other udebs require it, since a module
should only exist in 1 udeb. kernel-wedge will catch and report that
for you.

  -dann

> diff --git a/debian.master/d-i/modules/scsi-modules b/debian.master/d-i/modules/scsi-modules
> index 46e0ac9..5c1f86b 100644
> --- a/debian.master/d-i/modules/scsi-modules
> +++ b/debian.master/d-i/modules/scsi-modules
> @@ -123,6 +123,7 @@ isci ?
>  mlx4_ib ?
>  mlx5_ib ?
>  zfcp ?
> +sd_mod ?
>
>  # device handlers
>  scsi_dh_alua ?
> --
> 2.7.4
>
>
> --
> kernel-team mailing list
> kernel-team@lists.ubuntu.com
> https://lists.ubuntu.com/mailman/listinfo/kernel-team
Manoj Iyer Sept. 12, 2016, 11:45 p.m. UTC | #3
On Mon, 12 Sep 2016, Dann Frazier wrote:

> On Mon, Sep 12, 2016 at 10:05 AM,  <manoj.iyer@canonical.com> wrote:
>> From: Manoj Iyer <manoj.iyer@canonical.com>
>>
>> ext4, scsi drive support is now built as modules, d-i will need to
>> have these modules in initrd to be able to install.
>>
>> Signed-off-by: Manoj Iyer <manoj.iyer@canonical.com>
>> ---
>>  debian.master/d-i/modules/crypto-modules  | 3 +++
>>  debian.master/d-i/modules/fs-core-modules | 2 ++
>>  debian.master/d-i/modules/scsi-modules    | 1 +
>>  3 files changed, 6 insertions(+)
>>
>> diff --git a/debian.master/d-i/modules/crypto-modules b/debian.master/d-i/modules/crypto-modules
>> index 333f5a5..1b8ba41 100644
>> --- a/debian.master/d-i/modules/crypto-modules
>> +++ b/debian.master/d-i/modules/crypto-modules
>> @@ -24,6 +24,9 @@ cryptd ?
>>  cryptoloop ?
>>  crypto_null ?
>>  crypto_user ?
>> +crc32 ?
>> +crypto ?
>> +crypto_crc32c ?
>>  ctr ?
>>  cts ?
>>  deflate ?
>> diff --git a/debian.master/d-i/modules/fs-core-modules b/debian.master/d-i/modules/fs-core-modules
>> index 7a7c2fc..84f2266 100644
>> --- a/debian.master/d-i/modules/fs-core-modules
>> +++ b/debian.master/d-i/modules/fs-core-modules
>> @@ -1,5 +1,7 @@
>>  ext2 ?
>> +ext4 ?
>>  jfs ?
>> +jbd2 ?
>>  reiserfs ?
>>  xfs ?
>>  zfs ?
>
> Manoj,
>
> You don't need to list all the dependencies of ext4 - kernel-wedge
> will resolve those for you. That is, if you just add 'ext4', then
> jbd2, crc32, etc will automatically get included in the
> fs-core-modules udeb. It's easier to maintain that way since we don't
> have to keep track of dependencies manually, plus it avoids bloating
> udebs like crypto-modules (if crypto_crc32c is only a dependency of
> ext4, better to ship it w/ ext4).
>

I started off by just adding ext4 but that did not pull in the 
dependencies like crc32, crypto and crypto_crc32c. So I ended up adding 
those to module specific files.

> The only time you do need to explicitly list a module dependency is
> when modules in 2 or more other udebs require it, since a module
> should only exist in 1 udeb. kernel-wedge will catch and report that
> for you.
>
>  -dann
>
>> diff --git a/debian.master/d-i/modules/scsi-modules b/debian.master/d-i/modules/scsi-modules
>> index 46e0ac9..5c1f86b 100644
>> --- a/debian.master/d-i/modules/scsi-modules
>> +++ b/debian.master/d-i/modules/scsi-modules
>> @@ -123,6 +123,7 @@ isci ?
>>  mlx4_ib ?
>>  mlx5_ib ?
>>  zfcp ?
>> +sd_mod ?
>>
>>  # device handlers
>>  scsi_dh_alua ?
>> --
>> 2.7.4
>>
>>
>> --
>> kernel-team mailing list
>> kernel-team@lists.ubuntu.com
>> https://lists.ubuntu.com/mailman/listinfo/kernel-team
>
>
dann frazier Sept. 13, 2016, 11:41 p.m. UTC | #4
On Mon, Sep 12, 2016 at 5:45 PM, Manoj Iyer <manoj.iyer@canonical.com> wrote:
>
>
> On Mon, 12 Sep 2016, Dann Frazier wrote:
>
>> On Mon, Sep 12, 2016 at 10:05 AM,  <manoj.iyer@canonical.com> wrote:
>>>
>>> From: Manoj Iyer <manoj.iyer@canonical.com>
>>>
>>> ext4, scsi drive support is now built as modules, d-i will need to
>>> have these modules in initrd to be able to install.
>>>
>>> Signed-off-by: Manoj Iyer <manoj.iyer@canonical.com>
>>> ---
>>>  debian.master/d-i/modules/crypto-modules  | 3 +++
>>>  debian.master/d-i/modules/fs-core-modules | 2 ++
>>>  debian.master/d-i/modules/scsi-modules    | 1 +
>>>  3 files changed, 6 insertions(+)
>>>
>>> diff --git a/debian.master/d-i/modules/crypto-modules
>>> b/debian.master/d-i/modules/crypto-modules
>>> index 333f5a5..1b8ba41 100644
>>> --- a/debian.master/d-i/modules/crypto-modules
>>> +++ b/debian.master/d-i/modules/crypto-modules
>>> @@ -24,6 +24,9 @@ cryptd ?
>>>  cryptoloop ?
>>>  crypto_null ?
>>>  crypto_user ?
>>> +crc32 ?
>>> +crypto ?
>>> +crypto_crc32c ?
>>>  ctr ?
>>>  cts ?
>>>  deflate ?
>>> diff --git a/debian.master/d-i/modules/fs-core-modules
>>> b/debian.master/d-i/modules/fs-core-modules
>>> index 7a7c2fc..84f2266 100644
>>> --- a/debian.master/d-i/modules/fs-core-modules
>>> +++ b/debian.master/d-i/modules/fs-core-modules
>>> @@ -1,5 +1,7 @@
>>>  ext2 ?
>>> +ext4 ?
>>>  jfs ?
>>> +jbd2 ?
>>>  reiserfs ?
>>>  xfs ?
>>>  zfs ?
>>
>>
>> Manoj,
>>
>> You don't need to list all the dependencies of ext4 - kernel-wedge
>> will resolve those for you. That is, if you just add 'ext4', then
>> jbd2, crc32, etc will automatically get included in the
>> fs-core-modules udeb. It's easier to maintain that way since we don't
>> have to keep track of dependencies manually, plus it avoids bloating
>> udebs like crypto-modules (if crypto_crc32c is only a dependency of
>> ext4, better to ship it w/ ext4).
>>
>
> I started off by just adding ext4 but that did not pull in the dependencies
> like crc32, crypto and crypto_crc32c. So I ended up adding those to module
> specific files.

Manoj,

Can you (off-list) point me at a source package that produces all of
these modules so I can figure out what's going wrong?
Also - is there actually a module called crypto_crc32c? According to
Kconfig, CONFIG_CRYPTO_CRC32C produces a module called crc32c.

  -dann


>
>> The only time you do need to explicitly list a module dependency is
>> when modules in 2 or more other udebs require it, since a module
>> should only exist in 1 udeb. kernel-wedge will catch and report that
>> for you.
>>
>>  -dann
>>
>>> diff --git a/debian.master/d-i/modules/scsi-modules
>>> b/debian.master/d-i/modules/scsi-modules
>>> index 46e0ac9..5c1f86b 100644
>>> --- a/debian.master/d-i/modules/scsi-modules
>>> +++ b/debian.master/d-i/modules/scsi-modules
>>> @@ -123,6 +123,7 @@ isci ?
>>>  mlx4_ib ?
>>>  mlx5_ib ?
>>>  zfcp ?
>>> +sd_mod ?
>>>
>>>  # device handlers
>>>  scsi_dh_alua ?
>>> --
>>> 2.7.4
>>>
>>>
>>> --
>>> kernel-team mailing list
>>> kernel-team@lists.ubuntu.com
>>> https://lists.ubuntu.com/mailman/listinfo/kernel-team
>>
>>
>>
>
Manoj Iyer Sept. 14, 2016, 1:41 a.m. UTC | #5
>>>
>>> You don't need to list all the dependencies of ext4 - kernel-wedge
>>> will resolve those for you. That is, if you just add 'ext4', then
>>> jbd2, crc32, etc will automatically get included in the
>>> fs-core-modules udeb. It's easier to maintain that way since we don't
>>> have to keep track of dependencies manually, plus it avoids bloating
>>> udebs like crypto-modules (if crypto_crc32c is only a dependency of
>>> ext4, better to ship it w/ ext4).
>>>
>>
>> I started off by just adding ext4 but that did not pull in the dependencies
>> like crc32, crypto and crypto_crc32c. So I ended up adding those to module
>> specific files.
>
> Manoj,
>
> Can you (off-list) point me at a source package that produces all of
> these modules so I can figure out what's going wrong?
> Also - is there actually a module called crypto_crc32c? According to
> Kconfig, CONFIG_CRYPTO_CRC32C produces a module called crc32c.
>
>  -dann

@dannf you are absolutely right, all I need is sd_mod and ext4 modules in 
d-i/modules/ Looks like I made a mistake here. I tested the installer with 
those two modules added to d-i/modules and the installer works as 
expected. I was able to install (arm64) system with ubuntu-installer built 
with just ext4 and sd_mod modules added to debian.master/d-i/modules/XX.

Modules used by the installer after adding ext4 and sd_mod are:

~ # lsmod | grep sd_mod
sd_mod                 34070  0
scsi_mod              200422  7 scsi_dh_alua,scsi_dh_rdac,usb_storage,scsi_dh_emc,scsi_dh_hp_sw,libata,sd_mod
~ # lsmod | grep ext4
ext4                  551651  0
crc16                   1618  1 ext4
jbd2                   92473  1 ext4
mbcache                 5775  1 ext4
~ #

And this resolves all the dependencies required.

@rtg I will resend the patch to revert my previous commit and add the new 
patch as per dannf's comments.


>
>
>>
>>> The only time you do need to explicitly list a module dependency is
>>> when modules in 2 or more other udebs require it, since a module
>>> should only exist in 1 udeb. kernel-wedge will catch and report that
>>> for you.
>>>
>>>  -dann
>>>
>>>> diff --git a/debian.master/d-i/modules/scsi-modules
>>>> b/debian.master/d-i/modules/scsi-modules
>>>> index 46e0ac9..5c1f86b 100644
>>>> --- a/debian.master/d-i/modules/scsi-modules
>>>> +++ b/debian.master/d-i/modules/scsi-modules
>>>> @@ -123,6 +123,7 @@ isci ?
>>>>  mlx4_ib ?
>>>>  mlx5_ib ?
>>>>  zfcp ?
>>>> +sd_mod ?
>>>>
>>>>  # device handlers
>>>>  scsi_dh_alua ?
>>>> --
>>>> 2.7.4
>>>>
>>>>
>>>> --
>>>> kernel-team mailing list
>>>> kernel-team@lists.ubuntu.com
>>>> https://lists.ubuntu.com/mailman/listinfo/kernel-team
>>>
>>>
>>>
>>
>
>
diff mbox

Patch

diff --git a/debian.master/d-i/modules/crypto-modules b/debian.master/d-i/modules/crypto-modules
index 333f5a5..1b8ba41 100644
--- a/debian.master/d-i/modules/crypto-modules
+++ b/debian.master/d-i/modules/crypto-modules
@@ -24,6 +24,9 @@  cryptd ?
 cryptoloop ?
 crypto_null ?
 crypto_user ?
+crc32 ?
+crypto ?
+crypto_crc32c ?
 ctr ?
 cts ?
 deflate ?
diff --git a/debian.master/d-i/modules/fs-core-modules b/debian.master/d-i/modules/fs-core-modules
index 7a7c2fc..84f2266 100644
--- a/debian.master/d-i/modules/fs-core-modules
+++ b/debian.master/d-i/modules/fs-core-modules
@@ -1,5 +1,7 @@ 
 ext2 ?
+ext4 ?
 jfs ?
+jbd2 ?
 reiserfs ?
 xfs ?
 zfs ?
diff --git a/debian.master/d-i/modules/scsi-modules b/debian.master/d-i/modules/scsi-modules
index 46e0ac9..5c1f86b 100644
--- a/debian.master/d-i/modules/scsi-modules
+++ b/debian.master/d-i/modules/scsi-modules
@@ -123,6 +123,7 @@  isci ?
 mlx4_ib ?
 mlx5_ib ?
 zfcp ?
+sd_mod ?
 
 # device handlers
 scsi_dh_alua ?