Re: Kernel panic during installation

2016-02-13 Thread Ingo Schwarze
Stuart Henderson wrote on Sat, Feb 13, 2016 at 08:45:35PM +:
> On 2016-02-12, Donald Allen  wrote:
>> On Fri, Feb 12, 2016 at 3:42 PM, Stefan Sperling  wrote:
>>> On Fri, Feb 12, 2016 at 03:03:46PM -0500, Donald Allen wrote:

 I just used this exchange as an example to a friend who buys everything
 Apple and then complains when their software is buggy. This is a perfect
 example of how a direct negative feedback path makes software converge
 quickly to correctness, something you don't get with the big proprietary
 players like Apple, Microsoft, etc.

>>> That's correct, and it's why we're all here.
>>> Make sure your friend understands that we're not trying to provide a
>>> drop-in replacement for Apple, to avoid potential disappointment ;-)

>> Now *I'm* disappointed. I was looking forward to the OpenBSD equivalent
>> of Siri, which I expected would be called Theo. Can you imagine the
>> response to "Theo -- where is the nearest good pizza place?".

> mg
> (esc) x theo

But, but,...  he neither talks about The Hose And Hound in Inglewood
in that mode, nor do they serve pizza!

SCNR,
  Ingo



Re: Kernel panic during installation

2016-02-13 Thread Stuart Henderson
On 2016-02-12, Donald Allen  wrote:
> On Fri, Feb 12, 2016 at 3:42 PM, Stefan Sperling  wrote:
>
>> On Fri, Feb 12, 2016 at 03:03:46PM -0500, Donald Allen wrote:
>> > I just used this exchange as an example to a friend who buys everything
>> > Apple and then complains when their software is buggy. This is a perfect
>> > example of how a direct negative feedback path makes software converge
>> > quickly to correctness, something you don't get with the big proprietary
>> > players like Apple, Microsoft, etc.
>>
>> That's correct, and it's why we're all here.
>>
>> Make sure your friend understands that we're not trying to provide a
>> drop-in replacement for Apple, to avoid potential disappointment ;-)
>>
>
> Now *I'm* disappointed. I was looking forward to the OpenBSD equivalent of
> Siri, which I expected would be called Theo. Can you imagine the response
> to "Theo -- where is the nearest good pizza place?".

mg
(esc) x theo



Re: Kernel panic during installation

2016-02-12 Thread Donald Allen
On Fri, Feb 12, 2016 at 3:42 PM, Stefan Sperling  wrote:

> On Fri, Feb 12, 2016 at 03:03:46PM -0500, Donald Allen wrote:
> > I just used this exchange as an example to a friend who buys everything
> > Apple and then complains when their software is buggy. This is a perfect
> > example of how a direct negative feedback path makes software converge
> > quickly to correctness, something you don't get with the big proprietary
> > players like Apple, Microsoft, etc.
>
> That's correct, and it's why we're all here.
>
> Make sure your friend understands that we're not trying to provide a
> drop-in replacement for Apple, to avoid potential disappointment ;-)
>

Now *I'm* disappointed. I was looking forward to the OpenBSD equivalent of
Siri, which I expected would be called Theo. Can you imagine the response
to "Theo -- where is the nearest good pizza place?".



Re: Kernel panic during installation

2016-02-12 Thread Stefan Sperling
On Fri, Feb 12, 2016 at 03:03:46PM -0500, Donald Allen wrote:
> I just used this exchange as an example to a friend who buys everything
> Apple and then complains when their software is buggy. This is a perfect
> example of how a direct negative feedback path makes software converge
> quickly to correctness, something you don't get with the big proprietary
> players like Apple, Microsoft, etc.

That's correct, and it's why we're all here.

Make sure your friend understands that we're not trying to provide a
drop-in replacement for Apple, to avoid potential disappointment ;-)



Re: Kernel panic during installation

2016-02-12 Thread Donald Allen
On Fri, Feb 12, 2016 at 11:17 AM, Stefan Sperling  wrote:

> On Fri, Feb 12, 2016 at 10:47:16AM -0500, Donald Allen wrote:
> > On Fri, Feb 12, 2016 at 10:45 AM, Chris Cappuccio 
> wrote:
> >
> > > Donald Allen [donaldcal...@gmail.com] wrote:
> > > > On Feb 12, 2016 05:08, "Stefan Sperling"  wrote:
> > > > >
> > > > > On Thu, Feb 11, 2016 at 08:42:21PM -0500, Donald Allen wrote:
> > > > > > When attempting to install the 2/8 snapshot on my Thinkpad
> x-250, I
> > > > chose
> > > > > > to configure the wireless network interface (iwm). This resulted
> in
> > > the
> > > > > > following:
> > > > > >
> > > > > > iwm0: could not read firmware iwm-7265-9 (error 2)
> > > > > > panic: attempt to execute user address 0x0 in supervisor mode
> > > > >
> > > > > Do you have a trace from ddb please?
> > > >
> > > > There was no entry to ddb. There was one additional message after the
> > > above:
> > > >
> > > > syncing disks... done
> > > >
> > > > and that was all she wrote. (I took a photo of the screen.)
> > > >
> > > > If you have a suggestion for how to get the trace, I will certainly
> try
> > > to
> > > > help. Or maybe build a kernel with some additional printfs to try to
> > > > isolate where this is happening?
> > >
> > > sysctl ddb.panic=1 ??
> > >
> >
> > Ah .. thank you. I'll give it a try.
> >
>
> No need. I could reproduce locally. The problem also shows up with
> a GENERIC kernel when the firmware is not installed.
>
> For some reason, the callbacks into the wireless stack aren't hooked
> up until after the firmware is loaded. There is no reason not do hook
> them up ealier. This diff fixes the crash for me.
>

Thanks.

I just used this exchange as an example to a friend who buys everything
Apple and then complains when their software is buggy. This is a perfect
example of how a direct negative feedback path makes software converge
quickly to correctness, something you don't get with the big proprietary
players like Apple, Microsoft, etc.

