* [PATCH] Split of the normal mode
@ 2009-03-29 9:25 Bean
2009-03-29 9:40 ` Vesa Jääskeläinen
0 siblings, 1 reply; 48+ messages in thread
From: Bean @ 2009-03-29 9:25 UTC (permalink / raw)
To: The development of GRUB 2
[-- Attachment #1: Type: text/plain, Size: 1346 bytes --]
Hi,
This patch split the function of normal mode into small modules, here
is a summary:
1, Move dynamic command loader to commands/dyncmd.c (dyncmd.mod)
2, Move automatic fs loader to fs/autofs.c (autofs.mod)
3, Split normal mode into three major parts:
parser/normal - normal mode parser (nparser.mod)
reader/normal - normal mode command line reader (nreader.mod)
menu/text - menu viewer (tmenu.mod)
4, Generic menu function move to menu/menu.c and menu/menu_viewer.c. (menu.mod)
5, Misc function move to lib/misc.c lib/completion.c (misc.mod)
6, setjmp function move to lib/i386, lib/x86_64, lib/powerpc and
lib/sparc64 (setjmp.mod)
Three new handler class:
parser
reader
menu_viewer
The kernel also split into parser and reader code.
grub-mkimage now support boot config file, which would be embed in
core.img. At startup, the kernel parser would read the config file and
execute the commands. Here is a sample boot config file that would
bring grub2 to an environment similar to the previous normal mode:
insmod dyncmd
insmod autofs
insmod nparser
handler parser normal
insmod nreader
handler reader normal
insmod tmenu
configfile /boot/grub/grub.cfg
The kernel parser is not very smart, so only use unix eol ('\n'), and
don't leave extra space.
grub-mkimage -c boot.cfg ...
This patch should apply cleanly with svn r2046.
--
Bean
[-- Attachment #2: split.zip --]
[-- Type: application/zip, Size: 39687 bytes --]
^ permalink raw reply [flat|nested] 48+ messages in thread* Re: [PATCH] Split of the normal mode 2009-03-29 9:25 [PATCH] Split of the normal mode Bean @ 2009-03-29 9:40 ` Vesa Jääskeläinen 2009-03-29 10:09 ` Yoshinori K. Okuji 0 siblings, 1 reply; 48+ messages in thread From: Vesa Jääskeläinen @ 2009-03-29 9:40 UTC (permalink / raw) To: The development of GRUB 2 Bean wrote: > Hi, > > This patch split the function of normal mode into small modules, here > is a summary: > > 1, Move dynamic command loader to commands/dyncmd.c (dyncmd.mod) > 2, Move automatic fs loader to fs/autofs.c (autofs.mod) > 3, Split normal mode into three major parts: > parser/normal - normal mode parser (nparser.mod) > reader/normal - normal mode command line reader (nreader.mod) > menu/text - menu viewer (tmenu.mod) > 4, Generic menu function move to menu/menu.c and menu/menu_viewer.c. (menu.mod) > 5, Misc function move to lib/misc.c lib/completion.c (misc.mod) > 6, setjmp function move to lib/i386, lib/x86_64, lib/powerpc and > lib/sparc64 (setjmp.mod) Umh... I could somewhat agree with moving text menu out of normal.mod. But... I feel we have passed the over engineering milestone sometime ago... and I am not frankly happy about that... Changes like this just make it a) harder to maintain, b) bigger overall size impact, c) as a plus more modular approach... I also fear that we seem to be missing some lead for the project that could use his authority to make decisions... ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 9:40 ` Vesa Jääskeläinen @ 2009-03-29 10:09 ` Yoshinori K. Okuji 2009-03-29 10:43 ` phcoder ` (2 more replies) 0 siblings, 3 replies; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-03-29 10:09 UTC (permalink / raw) To: The development of GRUB 2 On Sunday 29 March 2009 18:40:16 Vesa Jääskeläinen wrote: > Bean wrote: > > Hi, > > > > This patch split the function of normal mode into small modules, here > > is a summary: > > > > 1, Move dynamic command loader to commands/dyncmd.c (dyncmd.mod) > > 2, Move automatic fs loader to fs/autofs.c (autofs.mod) > > 3, Split normal mode into three major parts: > > parser/normal - normal mode parser (nparser.mod) > > reader/normal - normal mode command line reader (nreader.mod) > > menu/text - menu viewer (tmenu.mod) > > 4, Generic menu function move to menu/menu.c and menu/menu_viewer.c. > > (menu.mod) 5, Misc function move to lib/misc.c lib/completion.c > > (misc.mod) > > 6, setjmp function move to lib/i386, lib/x86_64, lib/powerpc and > > lib/sparc64 (setjmp.mod) > > Umh... I could somewhat agree with moving text menu out of normal.mod. > But... > > I feel we have passed the over engineering milestone sometime ago... and > I am not frankly happy about that... > > Changes like this just make it a) harder to maintain, b) bigger overall > size impact, c) as a plus more modular approach... > > I also fear that we seem to be missing some lead for the project that > could use his authority to make decisions... Indeed. I don't understand this tendency about splitting modules at all. What is the motivation behind? What is the real benefit for the user? From my point of view, it is wrong to force the user to manually load modules, generally. This includes writing "insmod" in config files. Look at Linux. It is quite rare to execute insmod or modprobe directly. Most of the time, modules are loaded on demand. This is the user-friendliness. You should select compile-time "loading" (i.e. linking) whenever possible. If a function is loaded eventually, it should be linked at compile time. You should select automatic loading, if you need runtime linking. Manual loading should be considered evil, in principle. FYI, I am planning to make a full review of recent changes (i.e. all changes made after I stopped reviewing every patch), and trash/revert/rewrite/blame everything I don't like. Changes made for no good reason must be all reverted. In brief, I take back the leadership of this project for general directions. For some subsystems (e.g. the coreboot support), I continue leaving the responsibility to those who know better or are more active. Once the current code is reviewed and fixed (at some degree), I will make a new release. Any objection? Regards, Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 10:09 ` Yoshinori K. Okuji @ 2009-03-29 10:43 ` phcoder 2009-03-29 10:53 ` Vesa Jääskeläinen 2009-03-29 11:29 ` Yoshinori K. Okuji 2009-03-29 10:48 ` [PATCH] Split of the normal mode Vesa Jääskeläinen 2009-04-01 13:19 ` Robert Millan 2 siblings, 2 replies; 48+ messages in thread From: phcoder @ 2009-03-29 10:43 UTC (permalink / raw) To: The development of GRUB 2 I'm actually quite unhappy with the grub's authority in general. Some people can commit their patches after a week of no replies while others like me have to wait that someone has time to review their patches in depth. I already have a collection of patches that are not commited, not because someone objects against them but just because nobody qualified enough has time to review and commit it. All this despite having already signed copyright assignment which because of slowness of FSF took more time than it should. From developer viewpoint it's very frustrating experience. If I wasn't so motivated as I am I would have already given up. IMO opinion if we want people coding for grub2 this has to be changed. But now you come and say you want to revert some patches just because they seem useless to you or rewrite some code just because you find it ugly or because it has a minor bug which could be easily fixed without rewriting. IMO this can easily drive developers to fork or leave project altogether. And additionally your energy would be much better spent in writing new stuff and making/reviewing design propositions than rewriting chunks of already working code. Sorry for being somewhat rude but I really find it frustrating this coder-unfriendliness > In brief, I take back the leadership of this project for general directions. > For some subsystems (e.g. the coreboot support), I continue leaving the > responsibility to those who know better or are more active. Once the current > code is reviewed and fixed (at some degree), I will make a new release. > > Any objection? > > Regards, > Okuji -- Regards Vladimir 'phcoder' Serbinenko ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 10:43 ` phcoder @ 2009-03-29 10:53 ` Vesa Jääskeläinen 2009-03-29 11:33 ` phcoder 2009-03-29 11:29 ` Yoshinori K. Okuji 1 sibling, 1 reply; 48+ messages in thread From: Vesa Jääskeläinen @ 2009-03-29 10:53 UTC (permalink / raw) To: The development of GRUB 2 Here I must comment that in some cases it is favorable to do it this way. I personally will only commit changes that I am happy to live with. Even if you are developer with SVN commit rights it is in some cases good idea to have general review of the patch... but there has been some lack of the time from people to review them (and it does not cross everyones interest zones, thus get attention to the patch). phcoder wrote: > I'm actually quite unhappy with the grub's authority in general. Some > people can commit their patches after a week of no replies while others > like me have to wait that someone has time to review their patches in > depth. I already have a collection of patches that are not commited, not > because someone objects against them but just because nobody qualified > enough has time to review and commit it. All this despite having already > signed copyright assignment which because of slowness of FSF took more > time than it should. From developer viewpoint it's very frustrating > experience. If I wasn't so motivated as I am I would have already given > up. IMO opinion if we want people coding for grub2 this has to be > changed. But now you come and say you want to revert some patches just > because they seem useless to you or rewrite some code just because you > find it ugly or because it has a minor bug which could be easily fixed > without rewriting. IMO this can easily drive developers to fork or leave > project altogether. And additionally your energy would be much better > spent in writing new stuff and making/reviewing design propositions than > rewriting chunks of already working code. > Sorry for being somewhat rude but I really find it frustrating this > coder-unfriendliness >> In brief, I take back the leadership of this project for general >> directions. For some subsystems (e.g. the coreboot support), I >> continue leaving the responsibility to those who know better or are >> more active. Once the current code is reviewed and fixed (at some >> degree), I will make a new release. >> >> Any objection? >> >> Regards, >> Okuji > > ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 10:53 ` Vesa Jääskeläinen @ 2009-03-29 11:33 ` phcoder 2009-03-29 11:51 ` Yoshinori K. Okuji 0 siblings, 1 reply; 48+ messages in thread From: phcoder @ 2009-03-29 11:33 UTC (permalink / raw) To: The development of GRUB 2 I agree when it's about big changes. I wouldalso not commit anything what isn't quite tested or may break something. But when one-line bugfixes stay uncommited during 2-3 weaks it's something that isn't quite ok. Also if noone comments a relatively small patch in 1-2 weeks I think we should consider that everybody is happy with the patch and it should be commited. However somehow on this project it's not the same rules for everyone. Vesa Jääskeläinen wrote: > Here I must comment that in some cases it is favorable to do it this > way. I personally will only commit changes that I am happy to live with. > Even if you are developer with SVN commit rights it is in some cases > good idea to have general review of the patch... but there has been some > lack of the time from people to review them (and it does not cross > everyones interest zones, thus get attention to the patch). > > phcoder wrote: >> I'm actually quite unhappy with the grub's authority in general. Some >> people can commit their patches after a week of no replies while others >> like me have to wait that someone has time to review their patches in >> depth. I already have a collection of patches that are not commited, not >> because someone objects against them but just because nobody qualified >> enough has time to review and commit it. All this despite having already >> signed copyright assignment which because of slowness of FSF took more >> time than it should. From developer viewpoint it's very frustrating >> experience. If I wasn't so motivated as I am I would have already given >> up. IMO opinion if we want people coding for grub2 this has to be >> changed. But now you come and say you want to revert some patches just >> because they seem useless to you or rewrite some code just because you >> find it ugly or because it has a minor bug which could be easily fixed >> without rewriting. IMO this can easily drive developers to fork or leave >> project altogether. And additionally your energy would be much better >> spent in writing new stuff and making/reviewing design propositions than >> rewriting chunks of already working code. >> Sorry for being somewhat rude but I really find it frustrating this >> coder-unfriendliness >>> In brief, I take back the leadership of this project for general >>> directions. For some subsystems (e.g. the coreboot support), I >>> continue leaving the responsibility to those who know better or are >>> more active. Once the current code is reviewed and fixed (at some >>> degree), I will make a new release. >>> >>> Any objection? >>> >>> Regards, >>> Okuji >> > > > > _______________________________________________ > Grub-devel mailing list > Grub-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/grub-devel -- Regards Vladimir 'phcoder' Serbinenko ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 11:33 ` phcoder @ 2009-03-29 11:51 ` Yoshinori K. Okuji 2009-03-29 12:09 ` Bean 2009-03-29 13:00 ` phcoder 0 siblings, 2 replies; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-03-29 11:51 UTC (permalink / raw) To: The development of GRUB 2 On Sunday 29 March 2009 20:33:48 phcoder wrote: > I agree when it's about big changes. I wouldalso not commit anything > what isn't quite tested or may break something. But when one-line > bugfixes stay uncommited during 2-3 weaks it's something that isn't > quite ok. Also if noone comments a relatively small patch in 1-2 weeks I > think we should consider that everybody is happy with the patch and it > should be commited. However somehow on this project it's not the same > rules for everyone. You are right. For very small, trivial patches, I will fix the problem by giving the write permission to you. For complex or big patches, I recommend that you use the bug tracker on Savannah. I know that not many people use it, but putting patches on the mailing list is not quite convenient when we have a huge backlog. The discussion can be still done in the mailing list, but I need an easy way to glance at a list of all pending patches. Is this good enough for you? Regards, Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 11:51 ` Yoshinori K. Okuji @ 2009-03-29 12:09 ` Bean 2009-03-29 13:10 ` Yoshinori K. Okuji 2009-03-29 13:00 ` phcoder 1 sibling, 1 reply; 48+ messages in thread From: Bean @ 2009-03-29 12:09 UTC (permalink / raw) To: The development of GRUB 2 Hi, Some of my consideration about splitting of normal mode. 1, In some environment, we have size limit of the boot image. Normal.mod is too big, and rescue mode has too little functionality. Using the split method, we could combine modules in anyway we wanted. 2, Speaking of linux, it's actually doing the same thing. The kernel is in vmlinuz, while the initialization script is in initrd.img. We don't want the user to enter those commands manually, a default boot.cfg should be used by grub-mkimage. 3. Currently, the structure of normal.mod just mix things together to a point that make modification difficult, if not impossible. For example, the current bash script engine is not quite suitable for gui interaction. With the split mode, we could develop a new parser without interfere with existing function. -- Bean ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 12:09 ` Bean @ 2009-03-29 13:10 ` Yoshinori K. Okuji 2009-03-29 13:59 ` Bean 2009-03-30 20:04 ` Colin D Bennett 0 siblings, 2 replies; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-03-29 13:10 UTC (permalink / raw) To: The development of GRUB 2 On Sunday 29 March 2009 21:09:05 Bean wrote: > Hi, > > Some of my consideration about splitting of normal mode. > > 1, In some environment, we have size limit of the boot image. > Normal.mod is too big, and rescue mode has too little functionality. > Using the split method, we could combine modules in anyway we wanted. In my opinion, you are postponing the decision to the runtime too much. If you have N modules, you have N! combinations, but we don't need to support that many in reality. I bet that you know which portions of the normal mode you would like to select for your own need. Surely, others might have different needs, but the number of modules you added looks overkill to me. > 2, Speaking of linux, it's actually doing the same thing. The kernel > is in vmlinuz, while the initialization script is in initrd.img. We > don't want the user to enter those commands manually, a default > boot.cfg should be used by grub-mkimage. Mmh, I hardly agree on this. The purpose of initrd.img is, although it could be abused, to bootstrap an OS environment for further work, which is analogous to core.img in GRUB. For the rest of the work, ifplugd, udev, etc. take care of loading appropriate modules on demand. > 3. Currently, the structure of normal.mod just mix things together to > a point that make modification difficult, if not impossible. For > example, the current bash script engine is not quite suitable for gui > interaction. With the split mode, we could develop a new parser > without interfere with existing function. I prefer that you replace the existing code with a better implementation in this case. From my point of view, fancy menu support is a key feature in GRUB, thus if the current engine is not good enough, we need to improve it rather than to provide an alternative. Regards, Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 13:10 ` Yoshinori K. Okuji @ 2009-03-29 13:59 ` Bean 2009-03-29 14:20 ` Yoshinori K. Okuji 2009-03-30 20:04 ` Colin D Bennett 1 sibling, 1 reply; 48+ messages in thread From: Bean @ 2009-03-29 13:59 UTC (permalink / raw) To: The development of GRUB 2 On Sun, Mar 29, 2009 at 9:10 PM, Yoshinori K. Okuji <okuji@enbug.org> wrote: > On Sunday 29 March 2009 21:09:05 Bean wrote: >> Hi, >> >> Some of my consideration about splitting of normal mode. >> >> 1, In some environment, we have size limit of the boot image. >> Normal.mod is too big, and rescue mode has too little functionality. >> Using the split method, we could combine modules in anyway we wanted. > > In my opinion, you are postponing the decision to the runtime too much. If you > have N modules, you have N! combinations, but we don't need to support that > many in reality. I bet that you know which portions of the normal mode you > would like to select for your own need. Surely, others might have different > needs, but the number of modules you added looks overkill to me. Actually, there is still only one normal configuration. But others could be useful in some situation. We could hide the details from normal user, but they can do such configuration if required. > >> 2, Speaking of linux, it's actually doing the same thing. The kernel >> is in vmlinuz, while the initialization script is in initrd.img. We >> don't want the user to enter those commands manually, a default >> boot.cfg should be used by grub-mkimage. > > Mmh, I hardly agree on this. The purpose of initrd.img is, although it could > be abused, to bootstrap an OS environment for further work, which is > analogous to core.img in GRUB. For the rest of the work, ifplugd, udev, etc. > take care of loading appropriate modules on demand. > Sometime we need to setup the environment before it can access boot media. For example, locating the boot partition using label/uuid, setting the network address, etc, this is where boot.cfg can be quite useful. >> 3. Currently, the structure of normal.mod just mix things together to >> a point that make modification difficult, if not impossible. For >> example, the current bash script engine is not quite suitable for gui >> interaction. With the split mode, we could develop a new parser >> without interfere with existing function. > > I prefer that you replace the existing code with a better implementation in > this case. From my point of view, fancy menu support is a key feature in > GRUB, thus if the current engine is not good enough, we need to improve it > rather than to provide an alternative. If I were to fix this problem, I'd separate parser and reader code anyway. In fact, colin already separate the menu viewer code. The problem is to still keep them in a single normal.mod, or to move them to logical independent modules. I see no problem with the later. -- Bean ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 13:59 ` Bean @ 2009-03-29 14:20 ` Yoshinori K. Okuji 2009-03-29 14:30 ` Bean 0 siblings, 1 reply; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-03-29 14:20 UTC (permalink / raw) To: The development of GRUB 2 On Sunday 29 March 2009 22:59:53 Bean wrote: > On Sun, Mar 29, 2009 at 9:10 PM, Yoshinori K. Okuji <okuji@enbug.org> wrote: > > On Sunday 29 March 2009 21:09:05 Bean wrote: > >> Hi, > >> > >> Some of my consideration about splitting of normal mode. > >> > >> 1, In some environment, we have size limit of the boot image. > >> Normal.mod is too big, and rescue mode has too little functionality. > >> Using the split method, we could combine modules in anyway we wanted. > > > > In my opinion, you are postponing the decision to the runtime too much. > > If you have N modules, you have N! combinations, but we don't need to > > support that many in reality. I bet that you know which portions of the > > normal mode you would like to select for your own need. Surely, others > > might have different needs, but the number of modules you added looks > > overkill to me. > > Actually, there is still only one normal configuration. But others > could be useful in some situation. We could hide the details from > normal user, but they can do such configuration if required. My basic attitude is "making it only if it is used in pracice". If your goal is virtual, I don't want to accept it. > > >> 2, Speaking of linux, it's actually doing the same thing. The kernel > >> is in vmlinuz, while the initialization script is in initrd.img. We > >> don't want the user to enter those commands manually, a default > >> boot.cfg should be used by grub-mkimage. > > > > Mmh, I hardly agree on this. The purpose of initrd.img is, although it > > could be abused, to bootstrap an OS environment for further work, which > > is analogous to core.img in GRUB. For the rest of the work, ifplugd, > > udev, etc. take care of loading appropriate modules on demand. > > Sometime we need to setup the environment before it can access boot > media. For example, locating the boot partition using label/uuid, > setting the network address, etc, this is where boot.cfg can be quite > useful. If you use a label, label support should be loaded automatically. If you use an uuid, uuid support should be loaded automatically. If you set up a network, network support should be loaded automatically. So I see no reason to stop automatic loading. > >> 3. Currently, the structure of normal.mod just mix things together to > >> a point that make modification difficult, if not impossible. For > >> example, the current bash script engine is not quite suitable for gui > >> interaction. With the split mode, we could develop a new parser > >> without interfere with existing function. > > > > I prefer that you replace the existing code with a better implementation > > in this case. From my point of view, fancy menu support is a key feature > > in GRUB, thus if the current engine is not good enough, we need to > > improve it rather than to provide an alternative. > > If I were to fix this problem, I'd separate parser and reader code > anyway. In fact, colin already separate the menu viewer code. The > problem is to still keep them in a single normal.mod, or to move them > to logical independent modules. I see no problem with the later. Views can be separete. I don't deny this. But the scripting engine itself should stay in normal mode. What is wrong with this? Regards, Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 14:20 ` Yoshinori K. Okuji @ 2009-03-29 14:30 ` Bean 2009-03-29 14:54 ` Yoshinori K. Okuji 0 siblings, 1 reply; 48+ messages in thread From: Bean @ 2009-03-29 14:30 UTC (permalink / raw) To: The development of GRUB 2 On Sun, Mar 29, 2009 at 10:20 PM, Yoshinori K. Okuji <okuji@enbug.org> wrote: >> >> 2, Speaking of linux, it's actually doing the same thing. The kernel >> >> is in vmlinuz, while the initialization script is in initrd.img. We >> >> don't want the user to enter those commands manually, a default >> >> boot.cfg should be used by grub-mkimage. >> > >> > Mmh, I hardly agree on this. The purpose of initrd.img is, although it >> > could be abused, to bootstrap an OS environment for further work, which >> > is analogous to core.img in GRUB. For the rest of the work, ifplugd, >> > udev, etc. take care of loading appropriate modules on demand. >> >> Sometime we need to setup the environment before it can access boot >> media. For example, locating the boot partition using label/uuid, >> setting the network address, etc, this is where boot.cfg can be quite >> useful. > > If you use a label, label support should be loaded automatically. > If you use an uuid, uuid support should be loaded automatically. > If you set up a network, network support should be loaded automatically. > > So I see no reason to stop automatic loading. But how to store the parameters ? Boot media is not available, so we can't read file, and we can't embed them in code. > >> >> 3. Currently, the structure of normal.mod just mix things together to >> >> a point that make modification difficult, if not impossible. For >> >> example, the current bash script engine is not quite suitable for gui >> >> interaction. With the split mode, we could develop a new parser >> >> without interfere with existing function. >> > >> > I prefer that you replace the existing code with a better implementation >> > in this case. From my point of view, fancy menu support is a key feature >> > in GRUB, thus if the current engine is not good enough, we need to >> > improve it rather than to provide an alternative. >> >> If I were to fix this problem, I'd separate parser and reader code >> anyway. In fact, colin already separate the menu viewer code. The >> problem is to still keep them in a single normal.mod, or to move them >> to logical independent modules. I see no problem with the later. > > Views can be separete. I don't deny this. But the scripting engine itself > should stay in normal mode. What is wrong with this? The script engine is quite large, if we put them all in normal.mod, it'd be messy. -- Bean ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 14:30 ` Bean @ 2009-03-29 14:54 ` Yoshinori K. Okuji 2009-03-29 15:17 ` Bean 0 siblings, 1 reply; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-03-29 14:54 UTC (permalink / raw) To: The development of GRUB 2 On Sunday 29 March 2009 23:30:48 Bean wrote: > > If you use a label, label support should be loaded automatically. > > If you use an uuid, uuid support should be loaded automatically. > > If you set up a network, network support should be loaded automatically. > > > > So I see no reason to stop automatic loading. > > But how to store the parameters ? Boot media is not available, so we > can't read file, and we can't embed them in code. Could you be more specific? What case are you talking about? > >> >> 3. Currently, the structure of normal.mod just mix things together to > >> >> a point that make modification difficult, if not impossible. For > >> >> example, the current bash script engine is not quite suitable for gui > >> >> interaction. With the split mode, we could develop a new parser > >> >> without interfere with existing function. > >> > > >> > I prefer that you replace the existing code with a better > >> > implementation in this case. From my point of view, fancy menu support > >> > is a key feature in GRUB, thus if the current engine is not good > >> > enough, we need to improve it rather than to provide an alternative. > >> > >> If I were to fix this problem, I'd separate parser and reader code > >> anyway. In fact, colin already separate the menu viewer code. The > >> problem is to still keep them in a single normal.mod, or to move them > >> to logical independent modules. I see no problem with the later. > > > > Views can be separete. I don't deny this. But the scripting engine itself > > should stay in normal mode. What is wrong with this? > > The script engine is quite large, if we put them all in normal.mod, > it'd be messy. Do you want to use GRUB without the scripting engine? Regards, Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 14:54 ` Yoshinori K. Okuji @ 2009-03-29 15:17 ` Bean 2009-03-30 15:42 ` Yoshinori K. Okuji 0 siblings, 1 reply; 48+ messages in thread From: Bean @ 2009-03-29 15:17 UTC (permalink / raw) To: The development of GRUB 2 On Sun, Mar 29, 2009 at 10:54 PM, Yoshinori K. Okuji <okuji@enbug.org> wrote: > On Sunday 29 March 2009 23:30:48 Bean wrote: >> > If you use a label, label support should be loaded automatically. >> > If you use an uuid, uuid support should be loaded automatically. >> > If you set up a network, network support should be loaded automatically. >> > >> > So I see no reason to stop automatic loading. >> >> But how to store the parameters ? Boot media is not available, so we >> can't read file, and we can't embed them in code. > > Could you be more specific? What case are you talking about? > For example, something the boot modules can't detect boot partition properly, such as some raid/lvm, etc. We might want to use uuid or label to identify the partition. Then, there is a problem, how to store the uuid value for the boot modules to use. Previously, I have thought of embedding a envblk in the kernel, then modules can read variables at startup. But this method is quite clumsy, and it needs to reserve valuable kernel size. Using a boot script seems much flexible to me. Besides, it doesn't require additional kernel space. The kernel can already parse commands in rescue shell, I just reuse this function to run the boot script. >> >> >> 3. Currently, the structure of normal.mod just mix things together to >> >> >> a point that make modification difficult, if not impossible. For >> >> >> example, the current bash script engine is not quite suitable for gui >> >> >> interaction. With the split mode, we could develop a new parser >> >> >> without interfere with existing function. >> >> > >> >> > I prefer that you replace the existing code with a better >> >> > implementation in this case. From my point of view, fancy menu support >> >> > is a key feature in GRUB, thus if the current engine is not good >> >> > enough, we need to improve it rather than to provide an alternative. >> >> >> >> If I were to fix this problem, I'd separate parser and reader code >> >> anyway. In fact, colin already separate the menu viewer code. The >> >> problem is to still keep them in a single normal.mod, or to move them >> >> to logical independent modules. I see no problem with the later. >> > >> > Views can be separete. I don't deny this. But the scripting engine itself >> > should stay in normal mode. What is wrong with this? >> >> The script engine is quite large, if we put them all in normal.mod, >> it'd be messy. > > Do you want to use GRUB without the scripting engine? The point is to support alternative script engine. Actually, I'm thinking about integrating clisp into grub2. But some people may not know about it, so they can still use the old bash engine. -- Bean ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 15:17 ` Bean @ 2009-03-30 15:42 ` Yoshinori K. Okuji 0 siblings, 0 replies; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-03-30 15:42 UTC (permalink / raw) To: The development of GRUB 2 On Monday 30 March 2009 00:17:59 Bean wrote: > >> But how to store the parameters ? Boot media is not available, so we > >> can't read file, and we can't embed them in code. > > > > Could you be more specific? What case are you talking about? > > For example, something the boot modules can't detect boot partition > properly, such as some raid/lvm, etc. We might want to use uuid or > label to identify the partition. Then, there is a problem, how to > store the uuid value for the boot modules to use. > > Previously, I have thought of embedding a envblk in the kernel, then > modules can read variables at startup. But this method is quite > clumsy, and it needs to reserve valuable kernel size. Using a boot > script seems much flexible to me. Besides, it doesn't require > additional kernel space. The kernel can already parse commands in > rescue shell, I just reuse this function to run the boot script. I understand. Actually, GRUB Legacy has the same feature, named "preset menu", with which you can embed a config file in stage2. This feature is not used very much, because it requires recompilation in GRUB Legacy. > > Do you want to use GRUB without the scripting engine? > > The point is to support alternative script engine. Actually, I'm > thinking about integrating clisp into grub2. But some people may not > know about it, so they can still use the old bash engine. Sounds nice. :) But I still think that your patch splits into too many. If you split normal mode into: - a script module (sh.mod?) - a text menu module (menu.mod?) - the rest (normal.mod) then, that's fine. Regards, Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 13:10 ` Yoshinori K. Okuji 2009-03-29 13:59 ` Bean @ 2009-03-30 20:04 ` Colin D Bennett 2009-03-31 6:11 ` Bean 1 sibling, 1 reply; 48+ messages in thread From: Colin D Bennett @ 2009-03-30 20:04 UTC (permalink / raw) To: The development of GRUB 2; +Cc: okuji [-- Attachment #1: Type: text/plain, Size: 1784 bytes --] On Sun, 29 Mar 2009 22:10:34 +0900 "Yoshinori K. Okuji" <okuji@enbug.org> wrote: > On Sunday 29 March 2009 21:09:05 Bean wrote: > > 3. Currently, the structure of normal.mod just mix things together to > > a point that make modification difficult, if not impossible. For > > example, the current bash script engine is not quite suitable for gui > > interaction. With the split mode, we could develop a new parser > > without interfere with existing function. > > I prefer that you replace the existing code with a better implementation in > this case. From my point of view, fancy menu support is a key feature in > GRUB, thus if the current engine is not good enough, we need to improve it > rather than to provide an alternative. About the fancy menu support, I hope to pursue getting it finally committed soon; I just need to synchronize my graphical menu patch set with the current GRUB codebase. I have just been extremely busy until now, but I expect to get this done in the near future. The current GRUB scripting engine is OK for basic configuration, and no other scripting support is really required for the fancy menu. However, I still like the idea of additionally supporting a tiny but powerful general-purpose scripting language such as Lua (~100 KB), Lisp/Scheme (? KB), or ECMAScript (? KB) to allow graphical menu enhancements by themes. For instance, in only a screenful of Lua code (and me never having written Lua before) I created an animated background for the menu. Certainly there are many other purposes as well that a general purpose scripting language could support. Perhaps later, after the graphical menu support is integrated into GRUB, we can explore adding scripting language support. Regards, Colin [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-30 20:04 ` Colin D Bennett @ 2009-03-31 6:11 ` Bean 2009-03-31 15:02 ` Colin D Bennett 0 siblings, 1 reply; 48+ messages in thread From: Bean @ 2009-03-31 6:11 UTC (permalink / raw) To: The development of GRUB 2 On Tue, Mar 31, 2009 at 4:04 AM, Colin D Bennett <colin@gibibit.com> wrote: > About the fancy menu support, I hope to pursue getting it finally > committed soon; I just need to synchronize my graphical menu patch set > with the current GRUB codebase. I have just been extremely busy until > now, but I expect to get this done in the near future. Oh, that would be nice. > The current GRUB scripting engine is OK for basic configuration, and no > other scripting support is really required for the fancy menu. > > However, I still like the idea of additionally supporting a tiny but > powerful general-purpose scripting language such as Lua (~100 KB), > Lisp/Scheme (? KB), or ECMAScript (? KB) to allow graphical menu > enhancements by themes. > > For instance, in only a screenful of Lua code (and me never having > written Lua before) I created an animated background for the menu. > Certainly there are many other purposes as well that a general purpose > scripting language could support. > > Perhaps later, after the graphical menu support is integrated into > GRUB, we can explore adding scripting language support. You're right, LUA is compact yet still powerful, it's quite suitable for our purpose. If it's fine with other developers, I can start working on it. Oh btw, is the license compatible ? -- Bean ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-31 6:11 ` Bean @ 2009-03-31 15:02 ` Colin D Bennett 0 siblings, 0 replies; 48+ messages in thread From: Colin D Bennett @ 2009-03-31 15:02 UTC (permalink / raw) To: The development of GRUB 2; +Cc: bean123ch [-- Attachment #1: Type: text/plain, Size: 352 bytes --] On Tue, 31 Mar 2009 14:11:28 +0800 Bean <bean123ch@gmail.com> wrote: > You're right, LUA is compact yet still powerful, it's quite suitable > for our purpose. If it's fine with other developers, I can start > working on it. Oh btw, is the license compatible ? Lua 5.1 is under the MIT X11 license, which is GPL-compatible. Regards, Colin [-- Attachment #2: signature.asc --] [-- Type: application/pgp-signature, Size: 198 bytes --] ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 11:51 ` Yoshinori K. Okuji 2009-03-29 12:09 ` Bean @ 2009-03-29 13:00 ` phcoder 2009-03-29 14:51 ` Yoshinori K. Okuji 1 sibling, 1 reply; 48+ messages in thread From: phcoder @ 2009-03-29 13:00 UTC (permalink / raw) To: The development of GRUB 2 Yes, it's perfect > For very small, trivial patches, I will fix the problem by giving the write > permission to you. > > For complex or big patches, I recommend that you use the bug tracker on > Savannah. I know that not many people use it, but putting patches on the > mailing list is not quite convenient when we have a huge backlog. The > discussion can be still done in the mailing list, but I need an easy way to > glance at a list of all pending patches. Savannah stuff is another point which needs to be fixed. E.g. we have todos both on savannah and on the wiki. Both are outdated -- Regards Vladimir 'phcoder' Serbinenko ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 13:00 ` phcoder @ 2009-03-29 14:51 ` Yoshinori K. Okuji 2009-03-29 17:07 ` phcoder 0 siblings, 1 reply; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-03-29 14:51 UTC (permalink / raw) To: The development of GRUB 2 On Sunday 29 March 2009 22:00:05 phcoder wrote: > Yes, it's perfect > > > For very small, trivial patches, I will fix the problem by giving the > > write permission to you. > > > > For complex or big patches, I recommend that you use the bug tracker on > > Savannah. I know that not many people use it, but putting patches on the > > mailing list is not quite convenient when we have a huge backlog. The > > discussion can be still done in the mailing list, but I need an easy way > > to glance at a list of all pending patches. > > Savannah stuff is another point which needs to be fixed. E.g. we have > todos both on savannah and on the wiki. Both are outdated I wish your help on this. Regards, Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 14:51 ` Yoshinori K. Okuji @ 2009-03-29 17:07 ` phcoder 2009-03-29 20:35 ` phcoder 0 siblings, 1 reply; 48+ messages in thread From: phcoder @ 2009-03-29 17:07 UTC (permalink / raw) To: The development of GRUB 2 Yoshinori K. Okuji wrote: > I wish your help on this. Ok. You have it. Just at the moment I'm quite busybut in 2 weeks I'll be more available -- Regards Vladimir 'phcoder' Serbinenko ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 17:07 ` phcoder @ 2009-03-29 20:35 ` phcoder 2009-03-30 15:49 ` Yoshinori K. Okuji 0 siblings, 1 reply; 48+ messages in thread From: phcoder @ 2009-03-29 20:35 UTC (permalink / raw) To: The development of GRUB 2 I moved todo to the svannah task track. 3 pieces aren't moved yet -PPC / Ultrasparc -Command list -Feature requests by users phcoder wrote: > > Yoshinori K. Okuji wrote: > > I wish your help on this. > Ok. You have it. Just at the moment I'm quite busybut in 2 weeks I'll be > more available -- Regards Vladimir 'phcoder' Serbinenko ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 20:35 ` phcoder @ 2009-03-30 15:49 ` Yoshinori K. Okuji 2009-03-30 15:59 ` phcoder 0 siblings, 1 reply; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-03-30 15:49 UTC (permalink / raw) To: The development of GRUB 2 On Monday 30 March 2009 05:35:08 phcoder wrote: > I moved todo to the svannah task track. > 3 pieces aren't moved yet > -PPC / Ultrasparc > -Command list > -Feature requests by users Isn't it better to remove the tasks which you moved to Savannah from the wiki? Regards, Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-30 15:49 ` Yoshinori K. Okuji @ 2009-03-30 15:59 ` phcoder 2009-04-01 7:43 ` phcoder 0 siblings, 1 reply; 48+ messages in thread From: phcoder @ 2009-03-30 15:59 UTC (permalink / raw) To: The development of GRUB 2 Once I finish (not a lot remaining) I'll just put a notice in the head that this page is preserved for historical purposes only and indications to use savannah Yoshinori K. Okuji wrote: > On Monday 30 March 2009 05:35:08 phcoder wrote: >> I moved todo to the svannah task track. >> 3 pieces aren't moved yet >> -PPC / Ultrasparc >> -Command list >> -Feature requests by users > > Isn't it better to remove the tasks which you moved to Savannah from the wiki? > > Regards, > Okuji > > > _______________________________________________ > Grub-devel mailing list > Grub-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/grub-devel -- Regards Vladimir 'phcoder' Serbinenko ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-30 15:59 ` phcoder @ 2009-04-01 7:43 ` phcoder 2009-04-01 8:07 ` David Miller 0 siblings, 1 reply; 48+ messages in thread From: phcoder @ 2009-04-01 7:43 UTC (permalink / raw) To: The development of GRUB 2 Move from todo on wiki is done except UltraSparc. David Miller: these todos seem to be very outdated by your work. If some of them or new tasks are applicable could you add them to task tracker? # Install on disk # Grub emu # Boot something # Write a grub-install script to install grub and configure OF variables properly. This will be different from PPC because Sparc has openpromfs and is missing sysfs "devspec" links into the device tree. phcoder wrote: > Once I finish (not a lot remaining) I'll just put a notice in the head > that this page is preserved for historical purposes only and indications > to use savannah > Yoshinori K. Okuji wrote: >> On Monday 30 March 2009 05:35:08 phcoder wrote: >>> I moved todo to the svannah task track. >>> 3 pieces aren't moved yet >>> -PPC / Ultrasparc >>> -Command list >>> -Feature requests by users >> >> Isn't it better to remove the tasks which you moved to Savannah from >> the wiki? >> >> Regards, >> Okuji >> >> >> _______________________________________________ >> Grub-devel mailing list >> Grub-devel@gnu.org >> http://lists.gnu.org/mailman/listinfo/grub-devel > > -- Regards Vladimir 'phcoder' Serbinenko ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-04-01 7:43 ` phcoder @ 2009-04-01 8:07 ` David Miller 2009-04-01 9:22 ` phcoder 0 siblings, 1 reply; 48+ messages in thread From: David Miller @ 2009-04-01 8:07 UTC (permalink / raw) To: grub-devel, phcoder From: phcoder <phcoder@gmail.com> Date: Wed, 01 Apr 2009 09:43:01 +0200 > Move from todo on wiki is done except UltraSparc. > David Miller: these todos seem to be very outdated by your work. If some of them or new tasks are applicable could you add them to task tracker? > # Install on disk > # Grub emu > # Boot something > # Write a grub-install script to install grub and configure OF variables properly. This will be different from PPC because Sparc has openpromfs and is missing sysfs "devspec" links into the device tree. This should all just be deleted. It's either going to be done by my patches or is irrelevant. ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-04-01 8:07 ` David Miller @ 2009-04-01 9:22 ` phcoder 2009-04-01 14:10 ` Yoshinori K. Okuji 0 siblings, 1 reply; 48+ messages in thread From: phcoder @ 2009-04-01 9:22 UTC (permalink / raw) To: David Miller; +Cc: grub-devel David Miller wrote: > From: phcoder <phcoder@gmail.com> > Date: Wed, 01 Apr 2009 09:43:01 +0200 > >> Move from todo on wiki is done except UltraSparc. >> David Miller: these todos seem to be very outdated by your work. If some of them or new tasks are applicable could you add them to task tracker? >> # Install on disk >> # Grub emu >> # Boot something >> # Write a grub-install script to install grub and configure OF variables properly. This will be different from PPC because Sparc has openpromfs and is missing sysfs "devspec" links into the device tree. > > This should all just be deleted. It's either going to be done by > my patches or is irrelevant. ok, thanks. Now everything is in savannah task tracker. As for command list I added important missing commands to task tracker and skipped not-so-useful ones. As there is some subjectivity involved if you don't agree with my choice just say it. Similar situation is with user's feature requests. I moved the ones that are out of scope of grub2 or already done to "Invalid requests" section. As for other I see none which are priority right now. If you disagree again just say. Also I'm currently adding patches which are pending for more then one week -- Regards Vladimir 'phcoder' Serbinenko ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-04-01 9:22 ` phcoder @ 2009-04-01 14:10 ` Yoshinori K. Okuji 2009-04-01 16:14 ` phcoder 0 siblings, 1 reply; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-04-01 14:10 UTC (permalink / raw) To: The development of GRUB 2 On Wednesday 01 April 2009 18:22:46 phcoder wrote: > ok, thanks. Now everything is in savannah task tracker. As for command > list I added important missing commands to task tracker and skipped > not-so-useful ones. As there is some subjectivity involved if you don't > agree with my choice just say it. Similar situation is with user's > feature requests. I moved the ones that are out of scope of grub2 or > already done to "Invalid requests" section. As for other I see none > which are priority right now. If you disagree again just say. Thank you so much. It's now so easy to look. :) Personally, I think "Add more loaders" and "Add more filesystems" should be removed, because they are not tasks but directions. They could be written at somewhere, but I don't think it is appropriate to put them into the "task manager". From my point of view, tasks must be possible to finish. Regards, Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-04-01 14:10 ` Yoshinori K. Okuji @ 2009-04-01 16:14 ` phcoder 0 siblings, 0 replies; 48+ messages in thread From: phcoder @ 2009-04-01 16:14 UTC (permalink / raw) To: The development of GRUB 2 Yoshinori K. Okuji wrote: > On Wednesday 01 April 2009 18:22:46 phcoder wrote: >> ok, thanks. Now everything is in savannah task tracker. As for command >> list I added important missing commands to task tracker and skipped >> not-so-useful ones. As there is some subjectivity involved if you don't >> agree with my choice just say it. Similar situation is with user's >> feature requests. I moved the ones that are out of scope of grub2 or >> already done to "Invalid requests" section. As for other I see none >> which are priority right now. If you disagree again just say. > > Thank you so much. It's now so easy to look. :) You're welcome. Some pending patches are still not in the tracker. I added only the ones sent after 25.01.2009 but I'll add more as time permits. Also I omitted my own patches and I'll just ping to my threads on the list. > > Personally, I think "Add more loaders" and "Add more filesystems" should be > removed, because they are not tasks but directions. They could be written at > somewhere, but I don't think it is appropriate to put them into the "task > manager". From my point of view, tasks must be possible to finish. > I agree that these aren't appropriate for task manager. However I don't want to create a separate document for just two lines because this document will be either forgotten or misused. I always have this problem when making order on my computer or in my room. Some stuff is also left which passes to no box and then I have to choose which box to use > Regards, > Okuji > > > _______________________________________________ > Grub-devel mailing list > Grub-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/grub-devel -- Regards Vladimir 'phcoder' Serbinenko ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 10:43 ` phcoder 2009-03-29 10:53 ` Vesa Jääskeläinen @ 2009-03-29 11:29 ` Yoshinori K. Okuji 2009-03-29 11:40 ` David Miller 2009-03-29 11:59 ` General design (was Re: [PATCH] Split of the normal mode) phcoder 1 sibling, 2 replies; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-03-29 11:29 UTC (permalink / raw) To: The development of GRUB 2 On Sunday 29 March 2009 19:43:33 phcoder wrote: > I'm actually quite unhappy with the grub's authority in general. Some > people can commit their patches after a week of no replies while others > like me have to wait that someone has time to review their patches in > depth. I already have a collection of patches that are not commited, not > because someone objects against them but just because nobody qualified > enough has time to review and commit it. All this despite having already > signed copyright assignment which because of slowness of FSF took more > time than it should. From developer viewpoint it's very frustrating > experience. If I wasn't so motivated as I am I would have already given > up. IMO opinion if we want people coding for grub2 this has to be > changed. But now you come and say you want to revert some patches just > because they seem useless to you or rewrite some code just because you > find it ugly or because it has a minor bug which could be easily fixed > without rewriting. IMO this can easily drive developers to fork or leave > project altogether. And additionally your energy would be much better > spent in writing new stuff and making/reviewing design propositions than > rewriting chunks of already working code. > Sorry for being somewhat rude but I really find it frustrating this > coder-unfriendliness No problem. I am very glad to hear your honest opinion. Since you are relatively new to this project, I would like to describe how it *was" when I or Marco was very active: - Trivial changes, in particular bug fixes, were allowed to be checked in without any review, if the developer is trusted. Generally, I tend to trust all people who have the write permission. Just like in real life, trust may not be built instantly; it must be harvested gradually by showing what you do and what you don't do. - Rather significant changes, even bug fixes when these require code restructuring, had to be reviewed. I think I was the only exception on this, because I am the designor. In reality, however, even I often posted messages to this mailing list before I made changes, because I appreciated others' ideas. - Design-level changes had to be always discussed a lot before being accepted. This included myself, because even I, the original author, didn't know every aspect of impacts. These rules were adopted, partly because GRUB was very much in wide use, so we should not break our software, including compatibility issues. In particular, user-visible changes must be treated very carefully, because we may not simply get rid of them, once they are incorporated, otherwise we will make millions of machines in the world unbootable. Afterwards, these rules were somehow forgotten for a practical reason: patches were not reviewed quickly or even ignored for a long time, because of the absense of leadership. I expected that we could overcome such a situation by co-maintainership, but after both I and Marco got too busy with other things, it stopped working. As you should know, several people, like Robert, Vesa, Pavel, and Bean, helped greatly, but it was not still good enough for your demand. So the current situation is like this: - Many changes have already been incorporated without proper reviews, including bad changes. The current GRUB is in a sense partly worse than before, due to this. - Many patches are pending. - Contributors work very randomly, because nobody shows what we should do and what we should not. So if nobody else can, I would like to get it straight again myself, although I am pretty busy (as I have a startup company, can you imagine how tough it is?). So, the first thing I would like to do is to remind people of the check-in rules, and apply them to past changes. Since a new version is not released yet (after things got bad), we can still fix up the bad pieces safely. If we miss this occasion, we will have to struggle with badly implemented features for years due to compatibility. I have experienced this enough with GRUB Legacy. I don't want it again. Otherwise, I wouldn't have made GRUB 2. Regards, Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 11:29 ` Yoshinori K. Okuji @ 2009-03-29 11:40 ` David Miller 2009-03-29 12:55 ` Yoshinori K. Okuji 2009-03-29 11:59 ` General design (was Re: [PATCH] Split of the normal mode) phcoder 1 sibling, 1 reply; 48+ messages in thread From: David Miller @ 2009-03-29 11:40 UTC (permalink / raw) To: grub-devel From: "Yoshinori K. Okuji" <okuji@enbug.org> Date: Sun, 29 Mar 2009 20:29:26 +0900 > So if nobody else can, I would like to get it straight again myself, > although I am pretty busy (as I have a startup company, can you > imagine how tough it is?). Everybody is too busy to give this project the attention and time it deserves to be maintained properly. I honestly do not think the situation will change significantly until someone is able to devote real time as a maintainer and process all of the patches that get submitted each day. As top level maintainter that has to be your number one priority, processing patches efficiently. Otherwise developers go elsewhere and you will eventually be working on all the features and bug fixes yourself. If you, on the other hand, devote the necessary time to patches then developers will be motivated. They will do all the work and you can take all the credit :-) But I do appreicate that you understand the issue of trust. It is the only way to operate sanely. ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 11:40 ` David Miller @ 2009-03-29 12:55 ` Yoshinori K. Okuji 2009-03-29 13:23 ` Vesa Jääskeläinen 2009-03-29 20:24 ` David Miller 0 siblings, 2 replies; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-03-29 12:55 UTC (permalink / raw) To: The development of GRUB 2 On Sunday 29 March 2009 20:40:17 David Miller wrote: > From: "Yoshinori K. Okuji" <okuji@enbug.org> > Date: Sun, 29 Mar 2009 20:29:26 +0900 > > > So if nobody else can, I would like to get it straight again myself, > > although I am pretty busy (as I have a startup company, can you > > imagine how tough it is?). > > Everybody is too busy to give this project the attention and time it > deserves to be maintained properly. > > I honestly do not think the situation will change significantly until > someone is able to devote real time as a maintainer and process all of > the patches that get submitted each day. This is ideal but not absolutely required. If you look at some popular projects, such as Linux and Firefox, you can find out that not all (actually, very few) patches are handled so quickly, but those projects are functioning so well. > As top level maintainter that has to be your number one priority, > processing patches efficiently. Otherwise developers go elsewhere and > you will eventually be working on all the features and bug fixes > yourself. > > If you, on the other hand, devote the necessary time to patches > then developers will be motivated. They will do all the work and > you can take all the credit :-) > > But I do appreicate that you understand the issue of trust. It is > the only way to operate sanely. Thanks. Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 12:55 ` Yoshinori K. Okuji @ 2009-03-29 13:23 ` Vesa Jääskeläinen 2009-03-29 14:49 ` Yoshinori K. Okuji 2009-03-29 20:26 ` David Miller 2009-03-29 20:24 ` David Miller 1 sibling, 2 replies; 48+ messages in thread From: Vesa Jääskeläinen @ 2009-03-29 13:23 UTC (permalink / raw) To: The development of GRUB 2 Yoshinori K. Okuji wrote: > On Sunday 29 March 2009 20:40:17 David Miller wrote: >> Everybody is too busy to give this project the attention and time it >> deserves to be maintained properly. >> >> I honestly do not think the situation will change significantly until >> someone is able to devote real time as a maintainer and process all of >> the patches that get submitted each day. > > This is ideal but not absolutely required. If you look at some popular > projects, such as Linux and Firefox, you can find out that not all (actually, > very few) patches are handled so quickly, but those projects are functioning > so well. For both of those projects there are people that are paid to do that work either directly or indirectly. How it internally affects, I don't know. Anyway... when people are paid to work there is certainly different driving force behind it. Both of those projects has divided work force dedicated to maintain and drive enhancements to defined goals. Now if we map this to our situation: - We are missing what we want to do (eg. roadmap, feature plan) - What different components should be able to do, eg. design documentation. - Use cases what we want to support - We don't really have defined responsibilities (expect for maintainers, and even that can be a bit vague) - What is philosophy what kind of work is being accepted and what we require for patches/commits - Systematic software functionality verification (either manual or automated) - If I am not mistaken no-one is being paid to maintain GRUB* or to develop for. (not so big deal) I have tried from time to time enhance some of those... but they seem not to drive enough interest. Perhaps with better coordination it could work. So perhaps it would be best to form some kind of organization that defines the goals and then defines responsibilities and backups for components and tries to drive targeting those goals. Those could be like though like internal maintainers for specific components. It could be like bi-monthly meeting to tackle issues on horizon. ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 13:23 ` Vesa Jääskeläinen @ 2009-03-29 14:49 ` Yoshinori K. Okuji 2009-03-29 15:43 ` Vesa Jääskeläinen 2009-03-29 20:26 ` David Miller 1 sibling, 1 reply; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-03-29 14:49 UTC (permalink / raw) To: The development of GRUB 2 On Sunday 29 March 2009 22:23:11 Vesa Jääskeläinen wrote: > For both of those projects there are people that are paid to do that > work either directly or indirectly. How it internally affects, I don't > know. > > Anyway... when people are paid to work there is certainly different > driving force behind it. It does not matter if people are paid or not in this discussion, because: - even if some people are paid, there are tons of volunteers - volunteers are still contributing, although patches are not reviewed quickly > Both of those projects has divided work force dedicated to maintain and > drive enhancements to defined goals. > > Now if we map this to our situation: > > - We are missing what we want to do (eg. roadmap, feature plan) This is somehow intentional, because I believe that volunteers do only what they want to do anyway. In fact, the TODO list in the wiki has several high priority items, but they have been pending for a long, long time (e.g. writing a manual). > - What different components should be able to do, eg. design documentation. > > - Use cases what we want to support > > - We don't really have defined responsibilities (expect for maintainers, > and even that can be a bit vague) > > - What is philosophy what kind of work is being accepted and what we > require for patches/commits > > - Systematic software functionality verification (either manual or > automated) > > - If I am not mistaken no-one is being paid to maintain GRUB* or to > develop for. (not so big deal) Only temporarily, as far as I know. For example, some students were paid in SoC. I was paid for the initial research by IPA (PUPA). > I have tried from time to time enhance some of those... but they seem > not to drive enough interest. Perhaps with better coordination it could > work. > > So perhaps it would be best to form some kind of organization that > defines the goals and then defines responsibilities and backups for > components and tries to drive targeting those goals. Those could be like > though like internal maintainers for specific components. It could be > like bi-monthly meeting to tackle issues on horizon. So you like formalism. I myself like a loose development model. If you have many active developers, formalism works better, because they start to conflict and consume most of the time for endless discussions, otherwise. But, people appear and disappear frequently in GRUB. Do you really think it works with GRUB? Some examples... I am involved with GRUB for 10 years, but I sometimes disappear completely for several months. Then, back again. I think Pavel is also working on GRUB for nearly as long as me, but he works from time to time. It looks nearly random to me. Robert seems to be relatively constant these days, but he apparently does not have time to comment on all patches. So, till now, "Do whatever you want to do when you feel that you want to" has been the most practical, and legwork has been finished by official maintainers who have some formal responsibility (actually, official maintainers have responsibility only for endorsing the GNU philosophy, but they have done more than this). Regards, Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 14:49 ` Yoshinori K. Okuji @ 2009-03-29 15:43 ` Vesa Jääskeläinen 0 siblings, 0 replies; 48+ messages in thread From: Vesa Jääskeläinen @ 2009-03-29 15:43 UTC (permalink / raw) To: The development of GRUB 2 Yoshinori K. Okuji wrote: > On Sunday 29 March 2009 22:23:11 Vesa Jääskeläinen wrote: >> Both of those projects has divided work force dedicated to maintain and >> drive enhancements to defined goals. >> >> Now if we map this to our situation: >> >> - We are missing what we want to do (eg. roadmap, feature plan) > > This is somehow intentional, because I believe that volunteers do only what > they want to do anyway. In fact, the TODO list in the wiki has several high > priority items, but they have been pending for a long, long time (e.g. > writing a manual). That item has been in my mind too as people complain that there ain't one, even the developer one would be useful. But even if there are items in TODO list, people hesitate what to do about it. Some questions that could arise: Who do they consult? is my contribution really wanted? Do I waste my time by doing this? I could be interested in this task, but there is a "task reservation name" there. >> So perhaps it would be best to form some kind of organization that >> defines the goals and then defines responsibilities and backups for >> components and tries to drive targeting those goals. Those could be like >> though like internal maintainers for specific components. It could be >> like bi-monthly meeting to tackle issues on horizon. > > So you like formalism. I myself like a loose development model. If you have > many active developers, formalism works better, because they start to > conflict and consume most of the time for endless discussions, otherwise. > But, people appear and disappear frequently in GRUB. Do you really think it > works with GRUB? Here is another example: Someone writes a large pile (or even a small change) of code that he/she would like to get into GRUB. He/she just sends a patch to mailing list (or to tracker) and feels happy that I have done something now. Even if there are several developers that could understand the code, they do not even look at that as it is not within their close interests, or they might not have time. Or they feel that there is someone else with more knowledge that should handle this. So no-one really makes any kind of response as there is no "pressure". Thus time the person has spent doing something is wasted. This again generates negative publicity... Another related issue is copyright assignment to FSF that seems to hinder also some people. But for that we can't really do much. > Some examples... > > I am involved with GRUB for 10 years, but I sometimes disappear completely for > several months. Then, back again. > > I think Pavel is also working on GRUB for nearly as long as me, but he works > from time to time. It looks nearly random to me. Those scenarios also map to myself. > Robert seems to be relatively constant these days, but he apparently does not > have time to comment on all patches. > > So, till now, "Do whatever you want to do when you feel that you want to" has > been the most practical, and legwork has been finished by official > maintainers who have some formal responsibility (actually, official > maintainers have responsibility only for endorsing the GNU philosophy, but > they have done more than this). Right. But if there is no other responsibility for anyone, you cannot really ask people to follow any kind of design philosophy if there is no-one watching the progress. If you give free permission to do what ever you want, then you can pretty much expect that you get what ever gets there. I have from time to time though about projects that I have followed, what has failed those or what could be the problem why there is no real progress. In my opinion most of those have failed because there is no real guidance on what to do next. People just do and assume that other people will do something until they get enough frustrated and make the necessary change themselves. If this happens, then it certainly does not feel like fun. Projects with active leadership/management seem to flourish much better than on projects that where open sourcing means that here is the code, do what ever you like with it. So... to answer your question about formal development, yes, I feel that it could help here. A bit relaxed model perhaps would be best but there should always be tasks in horizon that needs to be done. Even some kind of dependency graph for those could be a good idea to concentrate task that needs to be done first. If tasks are somewhat defined then it is easy just to pick one and do that, it also helps on keeping track of the progress. It needs management but for that I would say that bi-monthly irc/skype/or whatever meeting would be useful for. Also if there are some design issues that might need multiple people to decide what to do (or they might even need a vote or alternative authority override). ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 13:23 ` Vesa Jääskeläinen 2009-03-29 14:49 ` Yoshinori K. Okuji @ 2009-03-29 20:26 ` David Miller 1 sibling, 0 replies; 48+ messages in thread From: David Miller @ 2009-03-29 20:26 UTC (permalink / raw) To: grub-devel, chaac From: Vesa Jääskeläinen <chaac@nic.fi> Date: Sun, 29 Mar 2009 16:23:11 +0300 > Yoshinori K. Okuji wrote: > > On Sunday 29 March 2009 20:40:17 David Miller wrote: > >> Everybody is too busy to give this project the attention and time it > >> deserves to be maintained properly. > >> > >> I honestly do not think the situation will change significantly until > >> someone is able to devote real time as a maintainer and process all of > >> the patches that get submitted each day. > > > > This is ideal but not absolutely required. If you look at some popular > > projects, such as Linux and Firefox, you can find out that not all (actually, > > very few) patches are handled so quickly, but those projects are functioning > > so well. > > For both of those projects there are people that are paid to do that > work either directly or indirectly. How it internally affects, I don't > know. I'm just as active applying Linux networking patches now as a paid employee of a Linux company as when I was just someone doing it for fun. It's not such a difference, really. ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 12:55 ` Yoshinori K. Okuji 2009-03-29 13:23 ` Vesa Jääskeläinen @ 2009-03-29 20:24 ` David Miller 2009-03-29 20:38 ` phcoder 1 sibling, 1 reply; 48+ messages in thread From: David Miller @ 2009-03-29 20:24 UTC (permalink / raw) To: grub-devel, okuji From: "Yoshinori K. Okuji" <okuji@enbug.org> Date: Sun, 29 Mar 2009 21:55:34 +0900 > On Sunday 29 March 2009 20:40:17 David Miller wrote: > > From: "Yoshinori K. Okuji" <okuji@enbug.org> > > Date: Sun, 29 Mar 2009 20:29:26 +0900 > > > > > So if nobody else can, I would like to get it straight again myself, > > > although I am pretty busy (as I have a startup company, can you > > > imagine how tough it is?). > > > > Everybody is too busy to give this project the attention and time it > > deserves to be maintained properly. > > > > I honestly do not think the situation will change significantly until > > someone is able to devote real time as a maintainer and process all of > > the patches that get submitted each day. > > This is ideal but not absolutely required. If you look at some popular > projects, such as Linux and Firefox, you can find out that not all (actually, > very few) patches are handled so quickly, but those projects are functioning > so well. As a top-level maintainer in one of those projects, I beg to differ. The only reason I have so many people underneath me actively working on the Linux networking stack is the simple fact that I process all new patches processed each and every day. I sometimes apply 100 or more patches in a day, and that's critical for keeping the project healthy. And I do it using email because that is what's easiest for developers. It is so easy to track patches automatically, using email instead of some bug system, using a facility such as patchwork. Otherwise I'd have the situation you guys have here, frustrated developers and slow progress. You can keep denying that this matters, but my practical experience of over 15 years disagrees with your's. ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 20:24 ` David Miller @ 2009-03-29 20:38 ` phcoder 2009-03-30 15:43 ` Bean 0 siblings, 1 reply; 48+ messages in thread From: phcoder @ 2009-03-29 20:38 UTC (permalink / raw) To: The development of GRUB 2 I agree. Developers should feel that their work is appreciated. Otherwise they turn to something else. THis is especially true for opensource where the only holding factor is the motivation David Miller wrote: > From: "Yoshinori K. Okuji" <okuji@enbug.org> > Date: Sun, 29 Mar 2009 21:55:34 +0900 > >> On Sunday 29 March 2009 20:40:17 David Miller wrote: >>> From: "Yoshinori K. Okuji" <okuji@enbug.org> >>> Date: Sun, 29 Mar 2009 20:29:26 +0900 >>> >>>> So if nobody else can, I would like to get it straight again myself, >>>> although I am pretty busy (as I have a startup company, can you >>>> imagine how tough it is?). >>> Everybody is too busy to give this project the attention and time it >>> deserves to be maintained properly. >>> >>> I honestly do not think the situation will change significantly until >>> someone is able to devote real time as a maintainer and process all of >>> the patches that get submitted each day. >> This is ideal but not absolutely required. If you look at some popular >> projects, such as Linux and Firefox, you can find out that not all (actually, >> very few) patches are handled so quickly, but those projects are functioning >> so well. > > As a top-level maintainer in one of those projects, I beg to differ. > > The only reason I have so many people underneath me actively working > on the Linux networking stack is the simple fact that I process all > new patches processed each and every day. I sometimes apply 100 or > more patches in a day, and that's critical for keeping the project > healthy. > > And I do it using email because that is what's easiest for developers. > It is so easy to track patches automatically, using email instead of > some bug system, using a facility such as patchwork. > > Otherwise I'd have the situation you guys have here, frustrated > developers and slow progress. > > You can keep denying that this matters, but my practical experience > of over 15 years disagrees with your's. > > > _______________________________________________ > Grub-devel mailing list > Grub-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/grub-devel -- Regards Vladimir 'phcoder' Serbinenko ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 20:38 ` phcoder @ 2009-03-30 15:43 ` Bean 2009-03-30 16:22 ` Yoshinori K. Okuji 2009-03-30 16:35 ` Vesa Jääskeläinen 0 siblings, 2 replies; 48+ messages in thread From: Bean @ 2009-03-30 15:43 UTC (permalink / raw) To: The development of GRUB 2 Hi, I see the main objection here is about too many new modules, and the use of script to configure boot process. But how about the new parser/reader/menu_viewer model ? If I put them back in one normal.mod, but keep the parts separated in source, would that be acceptable ? Also, some thoughts about grub2 authority. I do understand the needs to keep source clean and safe for a boot loader, but sometimes the process just seems too slow. For example, Colin's graphic menu patch has been pending for almost half a year. IMO, if a patch implement a generally useful feature, have no serious design faults, and don't conflict with other parts of grub2, then it's safe to commit. For small issues, we could fix it later. Perhaps we can add a testing branch, in which developers have more freedom to commit their work. The maintainer can review them periodically and merge selected parts with the main branch. Many open source project have more than one branches, perhaps it'd work with grub2 as well. -- Bean ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-30 15:43 ` Bean @ 2009-03-30 16:22 ` Yoshinori K. Okuji 2009-03-30 16:38 ` Bean 2009-03-30 16:35 ` Vesa Jääskeläinen 1 sibling, 1 reply; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-03-30 16:22 UTC (permalink / raw) To: The development of GRUB 2 On Tuesday 31 March 2009 00:43:01 Bean wrote: > Hi, > > I see the main objection here is about too many new modules, and the > use of script to configure boot process. I don't object to the latter any longer. Did you read my message? > But how about the new > parser/reader/menu_viewer model ? Nothing wrong. I have already proposed a similar idea for long: https://savannah.gnu.org/task/?7668 > If I put them back in one > normal.mod, but keep the parts separated in source, would that be > acceptable ? > > Also, some thoughts about grub2 authority. I do understand the needs > to keep source clean and safe for a boot loader, but sometimes the > process just seems too slow. For example, Colin's graphic menu patch > has been pending for almost half a year. IMO, if a patch implement a > generally useful feature, have no serious design faults, and don't > conflict with other parts of grub2, then it's safe to commit. For > small issues, we could fix it later. > > Perhaps we can add a testing branch, in which developers have more > freedom to commit their work. The maintainer can review them > periodically and merge selected parts with the main branch. Many open > source project have more than one branches, perhaps it'd work with > grub2 as well. I just feel headache when you say "open source" in our project. Please stop. About Colin's patch, I have *no idea*. I am sorry but I have a limitation. I can't do every thing suddenly. For branching, you can try. I had tried it in GRUB Legacy, but I concluded that our resources were not sufficient to have multiple lines. This might work if branches are used only for experimental purposes. Regards, Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-30 16:22 ` Yoshinori K. Okuji @ 2009-03-30 16:38 ` Bean 0 siblings, 0 replies; 48+ messages in thread From: Bean @ 2009-03-30 16:38 UTC (permalink / raw) To: The development of GRUB 2 On Tue, Mar 31, 2009 at 12:22 AM, Yoshinori K. Okuji <okuji@enbug.org> wrote: > On Tuesday 31 March 2009 00:43:01 Bean wrote: >> Hi, >> >> I see the main objection here is about too many new modules, and the >> use of script to configure boot process. > > I don't object to the latter any longer. Did you read my message? Hi, Oh sorry, I just saw your reply. It works for me, but perhaps we could split it a little bit more: normal.mod sh.mod textmenu.mod menu.mod misc.mod setjmp.mod menu.mod is for generic menu function, like menu_viewer registration, etc. misc.mod for misc function. For example, the function to read a line from file can be useful in other places, completion is used by menu viewers, etc. Also combine with old crc and hexdump in lib directory. setjmp.mod is for setjmp function. Now normal.mod don't need to use setjmp anymore. setjmp is platform dependent. By moving it out, we can include normal.mod in common.rmk. -- Bean ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-30 15:43 ` Bean 2009-03-30 16:22 ` Yoshinori K. Okuji @ 2009-03-30 16:35 ` Vesa Jääskeläinen 1 sibling, 0 replies; 48+ messages in thread From: Vesa Jääskeläinen @ 2009-03-30 16:35 UTC (permalink / raw) To: The development of GRUB 2 Bean wrote: > Also, some thoughts about grub2 authority. I do understand the needs > to keep source clean and safe for a boot loader, but sometimes the > process just seems too slow. For example, Colin's graphic menu patch > has been pending for almost half a year. IMO, if a patch implement a > generally useful feature, have no serious design faults, and don't > conflict with other parts of grub2, then it's safe to commit. For > small issues, we could fix it later. Most of the patches has been already approved with minor changes. Colin has his commit rights to the repository. If he do not feel like committing the code in (no time to cleanup or what ever the reason is), who is anyone else having any say to commit them in? Of course there is really old version that needs some rewriting after GSoC there, but other than that it is in my opinion really Colin's responsibility to contribute/commit the code in. ^ permalink raw reply [flat|nested] 48+ messages in thread
* General design (was Re: [PATCH] Split of the normal mode) 2009-03-29 11:29 ` Yoshinori K. Okuji 2009-03-29 11:40 ` David Miller @ 2009-03-29 11:59 ` phcoder 1 sibling, 0 replies; 48+ messages in thread From: phcoder @ 2009-03-29 11:59 UTC (permalink / raw) To: The development of GRUB 2 If you're here to fix things then it's okay with me. We could start with design discussions and have a document describing rules and roadmap. Of course it won't be an absolute reference but any step away from roadmap is to be discussed thoroughfully > - Trivial changes, in particular bug fixes, were allowed to be checked in > without any review, if the developer is trusted. I agree with this way > - Rather significant changes, even bug fixes when these require code > restructuring, had to be reviewed. I think I was the only exception on this, > because I am the designor. In reality, however, even I often posted messages > to this mailing list before I made changes, because I appreciated others' > ideas. > IMO now even you would have to let people discuss your changes if they aren't trivial. This is because grub2 supports many platforms and restructuring may break some platforms in subtle way > - Design-level changes had to be always discussed a lot before being accepted. > This included myself, because even I, the original author, didn't know every > aspect of impacts. This is especially true with all current ports and some people may want to delay design changes if some code is pending > Afterwards, these rules were somehow forgotten for a practical reason: patches > were not reviewed quickly or even ignored for a long time, because of the > absense of leadership. I expected that we could overcome such a situation by > co-maintainership, but after both I and Marco got too busy with other things, > it stopped working. As you should know, several people, like Robert, Vesa, > Pavel, and Bean, helped greatly, but it was not still good enough for your > demand. Get me right, I have nothing against these people. Actually I'm very grateful to Robert Millan that my patches were incorporated at all. However I find current organisation problematic. Perhaps we need another collaboration model to avoid such problems in future > > So the current situation is like this: > > - Many changes have already been incorporated without proper reviews, > including bad changes. The current GRUB is in a sense partly worse than > before, due to this. Every of these changes has to be discussed separately. Some of them may lead to design discussions. > > - Many patches are pending. > This is my main complaint. Also some design disscussion stay without any activity. > So, the first thing I would like to do is to remind people of the check-in > rules, and apply them to past changes. Since a new version is not released > yet (after things got bad), we can still fix up the bad pieces safely. If we > miss this occasion, we will have to struggle with badly implemented features > for years due to compatibility. I have experienced this enough with GRUB > Legacy. I don't want it again. Otherwise, I wouldn't have made GRUB 2. I think it would be a good idea to have a document describing those rules rather than playing "Mao" game. > > Regards, > Okuji > > > _______________________________________________ > Grub-devel mailing list > Grub-devel@gnu.org > http://lists.gnu.org/mailman/listinfo/grub-devel -- Regards Vladimir 'phcoder' Serbinenko ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 10:09 ` Yoshinori K. Okuji 2009-03-29 10:43 ` phcoder @ 2009-03-29 10:48 ` Vesa Jääskeläinen 2009-03-29 11:39 ` Yoshinori K. Okuji 2009-03-29 12:17 ` Vesa Jääskeläinen 2009-04-01 13:19 ` Robert Millan 2 siblings, 2 replies; 48+ messages in thread From: Vesa Jääskeläinen @ 2009-03-29 10:48 UTC (permalink / raw) To: The development of GRUB 2 Yoshinori K. Okuji wrote: > You should select compile-time "loading" (i.e. linking) whenever possible. If > a function is loaded eventually, it should be linked at compile time. > > You should select automatic loading, if you need runtime linking. > > Manual loading should be considered evil, in principle. I agree. > FYI, I am planning to make a full review of recent changes (i.e. all changes > made after I stopped reviewing every patch), and trash/revert/rewrite/blame > everything I don't like. Changes made for no good reason must be all > reverted. > > In brief, I take back the leadership of this project for general directions. > For some subsystems (e.g. the coreboot support), I continue leaving the > responsibility to those who know better or are more active. Once the current > code is reviewed and fixed (at some degree), I will make a new release. > > Any objection? Not really. I will make some grief, but it might be a good thing in overall. I would thou propose that you discuss the issue on mailing list so we can probably fine tune principles and objectives of GRUB 2 at the same time. ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 10:48 ` [PATCH] Split of the normal mode Vesa Jääskeläinen @ 2009-03-29 11:39 ` Yoshinori K. Okuji 2009-03-29 12:17 ` Vesa Jääskeläinen 1 sibling, 0 replies; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-03-29 11:39 UTC (permalink / raw) To: The development of GRUB 2 On Sunday 29 March 2009 19:48:45 Vesa Jääskeläinen wrote: > Yoshinori K. Okuji wrote: > > You should select compile-time "loading" (i.e. linking) whenever > > possible. If a function is loaded eventually, it should be linked at > > compile time. > > > > You should select automatic loading, if you need runtime linking. > > > > Manual loading should be considered evil, in principle. > > I agree. > > > FYI, I am planning to make a full review of recent changes (i.e. all > > changes made after I stopped reviewing every patch), and > > trash/revert/rewrite/blame everything I don't like. Changes made for no > > good reason must be all reverted. > > > > In brief, I take back the leadership of this project for general > > directions. For some subsystems (e.g. the coreboot support), I continue > > leaving the responsibility to those who know better or are more active. > > Once the current code is reviewed and fixed (at some degree), I will make > > a new release. > > > > Any objection? > > Not really. I will make some grief, but it might be a good thing in > overall. > > I would thou propose that you discuss the issue on mailing list so we > can probably fine tune principles and objectives of GRUB 2 at the same > time. I will. Thanks, Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 10:48 ` [PATCH] Split of the normal mode Vesa Jääskeläinen 2009-03-29 11:39 ` Yoshinori K. Okuji @ 2009-03-29 12:17 ` Vesa Jääskeläinen 1 sibling, 0 replies; 48+ messages in thread From: Vesa Jääskeläinen @ 2009-03-29 12:17 UTC (permalink / raw) To: The development of GRUB 2 Vesa Jääskeläinen wrote: > Yoshinori K. Okuji wrote: >> Any objection? > > Not really. I will make some grief, but it might be a good thing in overall. Just to make it clear: It will... ;) ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-03-29 10:09 ` Yoshinori K. Okuji 2009-03-29 10:43 ` phcoder 2009-03-29 10:48 ` [PATCH] Split of the normal mode Vesa Jääskeläinen @ 2009-04-01 13:19 ` Robert Millan 2009-04-01 14:15 ` Yoshinori K. Okuji 2 siblings, 1 reply; 48+ messages in thread From: Robert Millan @ 2009-04-01 13:19 UTC (permalink / raw) To: The development of GRUB 2 On Sun, Mar 29, 2009 at 07:09:56PM +0900, Yoshinori K. Okuji wrote: > > Indeed. I don't understand this tendency about splitting modules at all. What > is the motivation behind? What is the real benefit for the user? > > From my point of view, it is wrong to force the user to manually load modules, > generally. This includes writing "insmod" in config files. Look at Linux. It > is quite rare to execute insmod or modprobe directly. Most of the time, > modules are loaded on demand. This is the user-friendliness. I agree with your point. It should be noted, though, that in some of these situations grub-mkconfig compensates that by generating "insmod xxx" statements on-demand (a good example would be that "insmod lvm" can be generated by prepare_grub_to_access_device). > FYI, I am planning to make a full review of recent changes (i.e. all changes > made after I stopped reviewing every patch), and trash/revert/rewrite/blame > everything I don't like. Changes made for no good reason must be all > reverted. > > In brief, I take back the leadership of this project for general directions. > For some subsystems (e.g. the coreboot support), I continue leaving the > responsibility to those who know better or are more active. Once the current > code is reviewed and fixed (at some degree), I will make a new release. > > Any objection? GRUB is in dire need of an active project lead. I'm happy to see what you plan to take back on that role. Over the last few months, I tried to cover up for some of the work you and Marco weren't doing, like processing the patches nobody wanted to look at, or requesting copyright assignments. TBH, it wasn't a pleasant task, and if you'll be doing it from now on, it's a relief for me. As for reverting changes, I acknowledge you have the authority to do that, but it would be very harmful to the project if all sort of things started being reverted with no proper discussion. When I say harmful, I mean that some people might end up sticking with their own private trees, which later can't easily be merged. It's very important to build consensus on such things. So my suggestion is that you bring up discussion on which things you plan to revert. If we can't reach consensus, you have the authority to impose your own view, but please try to find consensus, and be open to arguments that might convince your POV. To summarize, I approve of your decision, but I'd be very disappointed if all this just happens so you can revert a bunch of stuff and inmediately afterwards we're left with no active maintainer again. -- Robert Millan The DRM opt-in fallacy: "Your data belongs to us. We will decide when (and how) you may access your data; but nobody's threatening your freedom: we still allow you to remove your data and not access it at all." ^ permalink raw reply [flat|nested] 48+ messages in thread
* Re: [PATCH] Split of the normal mode 2009-04-01 13:19 ` Robert Millan @ 2009-04-01 14:15 ` Yoshinori K. Okuji 0 siblings, 0 replies; 48+ messages in thread From: Yoshinori K. Okuji @ 2009-04-01 14:15 UTC (permalink / raw) To: The development of GRUB 2 On Wednesday 01 April 2009 22:19:00 Robert Millan wrote: > GRUB is in dire need of an active project lead. I'm happy to see what you > plan to take back on that role. Over the last few months, I tried to cover > up for some of the work you and Marco weren't doing, like processing the > patches nobody wanted to look at, or requesting copyright assignments. > TBH, it wasn't a pleasant task, and if you'll be doing it from now on, it's > a relief for me. Well, I don't like that so much, either. So I appreciate if you can continue to do that. :p > As for reverting changes, I acknowledge you have the authority to do that, > but it would be very harmful to the project if all sort of things started > being reverted with no proper discussion. When I say harmful, I mean that > some people might end up sticking with their own private trees, which later > can't easily be merged. It's very important to build consensus on such > things. > > So my suggestion is that you bring up discussion on which things you plan > to revert. If we can't reach consensus, you have the authority to impose > your own view, but please try to find consensus, and be open to arguments > that might convince your POV. > > To summarize, I approve of your decision, but I'd be very disappointed if > all this just happens so you can revert a bunch of stuff and inmediately > afterwards we're left with no active maintainer again. Thank you for your comment. I fully understand what you mean. I will take care. Regards, Okuji ^ permalink raw reply [flat|nested] 48+ messages in thread
end of thread, other threads:[~2009-04-01 16:14 UTC | newest] Thread overview: 48+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2009-03-29 9:25 [PATCH] Split of the normal mode Bean 2009-03-29 9:40 ` Vesa Jääskeläinen 2009-03-29 10:09 ` Yoshinori K. Okuji 2009-03-29 10:43 ` phcoder 2009-03-29 10:53 ` Vesa Jääskeläinen 2009-03-29 11:33 ` phcoder 2009-03-29 11:51 ` Yoshinori K. Okuji 2009-03-29 12:09 ` Bean 2009-03-29 13:10 ` Yoshinori K. Okuji 2009-03-29 13:59 ` Bean 2009-03-29 14:20 ` Yoshinori K. Okuji 2009-03-29 14:30 ` Bean 2009-03-29 14:54 ` Yoshinori K. Okuji 2009-03-29 15:17 ` Bean 2009-03-30 15:42 ` Yoshinori K. Okuji 2009-03-30 20:04 ` Colin D Bennett 2009-03-31 6:11 ` Bean 2009-03-31 15:02 ` Colin D Bennett 2009-03-29 13:00 ` phcoder 2009-03-29 14:51 ` Yoshinori K. Okuji 2009-03-29 17:07 ` phcoder 2009-03-29 20:35 ` phcoder 2009-03-30 15:49 ` Yoshinori K. Okuji 2009-03-30 15:59 ` phcoder 2009-04-01 7:43 ` phcoder 2009-04-01 8:07 ` David Miller 2009-04-01 9:22 ` phcoder 2009-04-01 14:10 ` Yoshinori K. Okuji 2009-04-01 16:14 ` phcoder 2009-03-29 11:29 ` Yoshinori K. Okuji 2009-03-29 11:40 ` David Miller 2009-03-29 12:55 ` Yoshinori K. Okuji 2009-03-29 13:23 ` Vesa Jääskeläinen 2009-03-29 14:49 ` Yoshinori K. Okuji 2009-03-29 15:43 ` Vesa Jääskeläinen 2009-03-29 20:26 ` David Miller 2009-03-29 20:24 ` David Miller 2009-03-29 20:38 ` phcoder 2009-03-30 15:43 ` Bean 2009-03-30 16:22 ` Yoshinori K. Okuji 2009-03-30 16:38 ` Bean 2009-03-30 16:35 ` Vesa Jääskeläinen 2009-03-29 11:59 ` General design (was Re: [PATCH] Split of the normal mode) phcoder 2009-03-29 10:48 ` [PATCH] Split of the normal mode Vesa Jääskeläinen 2009-03-29 11:39 ` Yoshinori K. Okuji 2009-03-29 12:17 ` Vesa Jääskeläinen 2009-04-01 13:19 ` Robert Millan 2009-04-01 14:15 ` Yoshinori K. Okuji
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.