Re: possible mountroot regression

2011-10-20 Thread Arnaud Lacombe
Hi,

On Wed, Oct 19, 2011 at 3:41 PM, Garrett Cooper yaneg...@gmail.com wrote:
 On Wed, Oct 19, 2011 at 12:12 PM, Warren Block wbl...@wonkity.com wrote:
 On Wed, 19 Oct 2011, Oliver Pinter wrote:

 On 10/19/11, Olivier Smedts oliv...@gid0.org wrote:

 2011/10/19 Marcel Moolenaar mar...@xcllnt.net:

 On Oct 18, 2011, at 9:04 AM, Andriy Gapon wrote:

 Would you be able to commit a variant of this patch sans the 'x' part?

 Yes, soonish. If people like the 'x' change I can do that in a followup
 commit as well. I just need to know if people like it or not...

 Yes, it's useful. But why not q for quit ? Just a bikeshed color
 idea...

 eXit :)

 In some languages...

 More important to me is the the Abort manual input which tells what it
 does but not why the user would want to do that.

 Abort manual input... and then what?  Hang?  Retry?  Panic?  Reboot? Resume
 attempting to mount the root device that was expected?

well, panic, there isn't much other thing to do. At the very least,
letting the user input something is still better than what Linux do,
which is to panic.

 Or just go back to status quo for previous releases and we can worry
 about usability later?

which status-quo ? the mountroot procedure of 7 is broken as well, as
I found out yesterday. So what ? 6 ? 5 ? 4 ?

 - Arnaud
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-10-20 Thread Garrett Cooper
On Thu, Oct 20, 2011 at 10:44 PM, Arnaud Lacombe lacom...@gmail.com wrote:
 Hi,

 On Wed, Oct 19, 2011 at 3:41 PM, Garrett Cooper yaneg...@gmail.com wrote:
 On Wed, Oct 19, 2011 at 12:12 PM, Warren Block wbl...@wonkity.com wrote:
 On Wed, 19 Oct 2011, Oliver Pinter wrote:

 On 10/19/11, Olivier Smedts oliv...@gid0.org wrote:

 2011/10/19 Marcel Moolenaar mar...@xcllnt.net:

 On Oct 18, 2011, at 9:04 AM, Andriy Gapon wrote:

 Would you be able to commit a variant of this patch sans the 'x' part?

 Yes, soonish. If people like the 'x' change I can do that in a followup
 commit as well. I just need to know if people like it or not...

 Yes, it's useful. But why not q for quit ? Just a bikeshed color
 idea...

 eXit :)

 In some languages...

 More important to me is the the Abort manual input which tells what it
 does but not why the user would want to do that.

 Abort manual input... and then what?  Hang?  Retry?  Panic?  Reboot? Resume
 attempting to mount the root device that was expected?

 well, panic, there isn't much other thing to do. At the very least,
 letting the user input something is still better than what Linux do,
 which is to panic.

 Or just go back to status quo for previous releases and we can worry
 about usability later?

 which status-quo ? the mountroot procedure of 7 is broken as well, as
 I found out yesterday. So what ? 6 ? 5 ? 4 ?

The status quo that I was thinking of was press enter to get a
list of available devices instead of immediately panicking like the
new bootloader code currently does. As long as that status quo is
restored, I think a lot of existing users will be happy. Otherwise
this discussion could stall and turn into an unnecessary bikeshed.
Thanks,
-Garrett
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-10-20 Thread Arnaud Lacombe
Hi,

On Fri, Oct 21, 2011 at 1:48 AM, Garrett Cooper yaneg...@gmail.com wrote:
 On Thu, Oct 20, 2011 at 10:44 PM, Arnaud Lacombe lacom...@gmail.com wrote:
 Hi,

 On Wed, Oct 19, 2011 at 3:41 PM, Garrett Cooper yaneg...@gmail.com wrote:
 On Wed, Oct 19, 2011 at 12:12 PM, Warren Block wbl...@wonkity.com wrote:
 On Wed, 19 Oct 2011, Oliver Pinter wrote:

 On 10/19/11, Olivier Smedts oliv...@gid0.org wrote:

 2011/10/19 Marcel Moolenaar mar...@xcllnt.net:

 On Oct 18, 2011, at 9:04 AM, Andriy Gapon wrote:

 Would you be able to commit a variant of this patch sans the 'x' part?

 Yes, soonish. If people like the 'x' change I can do that in a followup
 commit as well. I just need to know if people like it or not...

 Yes, it's useful. But why not q for quit ? Just a bikeshed color
 idea...

 eXit :)

 In some languages...

 More important to me is the the Abort manual input which tells what it
 does but not why the user would want to do that.

 Abort manual input... and then what?  Hang?  Retry?  Panic?  Reboot? Resume
 attempting to mount the root device that was expected?

 well, panic, there isn't much other thing to do. At the very least,
 letting the user input something is still better than what Linux do,
 which is to panic.

 Or just go back to status quo for previous releases and we can worry
 about usability later?

 which status-quo ? the mountroot procedure of 7 is broken as well, as
 I found out yesterday. So what ? 6 ? 5 ? 4 ?

    The status quo that I was thinking of was press enter to get a
 list of available devices instead of immediately panicking like the
 new bootloader code currently does. As long as that status quo is
 restored, I think a lot of existing users will be happy. Otherwise
 this discussion could stall and turn into an unnecessary bikeshed.

this discussion should not even have happen, and I'd hope[0] that the
next message in this thread is either a new patch, or a revision ID
where the stuff is fixed, ie. less talk, more action.

Btw, if no action is taken, I do not really care, I'm running my patch
and am happy with it.

 - Arnaud

[0]: which is pretty much worthless
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-10-19 Thread Marcel Moolenaar

On Oct 18, 2011, at 9:04 AM, Andriy Gapon wrote:

 on 14/10/2011 18:54 Arnaud Lacombe said the following:
 Andry Gapon wrote:
 Simple: revert to the previous behavior.  If a user enters incorrect device 
 name
 (i.e. root mounting fails), then return back to the prompt instead of 
 panicing.
 That should do the job.
 
 - Arnaud
 
 ---
 sys/kern/vfs_mountroot.c |   45 +++--
 1 files changed, 23 insertions(+), 22 deletions(-)
 
 diff --git a/sys/kern/vfs_mountroot.c b/sys/kern/vfs_mountroot.c
 index ccbcb33..ae3ffa7 100644
 --- a/sys/kern/vfs_mountroot.c
 +++ b/sys/kern/vfs_mountroot.c
 @@ -481,28 +481,29 @@ parse_dir_ask(char **conf)
  printf(\n);
  printf(  ?   List valid disk boot devices\n);
  printf(  .   Yield 1 second (for background tasks)\n);
 -printf(  empty lineAbort manual input\n);
 +printf(  x   Abort manual input)\n);
 +
 +do {
 +error = EINVAL;
 +printf(\nmountroot );
 +gets(name, sizeof(name), GETS_ECHO);
 +if (name[0] == '?') {
 +printf(\nList of GEOM managed disk devices:\n  );
 +g_dev_print();
 +continue;
 +}
 +if (name[0] == '.') {
 +pause(rmask, hz);
 +continue;
 +}
 +if (name[0] == 'x'  name[1] == '\0')
 +break;
 +mnt = name;
 +error = parse_mount(mnt);
 +if (error  0)
 +printf(Invalid specification.\n);
 +} while (error != 0);
 
 - again:
 -printf(\nmountroot );
 -gets(name, sizeof(name), GETS_ECHO);
 -if (name[0] == '\0')
 -return (0);
 -if (name[0] == '?') {
 -printf(\nList of GEOM managed disk devices:\n  );
 -g_dev_print();
 -goto again;
 -}
 -if (name[0] == '.') {
 -pause(rmask, hz);
 -goto again;
 -}
 -mnt = name;
 -error = parse_mount(mnt);
 -if (error == -1) {
 -printf(Invalid specification.\n);
 -goto again;
 -}
  return (error);
 }
 
 
 Arnaud,
 
 I like how your change fixes the regression and improves code style.
 As you've said, the 'x' change is unrelated.  I like it, but it needs to be
 discussed and committed separately.
 
 Marcel,
 
 what do you think?

I like it.

 Would you be able to commit a variant of this patch sans the 'x' part?
 

Yes, soonish. If people like the 'x' change I can do that in a followup
commit as well. I just need to know if people like it or not...

-- 
Marcel Moolenaar
mar...@xcllnt.net


___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-10-19 Thread Olivier Smedts
Hello,

2011/10/19 Marcel Moolenaar mar...@xcllnt.net:

 On Oct 18, 2011, at 9:04 AM, Andriy Gapon wrote:

 Would you be able to commit a variant of this patch sans the 'x' part?


 Yes, soonish. If people like the 'x' change I can do that in a followup
 commit as well. I just need to know if people like it or not...

Yes, it's useful. But why not q for quit ? Just a bikeshed color idea...

Cheers

-- 
Olivier Smedts                                                 _
                                        ASCII ribbon campaign ( )
e-mail: oliv...@gid0.org        - against HTML email  vCards  X
www: http://www.gid0.org    - against proprietary attachments / \

  Il y a seulement 10 sortes de gens dans le monde :
  ceux qui comprennent le binaire,
  et ceux qui ne le comprennent pas.
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-10-19 Thread Oliver Pinter
On 10/19/11, Olivier Smedts oliv...@gid0.org wrote:
 Hello,

 2011/10/19 Marcel Moolenaar mar...@xcllnt.net:

 On Oct 18, 2011, at 9:04 AM, Andriy Gapon wrote:

 Would you be able to commit a variant of this patch sans the 'x' part?


 Yes, soonish. If people like the 'x' change I can do that in a followup
 commit as well. I just need to know if people like it or not...

 Yes, it's useful. But why not q for quit ? Just a bikeshed color idea...

 Cheers

eXit :)


 --
 Olivier Smedts _
 ASCII ribbon campaign ( )
 e-mail: oliv...@gid0.org- against HTML email  vCards  X
 www: http://www.gid0.org- against proprietary attachments / \

   Il y a seulement 10 sortes de gens dans le monde :
   ceux qui comprennent le binaire,
   et ceux qui ne le comprennent pas.
 ___
 freebsd-current@freebsd.org mailing list
 http://lists.freebsd.org/mailman/listinfo/freebsd-current
 To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org

___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-10-19 Thread Warren Block

On Wed, 19 Oct 2011, Oliver Pinter wrote:


On 10/19/11, Olivier Smedts oliv...@gid0.org wrote:

2011/10/19 Marcel Moolenaar mar...@xcllnt.net:

On Oct 18, 2011, at 9:04 AM, Andriy Gapon wrote:


Would you be able to commit a variant of this patch sans the 'x' part?


Yes, soonish. If people like the 'x' change I can do that in a followup
commit as well. I just need to know if people like it or not...


Yes, it's useful. But why not q for quit ? Just a bikeshed color idea...


eXit :)


In some languages...

More important to me is the the Abort manual input which tells what it 
does but not why the user would want to do that.


Abort manual input... and then what?  Hang?  Retry?  Panic?  Reboot? 
Resume attempting to mount the root device that was expected?

___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-10-19 Thread Garrett Cooper
On Wed, Oct 19, 2011 at 12:12 PM, Warren Block wbl...@wonkity.com wrote:
 On Wed, 19 Oct 2011, Oliver Pinter wrote:

 On 10/19/11, Olivier Smedts oliv...@gid0.org wrote:

 2011/10/19 Marcel Moolenaar mar...@xcllnt.net:

 On Oct 18, 2011, at 9:04 AM, Andriy Gapon wrote:

 Would you be able to commit a variant of this patch sans the 'x' part?

 Yes, soonish. If people like the 'x' change I can do that in a followup
 commit as well. I just need to know if people like it or not...

 Yes, it's useful. But why not q for quit ? Just a bikeshed color
 idea...

 eXit :)

 In some languages...

 More important to me is the the Abort manual input which tells what it
 does but not why the user would want to do that.

 Abort manual input... and then what?  Hang?  Retry?  Panic?  Reboot? Resume
 attempting to mount the root device that was expected?

Or just go back to status quo for previous releases and we can worry
about usability later?
-Garrett
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-10-18 Thread Andriy Gapon
on 14/10/2011 18:54 Arnaud Lacombe said the following:
 Andry Gapon wrote:
 Simple: revert to the previous behavior.  If a user enters incorrect device 
 name
 (i.e. root mounting fails), then return back to the prompt instead of 
 panicing.
 That should do the job.
 
  - Arnaud
 
 ---
  sys/kern/vfs_mountroot.c |   45 +++--
  1 files changed, 23 insertions(+), 22 deletions(-)
 
 diff --git a/sys/kern/vfs_mountroot.c b/sys/kern/vfs_mountroot.c
 index ccbcb33..ae3ffa7 100644
 --- a/sys/kern/vfs_mountroot.c
 +++ b/sys/kern/vfs_mountroot.c
 @@ -481,28 +481,29 @@ parse_dir_ask(char **conf)
   printf(\n);
   printf(  ?   List valid disk boot devices\n);
   printf(  .   Yield 1 second (for background tasks)\n);
 - printf(  empty lineAbort manual input\n);
 + printf(  x   Abort manual input)\n);
 +
 + do {
 + error = EINVAL;
 + printf(\nmountroot );
 + gets(name, sizeof(name), GETS_ECHO);
 + if (name[0] == '?') {
 + printf(\nList of GEOM managed disk devices:\n  );
 + g_dev_print();
 + continue;
 + }
 + if (name[0] == '.') {
 + pause(rmask, hz);
 + continue;
 + }
 + if (name[0] == 'x'  name[1] == '\0')
 + break;
 + mnt = name;
 + error = parse_mount(mnt);
 + if (error  0)
 + printf(Invalid specification.\n);
 + } while (error != 0);
  
 - again:
 - printf(\nmountroot );
 - gets(name, sizeof(name), GETS_ECHO);
 - if (name[0] == '\0')
 - return (0);
 - if (name[0] == '?') {
 - printf(\nList of GEOM managed disk devices:\n  );
 - g_dev_print();
 - goto again;
 - }
 - if (name[0] == '.') {
 - pause(rmask, hz);
 - goto again;
 - }
 - mnt = name;
 - error = parse_mount(mnt);
 - if (error == -1) {
 - printf(Invalid specification.\n);
 - goto again;
 - }
   return (error);
  }
  

Arnaud,

I like how your change fixes the regression and improves code style.
As you've said, the 'x' change is unrelated.  I like it, but it needs to be
discussed and committed separately.

Marcel,

what do you think?
Would you be able to commit a variant of this patch sans the 'x' part?

-- 
Andriy Gapon
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-10-14 Thread Andriy Gapon
on 30/08/2011 13:01 Andriy Gapon said the following:
 
 So, just to re-iterate, I think that this is indeed a regression and the one
 that could be particularly unhelpful for a new release - the time when people
 are much more likely to end up at the mountroot prompt during an installation 
 of
 a new system or an upgrade.

Marcel,

is there any chance that this regression can be fixed before the release?
If not, then maybe it would be proper to pull the change that introduced it out
of the release branch (r214006) ?

 on 29/08/2011 23:19 Andriy Gapon said the following:
 on 29/08/2011 19:45 Marcel Moolenaar said the following:

 On Aug 29, 2011, at 1:21 AM, Andriy Gapon wrote:

 on 27/08/2011 18:16 Marcel Moolenaar said the following:

 On Aug 26, 2011, at 2:07 PM, Andriy Gapon wrote:


 It seems that after the introduction of the mountroot scripting language 
 a user
 now has exactly one chance to try to specify a correct root device at the
 mountroot prompt.  I am not sure that that is convenient/enough.

 This is no different from before.

 Are you sure?
 I remember trying multiple (incorrect) possibilities at the prompt and not
 getting the panic.  But I know that sometimes I have cases of false 
 memories,
 so _I_ am not sure.

 I'm sure now that we're both not sure :-)

 It's possible the failure mode varied by how the root mount
 failed...


 Judging from the code before r214006 it shouldn't have panic-ed upon such a 
 failure:
 static int
 vfs_mountroot_ask(void)
 {
 char name[128];
 char *mountfrom;
 char *options;

 for(;;) {
 ...
 gets(name, sizeof(name), 1);
 if (name[0] == '\0')
 return (1);
 if (name[0] == '?') {
 printf(\nList of GEOM managed disk devices:\n  );
 g_dev_print();
 continue;
 }
 if (!vfs_mountroot_try(name, NULL))
 return (0);
 }
 }


 So this endless loop was exited only if vfs_mountroot_try() returned 
 success
 (error == 0) or if a user entered an empty string.

 
 


-- 
Andriy Gapon
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-10-14 Thread Marcel Moolenaar

On Oct 14, 2011, at 12:51 AM, Andriy Gapon wrote:

 on 30/08/2011 13:01 Andriy Gapon said the following:
 
 So, just to re-iterate, I think that this is indeed a regression and the one
 that could be particularly unhelpful for a new release - the time when people
 are much more likely to end up at the mountroot prompt during an 
 installation of
 a new system or an upgrade.
 
 Marcel,
 
 is there any chance that this regression can be fixed before the release?

Probably, yes. How do you want to fix this? You haven't really expressed
what you would like to see, other than mentioning that you think it's a
regression from before. Arguably, the previous behaviour had a lot to be
desired for so since you're worried about the user experience, thinking
this through is important.

 If not, then maybe it would be proper to pull the change that introduced it 
 out
 of the release branch (r214006) ?

Don't be ridiculous.

-- 
Marcel Moolenaar
mar...@xcllnt.net


___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-10-14 Thread Andriy Gapon
on 14/10/2011 16:37 Marcel Moolenaar said the following:
 
 On Oct 14, 2011, at 12:51 AM, Andriy Gapon wrote:
 
 on 30/08/2011 13:01 Andriy Gapon said the following:

 So, just to re-iterate, I think that this is indeed a regression and the one
 that could be particularly unhelpful for a new release - the time when 
 people
 are much more likely to end up at the mountroot prompt during an 
 installation of
 a new system or an upgrade.

 Marcel,

 is there any chance that this regression can be fixed before the release?
 
 Probably, yes. How do you want to fix this?

Simple: revert to the previous behavior.  If a user enters incorrect device name
(i.e. root mounting fails), then return back to the prompt instead of panicing.

 You haven't really expressed
 what you would like to see, other than mentioning that you think it's a
 regression from before.

I thought that what I wrote above was kind of obvious.

 Arguably, the previous behaviour had a lot to be
 desired for so since you're worried about the user experience, thinking
 this through is important.

I didn't see anything bad with the previous behavior in this respect.

 If not, then maybe it would be proper to pull the change that introduced it 
 out
 of the release branch (r214006) ?
 
 Don't be ridiculous.
 


-- 
Andriy Gapon
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-10-14 Thread Arnaud Lacombe
Andry Gapon wrote:
 Simple: revert to the previous behavior.  If a user enters incorrect device 
 name
(i.e. root mounting fails), then return back to the prompt instead of panicing.
That should do the job.

 - Arnaud

---
 sys/kern/vfs_mountroot.c |   45 +++--
 1 files changed, 23 insertions(+), 22 deletions(-)

diff --git a/sys/kern/vfs_mountroot.c b/sys/kern/vfs_mountroot.c
index ccbcb33..ae3ffa7 100644
--- a/sys/kern/vfs_mountroot.c
+++ b/sys/kern/vfs_mountroot.c
@@ -481,28 +481,29 @@ parse_dir_ask(char **conf)
printf(\n);
printf(  ?   List valid disk boot devices\n);
printf(  .   Yield 1 second (for background tasks)\n);
-   printf(  empty lineAbort manual input\n);
+   printf(  x   Abort manual input)\n);
+
+   do {
+   error = EINVAL;
+   printf(\nmountroot );
+   gets(name, sizeof(name), GETS_ECHO);
+   if (name[0] == '?') {
+   printf(\nList of GEOM managed disk devices:\n  );
+   g_dev_print();
+   continue;
+   }
+   if (name[0] == '.') {
+   pause(rmask, hz);
+   continue;
+   }
+   if (name[0] == 'x'  name[1] == '\0')
+   break;
+   mnt = name;
+   error = parse_mount(mnt);
+   if (error  0)
+   printf(Invalid specification.\n);
+   } while (error != 0);
 
- again:
-   printf(\nmountroot );
-   gets(name, sizeof(name), GETS_ECHO);
-   if (name[0] == '\0')
-   return (0);
-   if (name[0] == '?') {
-   printf(\nList of GEOM managed disk devices:\n  );
-   g_dev_print();
-   goto again;
-   }
-   if (name[0] == '.') {
-   pause(rmask, hz);
-   goto again;
-   }
-   mnt = name;
-   error = parse_mount(mnt);
-   if (error == -1) {
-   printf(Invalid specification.\n);
-   goto again;
-   }
return (error);
 }
 
-- 
1.7.6.153.g78432

___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-10-14 Thread Arnaud Lacombe
Hi,

On Fri, Oct 14, 2011 at 11:54 AM, Arnaud Lacombe lacom...@gmail.com wrote:
 Andry Gapon wrote:
 Simple: revert to the previous behavior.  If a user enters incorrect device 
 name
(i.e. root mounting fails), then return back to the prompt instead of 
panicing.
 That should do the job.

Actually, my primary interest in that patch was to be able to hit
enter to be sure I had the prompt (think a serial console connecting
after the message has been displayed), then enter the information. Not
sure that'd suit what you expect though.

 - Arnaud

  - Arnaud

 ---
  sys/kern/vfs_mountroot.c |   45 +++--
  1 files changed, 23 insertions(+), 22 deletions(-)

 diff --git a/sys/kern/vfs_mountroot.c b/sys/kern/vfs_mountroot.c
 index ccbcb33..ae3ffa7 100644
 --- a/sys/kern/vfs_mountroot.c
 +++ b/sys/kern/vfs_mountroot.c
 @@ -481,28 +481,29 @@ parse_dir_ask(char **conf)
        printf(\n);
        printf(  ?               List valid disk boot devices\n);
        printf(  .               Yield 1 second (for background tasks)\n);
 -       printf(  empty line    Abort manual input\n);
 +       printf(  x               Abort manual input)\n);
 +
 +       do {
 +               error = EINVAL;
 +               printf(\nmountroot );
 +               gets(name, sizeof(name), GETS_ECHO);
 +               if (name[0] == '?') {
 +                       printf(\nList of GEOM managed disk devices:\n  );
 +                       g_dev_print();
 +                       continue;
 +               }
 +               if (name[0] == '.') {
 +                       pause(rmask, hz);
 +                       continue;
 +               }
 +               if (name[0] == 'x'  name[1] == '\0')
 +                       break;
 +               mnt = name;
 +               error = parse_mount(mnt);
 +               if (error  0)
 +                       printf(Invalid specification.\n);
 +       } while (error != 0);

 - again:
 -       printf(\nmountroot );
 -       gets(name, sizeof(name), GETS_ECHO);
 -       if (name[0] == '\0')
 -               return (0);
 -       if (name[0] == '?') {
 -               printf(\nList of GEOM managed disk devices:\n  );
 -               g_dev_print();
 -               goto again;
 -       }
 -       if (name[0] == '.') {
 -               pause(rmask, hz);
 -               goto again;
 -       }
 -       mnt = name;
 -       error = parse_mount(mnt);
 -       if (error == -1) {
 -               printf(Invalid specification.\n);
 -               goto again;
 -       }
        return (error);
  }

 --
 1.7.6.153.g78432


___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-08-31 Thread Andriy Gapon
on 27/08/2011 18:16 Marcel Moolenaar said the following:
 Maybe a good approach is to change to .onfail retry
 and extend the root mount prompt with a reboot command,
 so that the user/operator is does not have to worry
 about typos *and* don't have to trigger a panic just
 so that he/she can initiate a reboot.
 
 Thoughts?


Perhaps...
Just reporting what happens if .onfail panic is changed to .onfail retry.

- if a mounting of a manually entered fs fails, then a value in 
vfs.mountroot.from
would be retried before presenting the prompt again
- the above happens regardless of whether -a option was given or mounting of
${vfs.mountroot.from} failed
- there is no way of the prompt (as you noted above) - previously an empty input
was the way out

So, even if .onfail retry is an improvement comparing to .onfail panic, it's 
still
a regression comparing to the previous behavior.

-- 
Andriy Gapon
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-08-30 Thread Andriy Gapon

So, just to re-iterate, I think that this is indeed a regression and the one
that could be particularly unhelpful for a new release - the time when people
are much more likely to end up at the mountroot prompt during an installation of
a new system or an upgrade.

on 29/08/2011 23:19 Andriy Gapon said the following:
 on 29/08/2011 19:45 Marcel Moolenaar said the following:

 On Aug 29, 2011, at 1:21 AM, Andriy Gapon wrote:

 on 27/08/2011 18:16 Marcel Moolenaar said the following:

 On Aug 26, 2011, at 2:07 PM, Andriy Gapon wrote:


 It seems that after the introduction of the mountroot scripting language 
 a user
 now has exactly one chance to try to specify a correct root device at the
 mountroot prompt.  I am not sure that that is convenient/enough.

 This is no different from before.

 Are you sure?
 I remember trying multiple (incorrect) possibilities at the prompt and not
 getting the panic.  But I know that sometimes I have cases of false 
 memories,
 so _I_ am not sure.

 I'm sure now that we're both not sure :-)

 It's possible the failure mode varied by how the root mount
 failed...
 
 
 Judging from the code before r214006 it shouldn't have panic-ed upon such a 
 failure:
 static int
 vfs_mountroot_ask(void)
 {
 char name[128];
 char *mountfrom;
 char *options;
 
 for(;;) {
 ...
 gets(name, sizeof(name), 1);
 if (name[0] == '\0')
 return (1);
 if (name[0] == '?') {
 printf(\nList of GEOM managed disk devices:\n  );
 g_dev_print();
 continue;
 }
 if (!vfs_mountroot_try(name, NULL))
 return (0);
 }
 }
 
 
 So this endless loop was exited only if vfs_mountroot_try() returned success
 (error == 0) or if a user entered an empty string.
 


-- 
Andriy Gapon
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-08-30 Thread Garrett Cooper
On Tue, Aug 30, 2011 at 3:01 AM, Andriy Gapon a...@freebsd.org wrote:

 So, just to re-iterate, I think that this is indeed a regression and the one
 that could be particularly unhelpful for a new release - the time when people
 are much more likely to end up at the mountroot prompt during an installation 
 of
 a new system or an upgrade.

Agreed -- in particular some of the changes that are incoming for
old users, i.e. atacam. Better to leave a good experience with FreeBSD
than a bad taste in someone's mouth because of undesirable behavior.
Thanks,
-Garrett
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-08-29 Thread Andriy Gapon
on 27/08/2011 18:16 Marcel Moolenaar said the following:
 
 On Aug 26, 2011, at 2:07 PM, Andriy Gapon wrote:
 

 It seems that after the introduction of the mountroot scripting language a 
 user
 now has exactly one chance to try to specify a correct root device at the
 mountroot prompt.  I am not sure that that is convenient/enough.
 
 This is no different from before.

Are you sure?
I remember trying multiple (incorrect) possibilities at the prompt and not
getting the panic.  But I know that sometimes I have cases of false memories,
so _I_ am not sure.

-- 
Andriy Gapon
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-08-29 Thread Marcel Moolenaar

On Aug 29, 2011, at 1:21 AM, Andriy Gapon wrote:

 on 27/08/2011 18:16 Marcel Moolenaar said the following:
 
 On Aug 26, 2011, at 2:07 PM, Andriy Gapon wrote:
 
 
 It seems that after the introduction of the mountroot scripting language a 
 user
 now has exactly one chance to try to specify a correct root device at the
 mountroot prompt.  I am not sure that that is convenient/enough.
 
 This is no different from before.
 
 Are you sure?
 I remember trying multiple (incorrect) possibilities at the prompt and not
 getting the panic.  But I know that sometimes I have cases of false 
 memories,
 so _I_ am not sure.

I'm sure now that we're both not sure :-)

It's possible the failure mode varied by how the root mount
failed...

-- 
Marcel Moolenaar
mar...@xcllnt.net


___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-08-29 Thread Andriy Gapon
on 29/08/2011 19:45 Marcel Moolenaar said the following:
 
 On Aug 29, 2011, at 1:21 AM, Andriy Gapon wrote:
 
 on 27/08/2011 18:16 Marcel Moolenaar said the following:

 On Aug 26, 2011, at 2:07 PM, Andriy Gapon wrote:


 It seems that after the introduction of the mountroot scripting language a 
 user
 now has exactly one chance to try to specify a correct root device at the
 mountroot prompt.  I am not sure that that is convenient/enough.

 This is no different from before.

 Are you sure?
 I remember trying multiple (incorrect) possibilities at the prompt and not
 getting the panic.  But I know that sometimes I have cases of false 
 memories,
 so _I_ am not sure.
 
 I'm sure now that we're both not sure :-)
 
 It's possible the failure mode varied by how the root mount
 failed...


Judging from the code before r214006 it shouldn't have panic-ed upon such a 
failure:
static int
vfs_mountroot_ask(void)
{
char name[128];
char *mountfrom;
char *options;

for(;;) {
...
gets(name, sizeof(name), 1);
if (name[0] == '\0')
return (1);
if (name[0] == '?') {
printf(\nList of GEOM managed disk devices:\n  );
g_dev_print();
continue;
}
if (!vfs_mountroot_try(name, NULL))
return (0);
}
}


So this endless loop was exited only if vfs_mountroot_try() returned success
(error == 0) or if a user entered an empty string.

-- 
Andriy Gapon
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


Re: possible mountroot regression

2011-08-27 Thread Marcel Moolenaar

On Aug 26, 2011, at 2:07 PM, Andriy Gapon wrote:

 
 It seems that after the introduction of the mountroot scripting language a 
 user
 now has exactly one chance to try to specify a correct root device at the
 mountroot prompt.  I am not sure that that is convenient/enough.

This is no different from before.

 I suspect that the following code is the cause:
 
 static void
 vfs_mountroot_conf0(struct sbuf *sb)
 {
char *s, *tok, *mnt, *opt;
int error;
 
sbuf_printf(sb, .onfail panic\n);
 …

Yes.

It is certainly a behavior we can improve upon. It's
rather annoying to get a panic on a typo. However,
we must remain cognizant of the fact that an immediate
hard failure is what's needed at times.

Maybe a good approach is to change to .onfail retry
and extend the root mount prompt with a reboot command,
so that the user/operator is does not have to worry
about typos *and* don't have to trigger a panic just
so that he/she can initiate a reboot.

Thoughts?

-- 
Marcel Moolenaar
mar...@xcllnt.net


___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org


possible mountroot regression

2011-08-26 Thread Andriy Gapon

It seems that after the introduction of the mountroot scripting language a user
now has exactly one chance to try to specify a correct root device at the
mountroot prompt.  I am not sure that that is convenient/enough.

I suspect that the following code is the cause:

static void
vfs_mountroot_conf0(struct sbuf *sb)
{
char *s, *tok, *mnt, *opt;
int error;

sbuf_printf(sb, .onfail panic\n);
...

-- 
Andriy Gapon
___
freebsd-current@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-current
To unsubscribe, send any mail to freebsd-current-unsubscr...@freebsd.org