>
> Index: if_iwm.c
> ===
> RCS file: /cvs/src/sys/dev/pci/if_iwm.c,v
> retrieving revision 1.77
> diff -u -p -r1.77 if_iwm.c
> --- if_iwm.c5 Feb 2016 16:08:44 -   1.77
> +++ if_iwm.c12 Feb 2016 16:10:48 -
> @@ -6642,18 +6642,6 @@ iwm_preinit(struct iwm_softc *sc)
> printf("%s: could not set MAC address (error %d)\n",
> DEVNAME(sc), error);
>
> -   ic->ic_node_alloc = iwm_node_alloc;
> -
> -   /* Override 802.11 state transition machine. */
> -   sc->sc_newstate = ic->ic_newstate;
> -   ic->ic_newstate = iwm_newstate;
> -   ic->ic_update_htprot = iwm_update_htprot;
> -   ic->ic_ampdu_rx_start = iwm_ampdu_rx_start;
> -   ic->ic_ampdu_rx_stop = iwm_ampdu_rx_stop;
> -#ifdef notyet
> -   ic->ic_ampdu_tx_start = iwm_ampdu_tx_start;
> -   ic->ic_ampdu_tx_stop = iwm_ampdu_tx_stop;
> -#endif
> ieee80211_media_init(ifp, iwm_media_change,
> ieee80211_media_status);
>
> return 0;
> @@ -6886,6 +6874,18 @@ iwm_attach(struct device *parent, struct
> task_set(&sc->ba_task, iwm_ba_task, sc);
> task_set(&sc->htprot_task, iwm_htprot_task, sc);
>
> +   ic->ic_node_alloc = iwm_node_alloc;
> +
> +   /* Override 802.11 state transition machine. */
> +   sc->sc_newstate = ic->ic_newstate;
> +   ic->ic_newstate = iwm_newstate;
> +   ic->ic_update_htprot = iwm_update_htprot;
> +   ic->ic_ampdu_rx_start = iwm_ampdu_rx_start;
> +   ic->ic_ampdu_rx_stop = iwm_ampdu_rx_stop;
> +#ifdef notyet
> +   ic->ic_ampdu_tx_start = iwm_ampdu_tx_start;
> +   ic->ic_ampdu_tx_stop = iwm_ampdu_tx_stop;
> +#endif
> /*
>  * We cannot read the MAC address without loading the
>  * firmware from disk. Postpone until mountroot is done.



Re: Kernel panic during installation

2016-02-12 Thread Stefan Sperling
On Fri, Feb 12, 2016 at 10:47:16AM -0500, Donald Allen wrote:
> On Fri, Feb 12, 2016 at 10:45 AM, Chris Cappuccio  wrote:
> 
> > Donald Allen [donaldcal...@gmail.com] wrote:
> > > On Feb 12, 2016 05:08, "Stefan Sperling"  wrote:
> > > >
> > > > On Thu, Feb 11, 2016 at 08:42:21PM -0500, Donald Allen wrote:
> > > > > When attempting to install the 2/8 snapshot on my Thinkpad x-250, I
> > > chose
> > > > > to configure the wireless network interface (iwm). This resulted in
> > the
> > > > > following:
> > > > >
> > > > > iwm0: could not read firmware iwm-7265-9 (error 2)
> > > > > panic: attempt to execute user address 0x0 in supervisor mode
> > > >
> > > > Do you have a trace from ddb please?
> > >
> > > There was no entry to ddb. There was one additional message after the
> > above:
> > >
> > > syncing disks... done
> > >
> > > and that was all she wrote. (I took a photo of the screen.)
> > >
> > > If you have a suggestion for how to get the trace, I will certainly try
> > to
> > > help. Or maybe build a kernel with some additional printfs to try to
> > > isolate where this is happening?
> >
> > sysctl ddb.panic=1 ??
> >
> 
> Ah .. thank you. I'll give it a try.
> 

No need. I could reproduce locally. The problem also shows up with
a GENERIC kernel when the firmware is not installed.

For some reason, the callbacks into the wireless stack aren't hooked
up until after the firmware is loaded. There is no reason not do hook
them up ealier. This diff fixes the crash for me.

Index: if_iwm.c
===
RCS file: /cvs/src/sys/dev/pci/if_iwm.c,v
retrieving revision 1.77
diff -u -p -r1.77 if_iwm.c
--- if_iwm.c5 Feb 2016 16:08:44 -   1.77
+++ if_iwm.c12 Feb 2016 16:10:48 -
@@ -6642,18 +6642,6 @@ iwm_preinit(struct iwm_softc *sc)
printf("%s: could not set MAC address (error %d)\n",
DEVNAME(sc), error);
 
-   ic->ic_node_alloc = iwm_node_alloc;
-
-   /* Override 802.11 state transition machine. */
-   sc->sc_newstate = ic->ic_newstate;
-   ic->ic_newstate = iwm_newstate;
-   ic->ic_update_htprot = iwm_update_htprot;
-   ic->ic_ampdu_rx_start = iwm_ampdu_rx_start;
-   ic->ic_ampdu_rx_stop = iwm_ampdu_rx_stop;
-#ifdef notyet
-   ic->ic_ampdu_tx_start = iwm_ampdu_tx_start;
-   ic->ic_ampdu_tx_stop = iwm_ampdu_tx_stop;
-#endif
ieee80211_media_init(ifp, iwm_media_change, ieee80211_media_status);
 
return 0;
@@ -6886,6 +6874,18 @@ iwm_attach(struct device *parent, struct
task_set(&sc->ba_task, iwm_ba_task, sc);
task_set(&sc->htprot_task, iwm_htprot_task, sc);
 
+   ic->ic_node_alloc = iwm_node_alloc;
+
+   /* Override 802.11 state transition machine. */
+   sc->sc_newstate = ic->ic_newstate;
+   ic->ic_newstate = iwm_newstate;
+   ic->ic_update_htprot = iwm_update_htprot;
+   ic->ic_ampdu_rx_start = iwm_ampdu_rx_start;
+   ic->ic_ampdu_rx_stop = iwm_ampdu_rx_stop;
+#ifdef notyet
+   ic->ic_ampdu_tx_start = iwm_ampdu_tx_start;
+   ic->ic_ampdu_tx_stop = iwm_ampdu_tx_stop;
+#endif
/*
 * We cannot read the MAC address without loading the
 * firmware from disk. Postpone until mountroot is done.



Re: Kernel panic during installation

2016-02-12 Thread Donald Allen
On Fri, Feb 12, 2016 at 10:45 AM, Chris Cappuccio  wrote:

> Donald Allen [donaldcal...@gmail.com] wrote:
> > On Feb 12, 2016 05:08, "Stefan Sperling"  wrote:
> > >
> > > On Thu, Feb 11, 2016 at 08:42:21PM -0500, Donald Allen wrote:
> > > > When attempting to install the 2/8 snapshot on my Thinkpad x-250, I
> > chose
> > > > to configure the wireless network interface (iwm). This resulted in
> the
> > > > following:
> > > >
> > > > iwm0: could not read firmware iwm-7265-9 (error 2)
> > > > panic: attempt to execute user address 0x0 in supervisor mode
> > >
> > > Do you have a trace from ddb please?
> >
> > There was no entry to ddb. There was one additional message after the
> above:
> >
> > syncing disks... done
> >
> > and that was all she wrote. (I took a photo of the screen.)
> >
> > If you have a suggestion for how to get the trace, I will certainly try
> to
> > help. Or maybe build a kernel with some additional printfs to try to
> > isolate where this is happening?
>
> sysctl ddb.panic=1 ??
>

Ah .. thank you. I'll give it a try.



Re: Kernel panic during installation

2016-02-12 Thread Chris Cappuccio
Donald Allen [donaldcal...@gmail.com] wrote:
> On Feb 12, 2016 05:08, "Stefan Sperling"  wrote:
> >
> > On Thu, Feb 11, 2016 at 08:42:21PM -0500, Donald Allen wrote:
> > > When attempting to install the 2/8 snapshot on my Thinkpad x-250, I
> chose
> > > to configure the wireless network interface (iwm). This resulted in the
> > > following:
> > >
> > > iwm0: could not read firmware iwm-7265-9 (error 2)
> > > panic: attempt to execute user address 0x0 in supervisor mode
> >
> > Do you have a trace from ddb please?
> 
> There was no entry to ddb. There was one additional message after the above:
> 
> syncing disks... done
> 
> and that was all she wrote. (I took a photo of the screen.)
> 
> If you have a suggestion for how to get the trace, I will certainly try to
> help. Or maybe build a kernel with some additional printfs to try to
> isolate where this is happening?

sysctl ddb.panic=1 ??



Re: Kernel panic during installation

2016-02-12 Thread Donald Allen
On Feb 12, 2016 05:08, "Stefan Sperling"  wrote:
>
> On Thu, Feb 11, 2016 at 08:42:21PM -0500, Donald Allen wrote:
> > When attempting to install the 2/8 snapshot on my Thinkpad x-250, I
chose
> > to configure the wireless network interface (iwm). This resulted in the
> > following:
> >
> > iwm0: could not read firmware iwm-7265-9 (error 2)
> > panic: attempt to execute user address 0x0 in supervisor mode
>
> Do you have a trace from ddb please?

There was no entry to ddb. There was one additional message after the above:

syncing disks... done

and that was all she wrote. (I took a photo of the screen.)

If you have a suggestion for how to get the trace, I will certainly try to
help. Or maybe build a kernel with some additional printfs to try to
isolate where this is happening?



Re: Kernel panic during installation

2016-02-12 Thread Stefan Sperling
On Thu, Feb 11, 2016 at 08:42:21PM -0500, Donald Allen wrote:
> When attempting to install the 2/8 snapshot on my Thinkpad x-250, I chose
> to configure the wireless network interface (iwm). This resulted in the
> following:
> 
> iwm0: could not read firmware iwm-7265-9 (error 2)
> panic: attempt to execute user address 0x0 in supervisor mode

Do you have a trace from ddb please?