Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
[SOLVED] why cant i buld in some options ?
View unanswered posts
View posts from last 24 hours

 
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware
View previous topic :: View next topic  
Author Message
picarica
Tux's lil' helper
Tux's lil' helper


Joined: 11 Aug 2018
Posts: 139

PostPosted: Fri Oct 18, 2019 4:03 pm    Post subject: [SOLVED] why cant i buld in some options ? Reply with quote

so i hade genkernels .config because of testin purposes, and i could builtind kernel options for lvm
https://wiki.gentoo.org/wiki/LVM#Kernel here they are listed

but i place my own kenrel config and i cannot build them in ? only as modules why is that? and will it work as intented? i want them build-in for safety, how do i build them in ?


Last edited by picarica on Fri Oct 18, 2019 9:37 pm; edited 1 time in total
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 43979
Location: 56N 3W

PostPosted: Fri Oct 18, 2019 5:06 pm    Post subject: Reply with quote

picarica,

Go up the menuconfig tree one level at a time.

Code:
Device Drivers  --->
   Multiple devices driver support (RAID and LVM)  --->
       <*> Device mapper support
           <*> Crypt target support
           <*> Snapshot target
           <*> Mirror target
           <*> Multipath target
               <*> I/O Path Selector based on the number of in-flight I/Os
               <*> I/O Path Selector based on the service time


If a parent in shown as <M> all the children must be <M> too.
Think about how
Code:
Multipath target
could be a loadable module and the things that depend on it be built into the kernel.

I suspect you have
Code:
<M> Device mapper support


Does it work as intended ... yes it works as intended either built in or as modules.
Modules may not work as you expect.

Built in code is loaded by the boot loader and is available to the kernel immediately.
Loadable modules have to be loaded from somewhere before they can be used. That somewhere is either an initrd, which is loaded by the boot loader or the root filesystem.

Maybe a beginners mistake will illustrate the difference. (Don't do this at home)
You build your own kernel, with no initrd and make your root filesystem driver a loadable module.
The kernel loads but cannot mount the root filesystem as it needs to mount root to load the module to read the root filesystem.
That's one of many circular dependencies the boot process has to solve.

The fix is to either make the root filesystem driver built in or provide an initrd.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
picarica
Tux's lil' helper
Tux's lil' helper


Joined: 11 Aug 2018
Posts: 139

PostPosted: Fri Oct 18, 2019 9:17 pm    Post subject: Reply with quote

NeddySeagoon wrote:
picarica,

Go up the menuconfig tree one level at a time.

Code:
Device Drivers  --->
   Multiple devices driver support (RAID and LVM)  --->
       <*> Device mapper support
           <*> Crypt target support
           <*> Snapshot target
           <*> Mirror target
           <*> Multipath target
               <*> I/O Path Selector based on the number of in-flight I/Os
               <*> I/O Path Selector based on the service time


If a parent in shown as <M> all the children must be <M> too.
Think about how
Code:
Multipath target
could be a loadable module and the things that depend on it be built into the kernel.

I suspect you have
Code:
<M> Device mapper support


Does it work as intended ... yes it works as intended either built in or as modules.
Modules may not work as you expect.

Built in code is loaded by the boot loader and is available to the kernel immediately.
Loadable modules have to be loaded from somewhere before they can be used. That somewhere is either an initrd, which is loaded by the boot loader or the root filesystem.

Maybe a beginners mistake will illustrate the difference. (Don't do this at home)
You build your own kernel, with no initrd and make your root filesystem driver a loadable module.
The kernel loads but cannot mount the root filesystem as it needs to mount root to load the module to read the root filesystem.
That's one of many circular dependencies the boot process has to solve.

The fix is to either make the root filesystem driver built in or provide an initrd.


well the problem is that i cannot turn Device mapper support to built-in.

see for yourself
Back to top
View user's profile Send private message
NeddySeagoon
Administrator
Administrator


Joined: 05 Jul 2003
Posts: 43979
Location: 56N 3W

PostPosted: Fri Oct 18, 2019 9:29 pm    Post subject: Reply with quote

picarica,

Apply the solution I posted recursively ... go up to the next menu level and change it from <M> to <*> and so on.

Code:
[*] Multiple devices driver support (RAID and LVM)  --->
can only be on or off.
If its off, you don't get Raid or LVM at all.


The help says
Code:

  │ Symbol: BLK_DEV_DM [=y]                                                               │ 
  │ Type  : tristate                                                                      │ 
  │ Prompt: Device mapper support                                                         │ 
  │   Location:                                                                           │ 
  │     -> Device Drivers                                                                 │ 
  │       -> Multiple devices driver support (RAID and LVM) (MD [=y])                     │ 
  │   Defined at drivers/md/Kconfig:202                                                   │ 
  │   Depends on: MD [=y] && (DAX [=y] || DAX [=y]=n)                                     │ 
  │   Selects: BLK_DEV_DM_BUILTIN [=y]


How do you have DAX set?


If you are still having problems, please put your kernel .config file onto a pastebin site.
wgetpaste can help with that.
_________________
Regards,

NeddySeagoon

Computer users fall into two groups:-
those that do backups
those that have never had a hard drive fail.
Back to top
View user's profile Send private message
picarica
Tux's lil' helper
Tux's lil' helper


Joined: 11 Aug 2018
Posts: 139

PostPosted: Fri Oct 18, 2019 9:37 pm    Post subject: Reply with quote

NeddySeagoon wrote:
picarica,

Apply the solution I posted recursively ... go up to the next menu level and change it from <M> to <*> and so on.

Code:
[*] Multiple devices driver support (RAID and LVM)  --->
can only be on or off.
If its off, you don't get Raid or LVM at all.


The help says
Code:

  │ Symbol: BLK_DEV_DM [=y]                                                               │ 
  │ Type  : tristate                                                                      │ 
  │ Prompt: Device mapper support                                                         │ 
  │   Location:                                                                           │ 
  │     -> Device Drivers                                                                 │ 
  │       -> Multiple devices driver support (RAID and LVM) (MD [=y])                     │ 
  │   Defined at drivers/md/Kconfig:202                                                   │ 
  │   Depends on: MD [=y] && (DAX [=y] || DAX [=y]=n)                                     │ 
  │   Selects: BLK_DEV_DM_BUILTIN [=y]


How do you have DAX set?


If you are still having problems, please put your kernel .config file onto a pastebin site.
wgetpaste can help with that.


thank you, that was the problem, i had DAX as module, after i built it in i could built device mapper too, thanks for your help, it was simplier than i thought !
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Kernel & Hardware All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum