Re: Proposal: make portsnap generate INDEX-${OSREL:R} only by default

2015-08-07 Thread Matthew Seaman
On 08/07/15 05:11, Kevin Oberman wrote:
> Isn't rebuilding the index useful for people running STABLE? I assume that
> I need a current index to get useful output from "pkg version -vL=". I am
> probably a bit unusual in that I keep a current ports tre on a STABLE
> system, but there are a couple of ports that I need to build due to custom
> options and I find poudriere overkill for this case. I suspect many people
> running STABLE may use portsnap and build everything from ports. (This use
> to be common fairly recently and likely still is.)

Actually 'pkg version -vL=' uses one of three different methods to get
information about available port/pkg versions:

* by reading the INDEX (if it exists).
* failing that, by running 'make -V PKGNAME' (or similar) but only
  if there's a ports tree on the system.  This is horribly slow.
* failing that, by using the repository catalogue.

So it will cope without an INDEX file if it has to -- that's unless you
use any of the -I, -P or -R flags to tell it exactly what to do.

Of course, if you're using custom options, then the ports tree you
download from portsnap won't necessarily be accurate for your setup
anyhow.  The good news is that it really doesn't have to be.  Pretty
much everything I've run across in dealing with building software out of
the ports will work fine without an index or with an incorrect index.
Maybe a bit slower than otherwise, but frequently it makes no difference.

Cheers,

Matthew




signature.asc
Description: OpenPGP digital signature


Re: Proposal: make portsnap generate INDEX-${OSREL:R} only by default

2015-08-07 Thread Matthew Seaman
On 08/07/15 09:40, Matthew Seaman wrote:
> Of course, if you're using custom options, then the ports tree you

the ports *INDEX*

D'Oh!

Matthew



signature.asc
Description: OpenPGP digital signature


FreeBSD_HEAD_i386 - Build #778 - Failure

2015-08-07 Thread jenkins-admin
FreeBSD_HEAD_i386 - Build #778 - Failure:

Build information: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD_i386/778/
Full change log: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD_i386/778/changes
Full build log: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD_i386/778/console

Change summaries:

286413 by glebius:
Fix !MWL_DEBUG build.

286411 by jah:
Create man page for pmap_quick_enter_page(9) and pmap_quick_remove_page(9)

Reviewed by:kib, brueffer, wblock
Approved by:kib (mentor)
Differential Revision:  https://reviews.freebsd.org/D3312

286410 by glebius:
Change KPI of how device drivers that provide wireless connectivity interact
with the net80211 stack.

Historical background: originally wireless devices created an interface,
just like Ethernet devices do. Name of an interface matched the name of
the driver that created. Later, wlan(4) layer was introduced, and the
wlanX interfaces become the actual interface, leaving original ones as
"a parent interface" of wlanX. Kernelwise, the KPI between net80211 layer
and a driver became a mix of methods that pass a pointer to struct ifnet
as identifier and methods that pass pointer to struct ieee80211com. From
user point of view, the parent interface just hangs on in the ifconfig
list, and user can't do anything useful with it.

Now, the struct ifnet goes away. The struct ieee80211com is the only
KPI between a device driver and net80211. Details:

- The struct ieee80211com is embedded into drivers softc.
- Packets are sent via new ic_transmit method, which is very much like
  the previous if_transmit.
- Bringing parent up/down is done via new ic_parent method, which notifies
  driver about any changes: number of wlan(4) interfaces, number of them
  in promisc or allmulti state.
- Device specific ioctls (if any) are received on new ic_ioctl method.
- Packets/errors accounting are done by the stack. In certain cases, when
  driver experiences errors and can not attribute them to any specific
  interface, driver updates ic_oerrors or ic_ierrors counters.

Details on interface configuration with new world order:
- A sequence of commands needed to bring up wireless DOESN"T change.
- /etc/rc.conf parameters DON'T change.
- List of devices that can be used to create wlan(4) interfaces is
  now provided by net.wlan.devices sysctl.

Most drivers in this change were converted by me, except of wpi(4),
that was done by Andriy Voskoboinyk. Big thanks to Kevin Lo for testing
changes to at least 8 drivers. Thanks to Olivier Cochard, gjb@, mmoll@,
op@ and lev@, who also participated in testing. Details here:

https://wiki.freebsd.org/projects/ifnet/net80211

Still, drivers: ndis, wtap, mwl, ipw, bwn, wi, upgt, uath were not
tested. Changes to mwl, ipw, bwn, wi, upgt are trivial and chances
of problems are low. The wtap wasn't compilable even before this change.
But the ndis driver is complex, and it is likely to be broken with this
commit. Help with testing and debugging it is appreciated.

Differential Revision:  D2655, D2740
Sponsored by:   Nginx, Inc.
Sponsored by:   Netflix



The end of the build log:

[...truncated 187069 lines...]
ld -d -warn-common -r -d -o snd_via8233.kld via8233.o
ctfmerge -L VERSION -g -o snd_via8233.kld via8233.o
:> export_syms
awk -f /usr/src/sys/conf/kmod_syms.awk snd_via8233.kld  export_syms | xargs -J% 
objcopy % snd_via8233.kld
--- all_subdir_vkbd ---
===> vkbd (all)
--- all_subdir_sound ---
--- snd_via8233.ko.debug ---
ld -Bshareable -d -warn-common -o snd_via8233.ko.debug snd_via8233.kld
--- snd_via8233.ko.symbols ---
objcopy --only-keep-debug snd_via8233.ko.debug snd_via8233.ko.symbols
--- snd_via8233.ko ---
objcopy --strip-debug --add-gnu-debuglink=snd_via8233.ko.symbols 
snd_via8233.ko.debug snd_via8233.ko
===> sound/driver/via82c686 (all)
--- all_subdir_vkbd ---
--- vkbd.o ---
cc  -O2 -pipe  -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE -nostdinc   
-DHAVE_KERNEL_OPTION_HEADERS -include /usr/obj/usr/src/sys/GENERIC/opt_global.h 
-I. -I/usr/src/sys -fno-common -g -I/usr/obj/usr/src/sys/GENERIC  -mno-mmx 
-mno-sse -msoft-float -ffreestanding -fwrapv -fstack-protector -gdwarf-2 -Wall 
-Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes 
-Wpointer-arith -Winline -Wcast-qual  -Wundef -Wno-pointer-sign 
-D__printf__=__freebsd_kprintf__  -Wmissing-include-dirs 
-fdiagnostics-show-option  -Wno-unknown-pragmas  
-Wno-error-tautological-compare -Wno-error-empty-body  
-Wno-error-parentheses-equality -Wno-error-unused-function  
-Wno-error-pointer-sign  -mno-aes -mno-avx  -std=iso9899:1999 -c 
/usr/src/sys/modules/vkbd/../../dev/vkbd/vkbd.c -o vkbd.o
--- all_subdir_sound ---
--- via82c686.o ---
cc  -O2 -pipe  -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE -nostdinc   
-DHAVE_KERNEL_OPTION_HEADERS -include /usr/obj/usr/src/sys/GENERIC/opt_global.h 
-I. -I/usr/src/sys -fno-common -g -I/usr/obj/usr/src/sys/GENERIC  -mno-mmx 
-mno-sse -msoft-float -ffreestanding -fwrapv -fstack-protector -gdwarf-2 -Wall 
-Wred

Re: Proposal: make portsnap generate INDEX-${OSREL:R} only by default

2015-08-07 Thread Jamie Landeg-Jones
Xin Li  wrote:

> On 8/6/15 22:24, Kevin Oberman wrote:
> > Or the code in portsnap could be modified to get the current
> > running version.
>
> I thought about this today but it won't work as advertised: someone
> (currently me) still have to tweak the portsnap builder configuration
> to announce new major version (9, 10, 11 now, and we would need 12
> when 11.0-STABLE appears).  However, freebsd-update or mergemaster
> would take care for this.

I was going to suggest this too. Isn't this information available
using /bin/freebsd-version -u ?

Yes, I realise this script basically has it hardcoded, but it seems,
therefore, that someone already has the task to announce new major
version in that file!

Cheers!
Jamie
___
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: [head up!] WiFi drivers changes

2015-08-07 Thread O. Hartmann
Am Thu, 6 Aug 2015 18:13:55 +0300
Gleb Smirnoff  schrieb:

>   Hi!
> 
>   As part of the "opaque ifnet project" [1], all 802.11 (WiFi) drivers
> undergo change of not being an interface anymore. Historically in FreeBSD
> 802.11 stack, 802.11 devices called if_attach() and created an interface.
> Later this was generalized and real functioning interface is created by
> net80211 stack. However, remnant of parent interface remained. If you
> are running Intel Centrino wireless, then you got iwn0 interface and
> wlan0 interface. However, the former doesn't do anything. You can't
> assign addresses to it or modify any of it parameters. Or you can
> modify them, but that affects nothing.
> 
> This superfluous ifnet on the list entangles the net80211 stack and
> also is on the way of [1]. So, decision was made to remove it. I
> already did preparatory commits back in May, and now it is time to
> finish that.
> 
> The patch is:
> 
> https://reviews.freebsd.org/D2655
> 
> And the Wiki page for it is:
> 
> https://wiki.freebsd.org/projects/ifnet/net80211
> 
> The patch modifies every driver, and diff is bulky. However, changes
> are mechanical and simple, most drivers appeared to work after first
> run. Most converted drivers are tested to work.
> 
> This is list of drivers that are not tested, due to lack of testers:
> 
>   mwl, ipw, bwn, wi, upgt, uath.
> 
> But, as said, changes are mechanical and probability is 95% that
> they will work.
> 
> The only complex one is ndis(4). It could be broken by conversion.
> Since I already got a tester volunteer, I will fix it quickly if
> anything happens.
> 
> Another untrivial one is wtap(4), which is not connected to the
> build and appeared to be broken even before conversion. Anyway,
> I made it compilable.
> 
> Now, for the configuration. The sequence of commands you need
> to run to configure a WiFi interface doesn't change. As before
> it is:
> 
> ifconfig wlan0 create wlandev iwn0
> ifconfig wlan0 $foo
> 
> Your rc.conf doesn't need any changes. As before:
> 
> wlans_iwn0="wlan0"
> ifconfig_wlan0="DHCP WPA"
> 
> However, iwn0 disappeared from the 'ifconfig -l'. It is still
> in devinfo, or in dmesg. For the sake of installers or other
> configuration software, a sysctl is provided:
> 
> net.wlan.devices: iwn0
> 
> The /etc subsystem needs to be tweaked. Previously the wlan(4)
> interfaces were created in childif_create(), and the script
> did check for presence of parent interface. In my patch I
> provided wlans_up(), that doesn't check. The code in D2655
> now works correctly both on patched and on unpatched kernel.
> 
> Alternatively, I could tweak childif_create() to use net.wlan.devices
> instead of 'ifconfig -l'. Or, to use them both, to work on older
> and on newer kernels?
> 
> I am not sure which path with /etc is better, so seeking for
> help with that.
> 

After updating to FreeBSD 11.0-CURRENT #0 r286415: Fri Aug  7 17:22:43 CEST 
2015 amd64,
several APs won't startup anymore:

[...]
Starting hostapd.
Configuration file: /etc/hostapd.conf
bsd_set_if_media: SIOCSIFMEDIA Device not configured
bsd_init: failed to set operation mode
bsd driver initialization failed.
wlan0: interface state UNINITIALIZED->DISABLED
wlan0: AP-DISABLED 
hostapd_free_hapd_data: Interface wlan0 wasn't started
ELOOP: remaining socket: sock=5 eloop_data=0x801c47100 user_data=0x0 
handler=0x41a0e0
/etc/rc.d/hostapd: WARNING: failed to start hostapd


pgp7aWZmE_Jnu.pgp
Description: OpenPGP digital signature


Re: Proposal: make portsnap generate INDEX-${OSREL:R} only by default

2015-08-07 Thread Xin Li
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA512

On 08/07/15 08:50, Jamie Landeg-Jones wrote:
> Xin Li  wrote:
> 
>> On 8/6/15 22:24, Kevin Oberman wrote:
>>> Or the code in portsnap could be modified to get the current 
>>> running version.
>> 
>> I thought about this today but it won't work as advertised:
>> someone (currently me) still have to tweak the portsnap builder
>> configuration to announce new major version (9, 10, 11 now, and
>> we would need 12 when 11.0-STABLE appears).  However,
>> freebsd-update or mergemaster would take care for this.
> 
> I was going to suggest this too. Isn't this information available 
> using /bin/freebsd-version -u ?

Client side: yes.

Server side: someone has to tell the server to start building for new
- -CURRENT or stop building for old -STABLE.

Cheers,
- -- 
Xin LI https://www.delphij.net/
FreeBSD - The Power to Serve!   Live free or die
-BEGIN PGP SIGNATURE-
Version: GnuPG v2.1.6 (FreeBSD)

iQIcBAEBCgAGBQJVxNcgAAoJEJW2GBstM+ns2HQP/iQfmSjJ853Aj4Bs+0qed7Ya
UoE4LDaX1PJSIpqswyWir34mSgqZ5jHC8wuEkNrT3dlXaSnuxBmjvZfm23T/AUFH
9b/ytjJGlZWT0Db88AOnIeiMKKKX786m9mkDxiY2C747Q0L+KqLzQx6Ltrgl7DEm
9arRlB3nQcix9u7badVgP+B3CRfspUwtqmL9m+4LFIlJQA3OPsMxySdKoJlCQD8H
E1rJNV/6NOxIIX2Y+/6EBhtNnhQwbXyKT74B/4UKFaGNaKfw7XIjB5T4yGBaWhPL
4VXqzDRU2g0YGY8VM3/uXA3AfSVuVYi9kmm2R3W/91TFwOVqGH31OQQczeK78Gpn
dx8+kOfC7OLGWaQ9Xb9H3bNcPUknRuUVusb4+Wbe8qXk5cWfeyIJLTK7GC4Vvq4i
dGf+rYpEMls/0t+W+6e1re+XTlZtgepLfWQMuuhCbOQf8egKktClbJ++Th6krc1B
Aob62BmfgNgq4mS8t21Ee2heBTTrjNwp+openjPv9+ffvhmDngshNrdp+z4umQ3G
uryURepM9YYmrRWVmD9ZOei81R2QIpzdFh/Xv4w8bwTAoiV3oJfNIavbJWuhsEsk
sAKU2Kk0oBiTDwOqe4ZEVfF1HWbOZe6X6gBWjwO0f/RG7Rtn9pexU9TRzBL1SmeE
qUix6Wbx6VfCB+7QiQgg
=LDxP
-END PGP SIGNATURE-
___
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_HEAD_i386 - Build #779 - Still Failing

2015-08-07 Thread jenkins-admin
FreeBSD_HEAD_i386 - Build #779 - Still Failing:

Build information: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD_i386/779/
Full change log: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD_i386/779/changes
Full build log: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD_i386/779/console

Change summaries:

286415 by mav:
Add unmapped I/O support to ata(4) driver.

Main problem there was PIO mode support, that required KVA mapping.
Handle that case using recently added pmap_quick_enter_page(9) KPI,
mapping data pages to KVA one at a time.

286414 by mav:
Add more ifdefs to fix build with GCC after r286406.



The end of the build log:

[...truncated 186881 lines...]
--- if_vtnet.ko ---
--- all_subdir_sound ---
ctfconvert -L VERSION -g vibes.o
--- all_subdir_virtio ---
objcopy --strip-debug --add-gnu-debuglink=if_vtnet.ko.symbols if_vtnet.ko.debug 
if_vtnet.ko
--- ar5212_attach.o ---
ctfconvert -L VERSION -g ar5212_attach.o
--- modules-all ---
===> virtio/block (all)
--- all_subdir_sound ---
--- snd_vibes.kld ---
ld -d -warn-common -r -d -o snd_vibes.kld vibes.o
ctfmerge -L VERSION -g -o snd_vibes.kld vibes.o
:> export_syms
awk -f /usr/src/sys/conf/kmod_syms.awk snd_vibes.kld  export_syms | xargs -J% 
objcopy % snd_vibes.kld
--- all_subdir_usb ---
--- all_subdir_ural ---
===> usb/ural (all)
--- all_subdir_virtio ---
--- virtio_blk.o ---
cc  -O2 -pipe  -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE -nostdinc   
-DHAVE_KERNEL_OPTION_HEADERS -include /usr/obj/usr/src/sys/GENERIC/opt_global.h 
-I. -I/usr/src/sys -fno-common -g -I/usr/obj/usr/src/sys/GENERIC  -mno-mmx 
-mno-sse -msoft-float -ffreestanding -fwrapv -fstack-protector -gdwarf-2 -Wall 
-Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes 
-Wpointer-arith -Winline -Wcast-qual  -Wundef -Wno-pointer-sign 
-D__printf__=__freebsd_kprintf__  -Wmissing-include-dirs 
-fdiagnostics-show-option  -Wno-unknown-pragmas  
-Wno-error-tautological-compare -Wno-error-empty-body  
-Wno-error-parentheses-equality -Wno-error-unused-function  
-Wno-error-pointer-sign  -mno-aes -mno-avx  -std=iso9899:1999 -c 
/usr/src/sys/modules/virtio/block/../../../dev/virtio/block/virtio_blk.c -o 
virtio_blk.o
--- all_subdir_sound ---
--- snd_vibes.ko.debug ---
ld -Bshareable -d -warn-common -o snd_vibes.ko.debug snd_vibes.kld
--- snd_vibes.ko.symbols ---
objcopy --only-keep-debug snd_vibes.ko.debug snd_vibes.ko.symbols
--- snd_vibes.ko ---
objcopy --strip-debug --add-gnu-debuglink=snd_vibes.ko.symbols 
snd_vibes.ko.debug snd_vibes.ko
===> sound/driver/driver (all)
--- all_subdir_usb ---
--- if_ural.o ---
cc  -O2 -pipe  -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE -nostdinc   
-DHAVE_KERNEL_OPTION_HEADERS -include /usr/obj/usr/src/sys/GENERIC/opt_global.h 
-I. -I/usr/src/sys -fno-common -g -I/usr/obj/usr/src/sys/GENERIC  -mno-mmx 
-mno-sse -msoft-float -ffreestanding -fwrapv -fstack-protector -gdwarf-2 -Wall 
-Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes 
-Wpointer-arith -Winline -Wcast-qual  -Wundef -Wno-pointer-sign 
-D__printf__=__freebsd_kprintf__  -Wmissing-include-dirs 
-fdiagnostics-show-option  -Wno-unknown-pragmas  
-Wno-error-tautological-compare -Wno-error-empty-body  
-Wno-error-parentheses-equality -Wno-error-unused-function  
-Wno-error-pointer-sign  -mno-aes -mno-avx  -std=iso9899:1999 -c 
/usr/src/sys/modules/usb/ural/../../../dev/usb/wlan/if_ural.c -o if_ural.o
--- all_subdir_sound ---
--- driver.o ---
cc  -O2 -pipe  -fno-strict-aliasing -Werror -D_KERNEL -DKLD_MODULE -nostdinc   
-DHAVE_KERNEL_OPTION_HEADERS -include /usr/obj/usr/src/sys/GENERIC/opt_global.h 
-I. -I/usr/src/sys -fno-common -g -I/usr/obj/usr/src/sys/GENERIC  -mno-mmx 
-mno-sse -msoft-float -ffreestanding -fwrapv -fstack-protector -gdwarf-2 -Wall 
-Wredundant-decls -Wnested-externs -Wstrict-prototypes  -Wmissing-prototypes 
-Wpointer-arith -Winline -Wcast-qual  -Wundef -Wno-pointer-sign 
-D__printf__=__freebsd_kprintf__  -Wmissing-include-dirs 
-fdiagnostics-show-option  -Wno-unknown-pragmas  
-Wno-error-tautological-compare -Wno-error-empty-body  
-Wno-error-parentheses-equality -Wno-error-unused-function  
-Wno-error-pointer-sign  -mno-aes -mno-avx  -std=iso9899:1999 -c 
/usr/src/sys/modules/sound/driver/driver/../../../../dev/sound/driver.c -o 
driver.o
ctfconvert -L VERSION -g driver.o
--- snd_driver.kld ---
ld -d -warn-common -r -d -o snd_driver.kld driver.o
ctfmerge -L VERSION -g -o snd_driver.kld driver.o
:> export_syms
awk -f /usr/src/sys/conf/kmod_syms.awk snd_driver.kld  export_syms | xargs -J% 
objcopy % snd_driver.kld
--- snd_driver.ko.debug ---
ld -Bshareable -d -warn-common -o snd_driver.ko.debug snd_driver.kld
--- snd_driver.ko.symbols ---
objcopy --only-keep-debug snd_driver.ko.debug snd_driver.ko.symbols
--- snd_driver.ko ---
objcopy --strip-debug --add-gnu-debuglink=snd_driver.ko.symbols 
snd_driver.ko.debug snd_driver.ko
===> sound/driver/uaudio (all)
--- uaudio_pcm.o ---
cc  -O2 -pipe  -fno-strict-aliasing -Werror -D_KERNEL -

Re: Proposal: make portsnap generate INDEX-${OSREL:R} only by default

2015-08-07 Thread Jamie Landeg-Jones
Xin Li  wrote:

> > I was going to suggest this too. Isn't this information available 
> > using /bin/freebsd-version -u ?
>
> Client side: yes.
>
> Server side: someone has to tell the server to start building for new
> - -CURRENT or stop building for old -STABLE.

Ahhh! Gotcha! Thanks for the quick response. I'll stop bike-shedding now!

Cheers,
Jamie
___
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_HEAD_i386 - Build #780 - Fixed

2015-08-07 Thread jenkins-admin
FreeBSD_HEAD_i386 - Build #780 - Fixed:

Build information: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD_i386/780/
Full change log: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD_i386/780/changes
Full build log: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD_i386/780/console

Change summaries:

286416 by glebius:
Fix mtx_assert() argument.

___
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_HEAD - Build #3045 - Fixed

2015-08-07 Thread jenkins-admin
FreeBSD_HEAD - Build #3045 - Fixed:

Build information: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD/3045/
Full change log: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD/3045/changes
Full build log: https://jenkins.FreeBSD.org/job/FreeBSD_HEAD/3045/console

Change summaries:

286417 by marcel:
o  Fix a typo.
o  Describe the file formats mkimg can create.

286416 by glebius:
Fix mtx_assert() argument.

286415 by mav:
Add unmapped I/O support to ata(4) driver.

Main problem there was PIO mode support, that required KVA mapping.
Handle that case using recently added pmap_quick_enter_page(9) KPI,
mapping data pages to KVA one at a time.

___
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: [head up!] WiFi drivers changes

2015-08-07 Thread Adrian Chadd
Hi,

Gleb/others doing this: you have 4 days to figure out what's wrong
with things, or I'm backing all of this work out.

Thanks,


-adrian


On 7 August 2015 at 08:52, O. Hartmann  wrote:
> Am Thu, 6 Aug 2015 18:13:55 +0300
> Gleb Smirnoff  schrieb:
>
>>   Hi!
>>
>>   As part of the "opaque ifnet project" [1], all 802.11 (WiFi) drivers
>> undergo change of not being an interface anymore. Historically in FreeBSD
>> 802.11 stack, 802.11 devices called if_attach() and created an interface.
>> Later this was generalized and real functioning interface is created by
>> net80211 stack. However, remnant of parent interface remained. If you
>> are running Intel Centrino wireless, then you got iwn0 interface and
>> wlan0 interface. However, the former doesn't do anything. You can't
>> assign addresses to it or modify any of it parameters. Or you can
>> modify them, but that affects nothing.
>>
>> This superfluous ifnet on the list entangles the net80211 stack and
>> also is on the way of [1]. So, decision was made to remove it. I
>> already did preparatory commits back in May, and now it is time to
>> finish that.
>>
>> The patch is:
>>
>> https://reviews.freebsd.org/D2655
>>
>> And the Wiki page for it is:
>>
>> https://wiki.freebsd.org/projects/ifnet/net80211
>>
>> The patch modifies every driver, and diff is bulky. However, changes
>> are mechanical and simple, most drivers appeared to work after first
>> run. Most converted drivers are tested to work.
>>
>> This is list of drivers that are not tested, due to lack of testers:
>>
>>   mwl, ipw, bwn, wi, upgt, uath.
>>
>> But, as said, changes are mechanical and probability is 95% that
>> they will work.
>>
>> The only complex one is ndis(4). It could be broken by conversion.
>> Since I already got a tester volunteer, I will fix it quickly if
>> anything happens.
>>
>> Another untrivial one is wtap(4), which is not connected to the
>> build and appeared to be broken even before conversion. Anyway,
>> I made it compilable.
>>
>> Now, for the configuration. The sequence of commands you need
>> to run to configure a WiFi interface doesn't change. As before
>> it is:
>>
>> ifconfig wlan0 create wlandev iwn0
>> ifconfig wlan0 $foo
>>
>> Your rc.conf doesn't need any changes. As before:
>>
>> wlans_iwn0="wlan0"
>> ifconfig_wlan0="DHCP WPA"
>>
>> However, iwn0 disappeared from the 'ifconfig -l'. It is still
>> in devinfo, or in dmesg. For the sake of installers or other
>> configuration software, a sysctl is provided:
>>
>> net.wlan.devices: iwn0
>>
>> The /etc subsystem needs to be tweaked. Previously the wlan(4)
>> interfaces were created in childif_create(), and the script
>> did check for presence of parent interface. In my patch I
>> provided wlans_up(), that doesn't check. The code in D2655
>> now works correctly both on patched and on unpatched kernel.
>>
>> Alternatively, I could tweak childif_create() to use net.wlan.devices
>> instead of 'ifconfig -l'. Or, to use them both, to work on older
>> and on newer kernels?
>>
>> I am not sure which path with /etc is better, so seeking for
>> help with that.
>>
>
> After updating to FreeBSD 11.0-CURRENT #0 r286415: Fri Aug  7 17:22:43 CEST 
> 2015 amd64,
> several APs won't startup anymore:
>
> [...]
> Starting hostapd.
> Configuration file: /etc/hostapd.conf
> bsd_set_if_media: SIOCSIFMEDIA Device not configured
> bsd_init: failed to set operation mode
> bsd driver initialization failed.
> wlan0: interface state UNINITIALIZED->DISABLED
> wlan0: AP-DISABLED
> hostapd_free_hapd_data: Interface wlan0 wasn't started
> ELOOP: remaining socket: sock=5 eloop_data=0x801c47100 user_data=0x0 
> handler=0x41a0e0
> /etc/rc.d/hostapd: WARNING: failed to start hostapd
___
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"


traceroute6: panic: pcb not read locked

2015-08-07 Thread Larry Rosenman
Trying to debug TimeWarner IPV6 to my HE.NET tunnel, and running traceroute6, 
got the following panic:

borg.lerctr.org dumped core - see /var/crash/vmcore.0

Fri Aug  7 19:58:40 CDT 2015

FreeBSD borg.lerctr.org 11.0-CURRENT FreeBSD 11.0-CURRENT #32 r286338: Wed Aug  
5 15:57:55 CDT 2015 r...@borg.lerctr.org:/usr/obj/usr/src/sys/VT-LER  amd64

panic: Lock tcp not read locked @ /usr/src/sys/netinet/tcp_subr.c:1189

GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for details.
This GDB was configured as "amd64-marcel-freebsd"...

Unread portion of the kernel message buffer:
panic: Lock tcp not read locked @ /usr/src/sys/netinet/tcp_subr.c:1189

cpuid = 2
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfe2dfc3ef400
vpanic() at vpanic+0x189/frame 0xfe2dfc3ef480
panic() at panic+0x43/frame 0xfe2dfc3ef4e0
__rw_assert() at __rw_assert+0x154/frame 0xfe2dfc3ef4f0
tcp_notify() at tcp_notify+0x2d/frame 0xfe2dfc3ef520
in6_pcbnotify() at in6_pcbnotify+0x2a0/frame 0xfe2dfc3ef5b0
tcp6_ctlinput() at tcp6_ctlinput+0xf4/frame 0xfe2dfc3ef650
icmp6_input() at icmp6_input+0x1737/frame 0xfe2dfc3ef7f0
ip6_input() at ip6_input+0x4a2/frame 0xfe2dfc3ef8d0
netisr_dispatch_src() at netisr_dispatch_src+0x86/frame 0xfe2dfc3ef940
ether_demux() at ether_demux+0x176/frame 0xfe2dfc3ef970
ether_nh_input() at ether_nh_input+0x33a/frame 0xfe2dfc3ef9b0
netisr_dispatch_src() at netisr_dispatch_src+0x86/frame 0xfe2dfc3efa20
ether_input() at ether_input+0x4f/frame 0xfe2dfc3efa50
if_input() at if_input+0xa/frame 0xfe2dfc3efa60
em_rxeof() at em_rxeof+0x27f/frame 0xfe2dfc3efae0
em_handle_que() at em_handle_que+0x40/frame 0xfe2dfc3efb20
taskqueue_run_locked() at taskqueue_run_locked+0xf0/frame 0xfe2dfc3efb80
taskqueue_thread_loop() at taskqueue_thread_loop+0x88/frame 0xfe2dfc3efbb0
fork_exit() at fork_exit+0x84/frame 0xfe2dfc3efbf0
fork_trampoline() at fork_trampoline+0xe/frame 0xfe2dfc3efbf0
--- trap 0, rip = 0, rsp = 0, rbp = 0 ---
Uptime: 19m58s
Dumping 2903 out of 64454 MB:..1%..11%..21%..31%..41%..51%..61%..71%..81%..91%

Reading symbols from /boot/kernel/linux.ko.symbols...done.
Loaded symbols for /boot/kernel/linux.ko.symbols
Reading symbols from /boot/kernel/linux_common.ko.symbols...done.
Loaded symbols for /boot/kernel/linux_common.ko.symbols
Reading symbols from /boot/kernel/if_lagg.ko.symbols...done.
Loaded symbols for /boot/kernel/if_lagg.ko.symbols
Reading symbols from /boot/kernel/snd_envy24ht.ko.symbols...done.
Loaded symbols for /boot/kernel/snd_envy24ht.ko.symbols
Reading symbols from /boot/kernel/snd_spicds.ko.symbols...done.
Loaded symbols for /boot/kernel/snd_spicds.ko.symbols
Reading symbols from /boot/kernel/coretemp.ko.symbols...done.
Loaded symbols for /boot/kernel/coretemp.ko.symbols
Reading symbols from /boot/kernel/ichsmb.ko.symbols...done.
Loaded symbols for /boot/kernel/ichsmb.ko.symbols
Reading symbols from /boot/kernel/smbus.ko.symbols...done.
Loaded symbols for /boot/kernel/smbus.ko.symbols
Reading symbols from /boot/kernel/ichwd.ko.symbols...done.
Loaded symbols for /boot/kernel/ichwd.ko.symbols
Reading symbols from /boot/kernel/cpuctl.ko.symbols...done.
Loaded symbols for /boot/kernel/cpuctl.ko.symbols
Reading symbols from /boot/kernel/cryptodev.ko.symbols...done.
Loaded symbols for /boot/kernel/cryptodev.ko.symbols
Reading symbols from /boot/kernel/dtraceall.ko.symbols...done.
Loaded symbols for /boot/kernel/dtraceall.ko.symbols
Reading symbols from /boot/kernel/profile.ko.symbols...done.
Loaded symbols for /boot/kernel/profile.ko.symbols
Reading symbols from /boot/kernel/dtrace.ko.symbols...done.
Loaded symbols for /boot/kernel/dtrace.ko.symbols
Reading symbols from /boot/kernel/systrace_freebsd32.ko.symbols...done.
Loaded symbols for /boot/kernel/systrace_freebsd32.ko.symbols
Reading symbols from /boot/kernel/systrace.ko.symbols...done.
Loaded symbols for /boot/kernel/systrace.ko.symbols
Reading symbols from /boot/kernel/sdt.ko.symbols...done.
Loaded symbols for /boot/kernel/sdt.ko.symbols
Reading symbols from /boot/kernel/fasttrap.ko.symbols...done.
Loaded symbols for /boot/kernel/fasttrap.ko.symbols
Reading symbols from /boot/kernel/fbt.ko.symbols...done.
Loaded symbols for /boot/kernel/fbt.ko.symbols
Reading symbols from /boot/kernel/dtnfscl.ko.symbols...done.
Loaded symbols for /boot/kernel/dtnfscl.ko.symbols
Reading symbols from /boot/kernel/dtmalloc.ko.symbols...done.
Loaded symbols for /boot/kernel/dtmalloc.ko.symbols
Reading symbols from /boot/modules/nvidia.ko...done.
Loaded symbols for /boot/modules/nvidia.ko
Reading symbols from /boot/kernel/ipmi.ko.symbols...done.
Loaded symbols for /boot/kernel/ipmi.

Re: traceroute6: panic: pcb not read locked

2015-08-07 Thread Adrian Chadd
is it easily reproducable for you there?



-a


On 7 August 2015 at 18:04, Larry Rosenman  wrote:
> Trying to debug TimeWarner IPV6 to my HE.NET tunnel, and running traceroute6,
> got the following panic:
>
> borg.lerctr.org dumped core - see /var/crash/vmcore.0
>
> Fri Aug  7 19:58:40 CDT 2015
>
> FreeBSD borg.lerctr.org 11.0-CURRENT FreeBSD 11.0-CURRENT #32 r286338: Wed 
> Aug  5 15:57:55 CDT 2015 r...@borg.lerctr.org:/usr/obj/usr/src/sys/VT-LER 
>  amd64
>
> panic: Lock tcp not read locked @ /usr/src/sys/netinet/tcp_subr.c:1189
>
> GNU gdb 6.1.1 [FreeBSD]
> Copyright 2004 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you are
> welcome to change it and/or distribute copies of it under certain conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> This GDB was configured as "amd64-marcel-freebsd"...
>
> Unread portion of the kernel message buffer:
> panic: Lock tcp not read locked @ /usr/src/sys/netinet/tcp_subr.c:1189
>
> cpuid = 2
> KDB: stack backtrace:
> db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 0xfe2dfc3ef400
> vpanic() at vpanic+0x189/frame 0xfe2dfc3ef480
> panic() at panic+0x43/frame 0xfe2dfc3ef4e0
> __rw_assert() at __rw_assert+0x154/frame 0xfe2dfc3ef4f0
> tcp_notify() at tcp_notify+0x2d/frame 0xfe2dfc3ef520
> in6_pcbnotify() at in6_pcbnotify+0x2a0/frame 0xfe2dfc3ef5b0
> tcp6_ctlinput() at tcp6_ctlinput+0xf4/frame 0xfe2dfc3ef650
> icmp6_input() at icmp6_input+0x1737/frame 0xfe2dfc3ef7f0
> ip6_input() at ip6_input+0x4a2/frame 0xfe2dfc3ef8d0
> netisr_dispatch_src() at netisr_dispatch_src+0x86/frame 0xfe2dfc3ef940
> ether_demux() at ether_demux+0x176/frame 0xfe2dfc3ef970
> ether_nh_input() at ether_nh_input+0x33a/frame 0xfe2dfc3ef9b0
> netisr_dispatch_src() at netisr_dispatch_src+0x86/frame 0xfe2dfc3efa20
> ether_input() at ether_input+0x4f/frame 0xfe2dfc3efa50
> if_input() at if_input+0xa/frame 0xfe2dfc3efa60
> em_rxeof() at em_rxeof+0x27f/frame 0xfe2dfc3efae0
> em_handle_que() at em_handle_que+0x40/frame 0xfe2dfc3efb20
> taskqueue_run_locked() at taskqueue_run_locked+0xf0/frame 0xfe2dfc3efb80
> taskqueue_thread_loop() at taskqueue_thread_loop+0x88/frame 0xfe2dfc3efbb0
> fork_exit() at fork_exit+0x84/frame 0xfe2dfc3efbf0
> fork_trampoline() at fork_trampoline+0xe/frame 0xfe2dfc3efbf0
> --- trap 0, rip = 0, rsp = 0, rbp = 0 ---
> Uptime: 19m58s
> Dumping 2903 out of 64454 MB:..1%..11%..21%..31%..41%..51%..61%..71%..81%..91%
>
> Reading symbols from /boot/kernel/linux.ko.symbols...done.
> Loaded symbols for /boot/kernel/linux.ko.symbols
> Reading symbols from /boot/kernel/linux_common.ko.symbols...done.
> Loaded symbols for /boot/kernel/linux_common.ko.symbols
> Reading symbols from /boot/kernel/if_lagg.ko.symbols...done.
> Loaded symbols for /boot/kernel/if_lagg.ko.symbols
> Reading symbols from /boot/kernel/snd_envy24ht.ko.symbols...done.
> Loaded symbols for /boot/kernel/snd_envy24ht.ko.symbols
> Reading symbols from /boot/kernel/snd_spicds.ko.symbols...done.
> Loaded symbols for /boot/kernel/snd_spicds.ko.symbols
> Reading symbols from /boot/kernel/coretemp.ko.symbols...done.
> Loaded symbols for /boot/kernel/coretemp.ko.symbols
> Reading symbols from /boot/kernel/ichsmb.ko.symbols...done.
> Loaded symbols for /boot/kernel/ichsmb.ko.symbols
> Reading symbols from /boot/kernel/smbus.ko.symbols...done.
> Loaded symbols for /boot/kernel/smbus.ko.symbols
> Reading symbols from /boot/kernel/ichwd.ko.symbols...done.
> Loaded symbols for /boot/kernel/ichwd.ko.symbols
> Reading symbols from /boot/kernel/cpuctl.ko.symbols...done.
> Loaded symbols for /boot/kernel/cpuctl.ko.symbols
> Reading symbols from /boot/kernel/cryptodev.ko.symbols...done.
> Loaded symbols for /boot/kernel/cryptodev.ko.symbols
> Reading symbols from /boot/kernel/dtraceall.ko.symbols...done.
> Loaded symbols for /boot/kernel/dtraceall.ko.symbols
> Reading symbols from /boot/kernel/profile.ko.symbols...done.
> Loaded symbols for /boot/kernel/profile.ko.symbols
> Reading symbols from /boot/kernel/dtrace.ko.symbols...done.
> Loaded symbols for /boot/kernel/dtrace.ko.symbols
> Reading symbols from /boot/kernel/systrace_freebsd32.ko.symbols...done.
> Loaded symbols for /boot/kernel/systrace_freebsd32.ko.symbols
> Reading symbols from /boot/kernel/systrace.ko.symbols...done.
> Loaded symbols for /boot/kernel/systrace.ko.symbols
> Reading symbols from /boot/kernel/sdt.ko.symbols...done.
> Loaded symbols for /boot/kernel/sdt.ko.symbols
> Reading symbols from /boot/kernel/fasttrap.ko.symbols...done.
> Loaded symbols for /boot/kernel/fasttrap.ko.symbols
> Reading symbols from /boot/kernel/fbt.ko.symbols...done.
> Loaded symbols for /boot/kernel/fbt.ko.symbols
> Reading symbols from /boot/kernel/dtnfscl.ko.symbols...done.
> Loaded symbols for /boot/kernel/dtnfscl.ko.symbols
> Reading symbols from /boot/ker

Re: traceroute6: panic: pcb not read locked

2015-08-07 Thread Larry Rosenman
I got a 2nd one soon after just sitting -- I did JUST update sources, 
turned off ipV6 to update (I seem to be having issues with TWC's IPV6).


Rebuild in process.

I **CAN** give you access to the cores, machine, et al.

I'd LOVE to figure out wtf is wrong on the IPV6 native stuff with TWC.


On 2015-08-07 20:29, Adrian Chadd wrote:

is it easily reproducable for you there?



-a


On 7 August 2015 at 18:04, Larry Rosenman  wrote:
Trying to debug TimeWarner IPV6 to my HE.NET tunnel, and running 
traceroute6,

got the following panic:

borg.lerctr.org dumped core - see /var/crash/vmcore.0

Fri Aug  7 19:58:40 CDT 2015

FreeBSD borg.lerctr.org 11.0-CURRENT FreeBSD 11.0-CURRENT #32 r286338: 
Wed Aug  5 15:57:55 CDT 2015 
r...@borg.lerctr.org:/usr/obj/usr/src/sys/VT-LER  amd64


panic: Lock tcp not read locked @ /usr/src/sys/netinet/tcp_subr.c:1189

GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and 
you are
welcome to change it and/or distribute copies of it under certain 
conditions.

Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for 
details.

This GDB was configured as "amd64-marcel-freebsd"...

Unread portion of the kernel message buffer:
panic: Lock tcp not read locked @ /usr/src/sys/netinet/tcp_subr.c:1189

cpuid = 2
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 
0xfe2dfc3ef400

vpanic() at vpanic+0x189/frame 0xfe2dfc3ef480
panic() at panic+0x43/frame 0xfe2dfc3ef4e0
__rw_assert() at __rw_assert+0x154/frame 0xfe2dfc3ef4f0
tcp_notify() at tcp_notify+0x2d/frame 0xfe2dfc3ef520
in6_pcbnotify() at in6_pcbnotify+0x2a0/frame 0xfe2dfc3ef5b0
tcp6_ctlinput() at tcp6_ctlinput+0xf4/frame 0xfe2dfc3ef650
icmp6_input() at icmp6_input+0x1737/frame 0xfe2dfc3ef7f0
ip6_input() at ip6_input+0x4a2/frame 0xfe2dfc3ef8d0
netisr_dispatch_src() at netisr_dispatch_src+0x86/frame 
0xfe2dfc3ef940

ether_demux() at ether_demux+0x176/frame 0xfe2dfc3ef970
ether_nh_input() at ether_nh_input+0x33a/frame 0xfe2dfc3ef9b0
netisr_dispatch_src() at netisr_dispatch_src+0x86/frame 
0xfe2dfc3efa20

ether_input() at ether_input+0x4f/frame 0xfe2dfc3efa50
if_input() at if_input+0xa/frame 0xfe2dfc3efa60
em_rxeof() at em_rxeof+0x27f/frame 0xfe2dfc3efae0
em_handle_que() at em_handle_que+0x40/frame 0xfe2dfc3efb20
taskqueue_run_locked() at taskqueue_run_locked+0xf0/frame 
0xfe2dfc3efb80
taskqueue_thread_loop() at taskqueue_thread_loop+0x88/frame 
0xfe2dfc3efbb0

fork_exit() at fork_exit+0x84/frame 0xfe2dfc3efbf0
fork_trampoline() at fork_trampoline+0xe/frame 0xfe2dfc3efbf0
--- trap 0, rip = 0, rsp = 0, rbp = 0 ---
Uptime: 19m58s
Dumping 2903 out of 64454 
MB:..1%..11%..21%..31%..41%..51%..61%..71%..81%..91%


Reading symbols from /boot/kernel/linux.ko.symbols...done.
Loaded symbols for /boot/kernel/linux.ko.symbols
Reading symbols from /boot/kernel/linux_common.ko.symbols...done.
Loaded symbols for /boot/kernel/linux_common.ko.symbols
Reading symbols from /boot/kernel/if_lagg.ko.symbols...done.
Loaded symbols for /boot/kernel/if_lagg.ko.symbols
Reading symbols from /boot/kernel/snd_envy24ht.ko.symbols...done.
Loaded symbols for /boot/kernel/snd_envy24ht.ko.symbols
Reading symbols from /boot/kernel/snd_spicds.ko.symbols...done.
Loaded symbols for /boot/kernel/snd_spicds.ko.symbols
Reading symbols from /boot/kernel/coretemp.ko.symbols...done.
Loaded symbols for /boot/kernel/coretemp.ko.symbols
Reading symbols from /boot/kernel/ichsmb.ko.symbols...done.
Loaded symbols for /boot/kernel/ichsmb.ko.symbols
Reading symbols from /boot/kernel/smbus.ko.symbols...done.
Loaded symbols for /boot/kernel/smbus.ko.symbols
Reading symbols from /boot/kernel/ichwd.ko.symbols...done.
Loaded symbols for /boot/kernel/ichwd.ko.symbols
Reading symbols from /boot/kernel/cpuctl.ko.symbols...done.
Loaded symbols for /boot/kernel/cpuctl.ko.symbols
Reading symbols from /boot/kernel/cryptodev.ko.symbols...done.
Loaded symbols for /boot/kernel/cryptodev.ko.symbols
Reading symbols from /boot/kernel/dtraceall.ko.symbols...done.
Loaded symbols for /boot/kernel/dtraceall.ko.symbols
Reading symbols from /boot/kernel/profile.ko.symbols...done.
Loaded symbols for /boot/kernel/profile.ko.symbols
Reading symbols from /boot/kernel/dtrace.ko.symbols...done.
Loaded symbols for /boot/kernel/dtrace.ko.symbols
Reading symbols from 
/boot/kernel/systrace_freebsd32.ko.symbols...done.

Loaded symbols for /boot/kernel/systrace_freebsd32.ko.symbols
Reading symbols from /boot/kernel/systrace.ko.symbols...done.
Loaded symbols for /boot/kernel/systrace.ko.symbols
Reading symbols from /boot/kernel/sdt.ko.symbols...done.
Loaded symbols for /boot/kernel/sdt.ko.symbols
Reading symbols from /boot/kernel/fasttrap.ko.symbols...done.
Loaded symbols for /boot/kernel/fasttrap.ko.symbols
Reading symbols from /boot/kernel/fbt.ko.symbols...done.
Loaded

Re: traceroute6: panic: pcb not read locked

2015-08-07 Thread Larry Rosenman

Of course as soon as I sent that I got another one..


On 2015-08-07 20:58, Larry Rosenman wrote:

just have the 2 panics.  it doesn't "just reproduce".

I'll see what I can find.

Is there anything I can get for you from the core(s)?


On 2015-08-07 20:32, Larry Rosenman wrote:

I got a 2nd one soon after just sitting -- I did JUST update sources,
turned off ipV6 to update (I seem to be having issues with TWC's
IPV6).

Rebuild in process.

I **CAN** give you access to the cores, machine, et al.

I'd LOVE to figure out wtf is wrong on the IPV6 native stuff with TWC.


On 2015-08-07 20:29, Adrian Chadd wrote:

is it easily reproducable for you there?



-a


On 7 August 2015 at 18:04, Larry Rosenman  wrote:
Trying to debug TimeWarner IPV6 to my HE.NET tunnel, and running 
traceroute6,

got the following panic:

borg.lerctr.org dumped core - see /var/crash/vmcore.0

Fri Aug  7 19:58:40 CDT 2015

FreeBSD borg.lerctr.org 11.0-CURRENT FreeBSD 11.0-CURRENT #32 
r286338: Wed Aug  5 15:57:55 CDT 2015 
r...@borg.lerctr.org:/usr/obj/usr/src/sys/VT-LER  amd64


panic: Lock tcp not read locked @ 
/usr/src/sys/netinet/tcp_subr.c:1189


GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and 
you are
welcome to change it and/or distribute copies of it under certain 
conditions.

Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for 
details.

This GDB was configured as "amd64-marcel-freebsd"...

Unread portion of the kernel message buffer:
panic: Lock tcp not read locked @ 
/usr/src/sys/netinet/tcp_subr.c:1189


cpuid = 2
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 
0xfe2dfc3ef400

vpanic() at vpanic+0x189/frame 0xfe2dfc3ef480
panic() at panic+0x43/frame 0xfe2dfc3ef4e0
__rw_assert() at __rw_assert+0x154/frame 0xfe2dfc3ef4f0
tcp_notify() at tcp_notify+0x2d/frame 0xfe2dfc3ef520
in6_pcbnotify() at in6_pcbnotify+0x2a0/frame 0xfe2dfc3ef5b0
tcp6_ctlinput() at tcp6_ctlinput+0xf4/frame 0xfe2dfc3ef650
icmp6_input() at icmp6_input+0x1737/frame 0xfe2dfc3ef7f0
ip6_input() at ip6_input+0x4a2/frame 0xfe2dfc3ef8d0
netisr_dispatch_src() at netisr_dispatch_src+0x86/frame 
0xfe2dfc3ef940

ether_demux() at ether_demux+0x176/frame 0xfe2dfc3ef970
ether_nh_input() at ether_nh_input+0x33a/frame 0xfe2dfc3ef9b0
netisr_dispatch_src() at netisr_dispatch_src+0x86/frame 
0xfe2dfc3efa20

ether_input() at ether_input+0x4f/frame 0xfe2dfc3efa50
if_input() at if_input+0xa/frame 0xfe2dfc3efa60
em_rxeof() at em_rxeof+0x27f/frame 0xfe2dfc3efae0
em_handle_que() at em_handle_que+0x40/frame 0xfe2dfc3efb20
taskqueue_run_locked() at taskqueue_run_locked+0xf0/frame 
0xfe2dfc3efb80
taskqueue_thread_loop() at taskqueue_thread_loop+0x88/frame 
0xfe2dfc3efbb0

fork_exit() at fork_exit+0x84/frame 0xfe2dfc3efbf0
fork_trampoline() at fork_trampoline+0xe/frame 0xfe2dfc3efbf0
--- trap 0, rip = 0, rsp = 0, rbp = 0 ---
Uptime: 19m58s
Dumping 2903 out of 64454 
MB:..1%..11%..21%..31%..41%..51%..61%..71%..81%..91%


Reading symbols from /boot/kernel/linux.ko.symbols...done.
Loaded symbols for /boot/kernel/linux.ko.symbols
Reading symbols from /boot/kernel/linux_common.ko.symbols...done.
Loaded symbols for /boot/kernel/linux_common.ko.symbols
Reading symbols from /boot/kernel/if_lagg.ko.symbols...done.
Loaded symbols for /boot/kernel/if_lagg.ko.symbols
Reading symbols from /boot/kernel/snd_envy24ht.ko.symbols...done.
Loaded symbols for /boot/kernel/snd_envy24ht.ko.symbols
Reading symbols from /boot/kernel/snd_spicds.ko.symbols...done.
Loaded symbols for /boot/kernel/snd_spicds.ko.symbols
Reading symbols from /boot/kernel/coretemp.ko.symbols...done.
Loaded symbols for /boot/kernel/coretemp.ko.symbols
Reading symbols from /boot/kernel/ichsmb.ko.symbols...done.
Loaded symbols for /boot/kernel/ichsmb.ko.symbols
Reading symbols from /boot/kernel/smbus.ko.symbols...done.
Loaded symbols for /boot/kernel/smbus.ko.symbols
Reading symbols from /boot/kernel/ichwd.ko.symbols...done.
Loaded symbols for /boot/kernel/ichwd.ko.symbols
Reading symbols from /boot/kernel/cpuctl.ko.symbols...done.
Loaded symbols for /boot/kernel/cpuctl.ko.symbols
Reading symbols from /boot/kernel/cryptodev.ko.symbols...done.
Loaded symbols for /boot/kernel/cryptodev.ko.symbols
Reading symbols from /boot/kernel/dtraceall.ko.symbols...done.
Loaded symbols for /boot/kernel/dtraceall.ko.symbols
Reading symbols from /boot/kernel/profile.ko.symbols...done.
Loaded symbols for /boot/kernel/profile.ko.symbols
Reading symbols from /boot/kernel/dtrace.ko.symbols...done.
Loaded symbols for /boot/kernel/dtrace.ko.symbols
Reading symbols from 
/boot/kernel/systrace_freebsd32.ko.symbols...done.

Loaded symbols for /boot/kernel/systrace_freebsd32.ko.symbols
Reading symbols from /boot/kernel/systrace.ko.symbols...done.
Loaded symbols for /boot/kernel/systrace.ko.s

Re: traceroute6: panic: pcb not read locked

2015-08-07 Thread Larry Rosenman

just have the 2 panics.  it doesn't "just reproduce".

I'll see what I can find.

Is there anything I can get for you from the core(s)?


On 2015-08-07 20:32, Larry Rosenman wrote:

I got a 2nd one soon after just sitting -- I did JUST update sources,
turned off ipV6 to update (I seem to be having issues with TWC's
IPV6).

Rebuild in process.

I **CAN** give you access to the cores, machine, et al.

I'd LOVE to figure out wtf is wrong on the IPV6 native stuff with TWC.


On 2015-08-07 20:29, Adrian Chadd wrote:

is it easily reproducable for you there?



-a


On 7 August 2015 at 18:04, Larry Rosenman  wrote:
Trying to debug TimeWarner IPV6 to my HE.NET tunnel, and running 
traceroute6,

got the following panic:

borg.lerctr.org dumped core - see /var/crash/vmcore.0

Fri Aug  7 19:58:40 CDT 2015

FreeBSD borg.lerctr.org 11.0-CURRENT FreeBSD 11.0-CURRENT #32 
r286338: Wed Aug  5 15:57:55 CDT 2015 
r...@borg.lerctr.org:/usr/obj/usr/src/sys/VT-LER  amd64


panic: Lock tcp not read locked @ 
/usr/src/sys/netinet/tcp_subr.c:1189


GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and 
you are
welcome to change it and/or distribute copies of it under certain 
conditions.

Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for 
details.

This GDB was configured as "amd64-marcel-freebsd"...

Unread portion of the kernel message buffer:
panic: Lock tcp not read locked @ 
/usr/src/sys/netinet/tcp_subr.c:1189


cpuid = 2
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 
0xfe2dfc3ef400

vpanic() at vpanic+0x189/frame 0xfe2dfc3ef480
panic() at panic+0x43/frame 0xfe2dfc3ef4e0
__rw_assert() at __rw_assert+0x154/frame 0xfe2dfc3ef4f0
tcp_notify() at tcp_notify+0x2d/frame 0xfe2dfc3ef520
in6_pcbnotify() at in6_pcbnotify+0x2a0/frame 0xfe2dfc3ef5b0
tcp6_ctlinput() at tcp6_ctlinput+0xf4/frame 0xfe2dfc3ef650
icmp6_input() at icmp6_input+0x1737/frame 0xfe2dfc3ef7f0
ip6_input() at ip6_input+0x4a2/frame 0xfe2dfc3ef8d0
netisr_dispatch_src() at netisr_dispatch_src+0x86/frame 
0xfe2dfc3ef940

ether_demux() at ether_demux+0x176/frame 0xfe2dfc3ef970
ether_nh_input() at ether_nh_input+0x33a/frame 0xfe2dfc3ef9b0
netisr_dispatch_src() at netisr_dispatch_src+0x86/frame 
0xfe2dfc3efa20

ether_input() at ether_input+0x4f/frame 0xfe2dfc3efa50
if_input() at if_input+0xa/frame 0xfe2dfc3efa60
em_rxeof() at em_rxeof+0x27f/frame 0xfe2dfc3efae0
em_handle_que() at em_handle_que+0x40/frame 0xfe2dfc3efb20
taskqueue_run_locked() at taskqueue_run_locked+0xf0/frame 
0xfe2dfc3efb80
taskqueue_thread_loop() at taskqueue_thread_loop+0x88/frame 
0xfe2dfc3efbb0

fork_exit() at fork_exit+0x84/frame 0xfe2dfc3efbf0
fork_trampoline() at fork_trampoline+0xe/frame 0xfe2dfc3efbf0
--- trap 0, rip = 0, rsp = 0, rbp = 0 ---
Uptime: 19m58s
Dumping 2903 out of 64454 
MB:..1%..11%..21%..31%..41%..51%..61%..71%..81%..91%


Reading symbols from /boot/kernel/linux.ko.symbols...done.
Loaded symbols for /boot/kernel/linux.ko.symbols
Reading symbols from /boot/kernel/linux_common.ko.symbols...done.
Loaded symbols for /boot/kernel/linux_common.ko.symbols
Reading symbols from /boot/kernel/if_lagg.ko.symbols...done.
Loaded symbols for /boot/kernel/if_lagg.ko.symbols
Reading symbols from /boot/kernel/snd_envy24ht.ko.symbols...done.
Loaded symbols for /boot/kernel/snd_envy24ht.ko.symbols
Reading symbols from /boot/kernel/snd_spicds.ko.symbols...done.
Loaded symbols for /boot/kernel/snd_spicds.ko.symbols
Reading symbols from /boot/kernel/coretemp.ko.symbols...done.
Loaded symbols for /boot/kernel/coretemp.ko.symbols
Reading symbols from /boot/kernel/ichsmb.ko.symbols...done.
Loaded symbols for /boot/kernel/ichsmb.ko.symbols
Reading symbols from /boot/kernel/smbus.ko.symbols...done.
Loaded symbols for /boot/kernel/smbus.ko.symbols
Reading symbols from /boot/kernel/ichwd.ko.symbols...done.
Loaded symbols for /boot/kernel/ichwd.ko.symbols
Reading symbols from /boot/kernel/cpuctl.ko.symbols...done.
Loaded symbols for /boot/kernel/cpuctl.ko.symbols
Reading symbols from /boot/kernel/cryptodev.ko.symbols...done.
Loaded symbols for /boot/kernel/cryptodev.ko.symbols
Reading symbols from /boot/kernel/dtraceall.ko.symbols...done.
Loaded symbols for /boot/kernel/dtraceall.ko.symbols
Reading symbols from /boot/kernel/profile.ko.symbols...done.
Loaded symbols for /boot/kernel/profile.ko.symbols
Reading symbols from /boot/kernel/dtrace.ko.symbols...done.
Loaded symbols for /boot/kernel/dtrace.ko.symbols
Reading symbols from 
/boot/kernel/systrace_freebsd32.ko.symbols...done.

Loaded symbols for /boot/kernel/systrace_freebsd32.ko.symbols
Reading symbols from /boot/kernel/systrace.ko.symbols...done.
Loaded symbols for /boot/kernel/systrace.ko.symbols
Reading symbols from /boot/kernel/sdt.ko.symbols...done.
Loaded symbols for /boot/kernel/sdt.ko.

Re: traceroute6: panic: pcb not read locked

2015-08-07 Thread Larry Rosenman
Not always the same hop on the (slow) traceroute, but it DOES seem to 
panic EVERY time.



On 2015-08-07 20:58, Larry Rosenman wrote:

Of course as soon as I sent that I got another one..


On 2015-08-07 20:58, Larry Rosenman wrote:

just have the 2 panics.  it doesn't "just reproduce".

I'll see what I can find.

Is there anything I can get for you from the core(s)?


On 2015-08-07 20:32, Larry Rosenman wrote:

I got a 2nd one soon after just sitting -- I did JUST update sources,
turned off ipV6 to update (I seem to be having issues with TWC's
IPV6).

Rebuild in process.

I **CAN** give you access to the cores, machine, et al.

I'd LOVE to figure out wtf is wrong on the IPV6 native stuff with 
TWC.



On 2015-08-07 20:29, Adrian Chadd wrote:

is it easily reproducable for you there?



-a


On 7 August 2015 at 18:04, Larry Rosenman  wrote:
Trying to debug TimeWarner IPV6 to my HE.NET tunnel, and running 
traceroute6,

got the following panic:

borg.lerctr.org dumped core - see /var/crash/vmcore.0

Fri Aug  7 19:58:40 CDT 2015

FreeBSD borg.lerctr.org 11.0-CURRENT FreeBSD 11.0-CURRENT #32 
r286338: Wed Aug  5 15:57:55 CDT 2015 
r...@borg.lerctr.org:/usr/obj/usr/src/sys/VT-LER  amd64


panic: Lock tcp not read locked @ 
/usr/src/sys/netinet/tcp_subr.c:1189


GNU gdb 6.1.1 [FreeBSD]
Copyright 2004 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, 
and you are
welcome to change it and/or distribute copies of it under certain 
conditions.

Type "show copying" to see the conditions.
There is absolutely no warranty for GDB.  Type "show warranty" for 
details.

This GDB was configured as "amd64-marcel-freebsd"...

Unread portion of the kernel message buffer:
panic: Lock tcp not read locked @ 
/usr/src/sys/netinet/tcp_subr.c:1189


cpuid = 2
KDB: stack backtrace:
db_trace_self_wrapper() at db_trace_self_wrapper+0x2b/frame 
0xfe2dfc3ef400

vpanic() at vpanic+0x189/frame 0xfe2dfc3ef480
panic() at panic+0x43/frame 0xfe2dfc3ef4e0
__rw_assert() at __rw_assert+0x154/frame 0xfe2dfc3ef4f0
tcp_notify() at tcp_notify+0x2d/frame 0xfe2dfc3ef520
in6_pcbnotify() at in6_pcbnotify+0x2a0/frame 0xfe2dfc3ef5b0
tcp6_ctlinput() at tcp6_ctlinput+0xf4/frame 0xfe2dfc3ef650
icmp6_input() at icmp6_input+0x1737/frame 0xfe2dfc3ef7f0
ip6_input() at ip6_input+0x4a2/frame 0xfe2dfc3ef8d0
netisr_dispatch_src() at netisr_dispatch_src+0x86/frame 
0xfe2dfc3ef940

ether_demux() at ether_demux+0x176/frame 0xfe2dfc3ef970
ether_nh_input() at ether_nh_input+0x33a/frame 0xfe2dfc3ef9b0
netisr_dispatch_src() at netisr_dispatch_src+0x86/frame 
0xfe2dfc3efa20

ether_input() at ether_input+0x4f/frame 0xfe2dfc3efa50
if_input() at if_input+0xa/frame 0xfe2dfc3efa60
em_rxeof() at em_rxeof+0x27f/frame 0xfe2dfc3efae0
em_handle_que() at em_handle_que+0x40/frame 0xfe2dfc3efb20
taskqueue_run_locked() at taskqueue_run_locked+0xf0/frame 
0xfe2dfc3efb80
taskqueue_thread_loop() at taskqueue_thread_loop+0x88/frame 
0xfe2dfc3efbb0

fork_exit() at fork_exit+0x84/frame 0xfe2dfc3efbf0
fork_trampoline() at fork_trampoline+0xe/frame 0xfe2dfc3efbf0
--- trap 0, rip = 0, rsp = 0, rbp = 0 ---
Uptime: 19m58s
Dumping 2903 out of 64454 
MB:..1%..11%..21%..31%..41%..51%..61%..71%..81%..91%


Reading symbols from /boot/kernel/linux.ko.symbols...done.
Loaded symbols for /boot/kernel/linux.ko.symbols
Reading symbols from /boot/kernel/linux_common.ko.symbols...done.
Loaded symbols for /boot/kernel/linux_common.ko.symbols
Reading symbols from /boot/kernel/if_lagg.ko.symbols...done.
Loaded symbols for /boot/kernel/if_lagg.ko.symbols
Reading symbols from /boot/kernel/snd_envy24ht.ko.symbols...done.
Loaded symbols for /boot/kernel/snd_envy24ht.ko.symbols
Reading symbols from /boot/kernel/snd_spicds.ko.symbols...done.
Loaded symbols for /boot/kernel/snd_spicds.ko.symbols
Reading symbols from /boot/kernel/coretemp.ko.symbols...done.
Loaded symbols for /boot/kernel/coretemp.ko.symbols
Reading symbols from /boot/kernel/ichsmb.ko.symbols...done.
Loaded symbols for /boot/kernel/ichsmb.ko.symbols
Reading symbols from /boot/kernel/smbus.ko.symbols...done.
Loaded symbols for /boot/kernel/smbus.ko.symbols
Reading symbols from /boot/kernel/ichwd.ko.symbols...done.
Loaded symbols for /boot/kernel/ichwd.ko.symbols
Reading symbols from /boot/kernel/cpuctl.ko.symbols...done.
Loaded symbols for /boot/kernel/cpuctl.ko.symbols
Reading symbols from /boot/kernel/cryptodev.ko.symbols...done.
Loaded symbols for /boot/kernel/cryptodev.ko.symbols
Reading symbols from /boot/kernel/dtraceall.ko.symbols...done.
Loaded symbols for /boot/kernel/dtraceall.ko.symbols
Reading symbols from /boot/kernel/profile.ko.symbols...done.
Loaded symbols for /boot/kernel/profile.ko.symbols
Reading symbols from /boot/kernel/dtrace.ko.symbols...done.
Loaded symbols for /boot/kernel/dtrace.ko.symbols
Reading symbols from 
/boot/kernel/systrace_freebsd32.ko.symbols...done.

Loaded symbols for /boot/kernel/

Re: traceroute6: panic: pcb not read locked

2015-08-07 Thread Mark Johnston
On Fri, Aug 07, 2015 at 08:04:01PM -0500, Larry Rosenman wrote:
> Trying to debug TimeWarner IPV6 to my HE.NET tunnel, and running traceroute6, 
> got the following panic:
> 
> borg.lerctr.org dumped core - see /var/crash/vmcore.0
> 
> Fri Aug  7 19:58:40 CDT 2015
> 
> FreeBSD borg.lerctr.org 11.0-CURRENT FreeBSD 11.0-CURRENT #32 r286338: Wed 
> Aug  5 15:57:55 CDT 2015 r...@borg.lerctr.org:/usr/obj/usr/src/sys/VT-LER 
>  amd64
> 
> panic: Lock tcp not read locked @ /usr/src/sys/netinet/tcp_subr.c:1189
> 
> GNU gdb 6.1.1 [FreeBSD]
> Copyright 2004 Free Software Foundation, Inc.
> GDB is free software, covered by the GNU General Public License, and you are
> welcome to change it and/or distribute copies of it under certain conditions.
> Type "show copying" to see the conditions.
> There is absolutely no warranty for GDB.  Type "show warranty" for details.
> This GDB was configured as "amd64-marcel-freebsd"...
> 
> Unread portion of the kernel message buffer:
> panic: Lock tcp not read locked @ /usr/src/sys/netinet/tcp_subr.c:1189

This appears to be fallout from r286227: the tcpinfo lock assertion in
tcp_notify() is too strong, since tcp_notify() can still be called from
tcp6_ctlinput() with the tcpinfo write lock held.

The attached patch addresses this; could you give it a try?

-Mark
diff --git a/sys/netinet/tcp_subr.c b/sys/netinet/tcp_subr.c
index 808eb97..6face4e 100644
--- a/sys/netinet/tcp_subr.c
+++ b/sys/netinet/tcp_subr.c
@@ -906,7 +906,7 @@ tcp_drop(struct tcpcb *tp, int errno)
 {
 	struct socket *so = tp->t_inpcb->inp_socket;
 
-	INP_INFO_RLOCK_ASSERT(&V_tcbinfo);
+	INP_INFO_LOCK_ASSERT(&V_tcbinfo);
 	INP_WLOCK_ASSERT(tp->t_inpcb);
 
 	if (TCPS_HAVERCVDSYN(tp->t_state)) {
@@ -1108,7 +1108,7 @@ tcp_close(struct tcpcb *tp)
 	struct inpcb *inp = tp->t_inpcb;
 	struct socket *so;
 
-	INP_INFO_RLOCK_ASSERT(&V_tcbinfo);
+	INP_INFO_LOCK_ASSERT(&V_tcbinfo);
 	INP_WLOCK_ASSERT(inp);
 
 #ifdef TCP_OFFLOAD
@@ -1186,7 +1186,7 @@ tcp_notify(struct inpcb *inp, int error)
 {
 	struct tcpcb *tp;
 
-	INP_INFO_RLOCK_ASSERT(&V_tcbinfo);
+	INP_INFO_LOCK_ASSERT(&V_tcbinfo);
 	INP_WLOCK_ASSERT(inp);
 
 	if ((inp->inp_flags & INP_TIMEWAIT) ||
___
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: traceroute6: panic: pcb not read locked

2015-08-07 Thread Julien Charbon
On 08/08/15 05:25, Mark Johnston wrote:
> On Fri, Aug 07, 2015 at 08:04:01PM -0500, Larry Rosenman wrote:
>> Trying to debug TimeWarner IPV6 to my HE.NET tunnel, and running 
>> traceroute6, 
>> got the following panic:
>>
>> borg.lerctr.org dumped core - see /var/crash/vmcore.0
>>
>> Fri Aug  7 19:58:40 CDT 2015
>>
>> FreeBSD borg.lerctr.org 11.0-CURRENT FreeBSD 11.0-CURRENT #32 r286338: Wed 
>> Aug  5 15:57:55 CDT 2015 
>> r...@borg.lerctr.org:/usr/obj/usr/src/sys/VT-LER  amd64
>>
>> panic: Lock tcp not read locked @ /usr/src/sys/netinet/tcp_subr.c:1189
>>
>> GNU gdb 6.1.1 [FreeBSD]
>> Copyright 2004 Free Software Foundation, Inc.
>> GDB is free software, covered by the GNU General Public License, and you are
>> welcome to change it and/or distribute copies of it under certain conditions.
>> Type "show copying" to see the conditions.
>> There is absolutely no warranty for GDB.  Type "show warranty" for details.
>> This GDB was configured as "amd64-marcel-freebsd"...
>>
>> Unread portion of the kernel message buffer:
>> panic: Lock tcp not read locked @ /usr/src/sys/netinet/tcp_subr.c:1189
> 
> This appears to be fallout from r286227: the tcpinfo lock assertion in
> tcp_notify() is too strong, since tcp_notify() can still be called from
> c with the tcpinfo write lock held.

 Nice catch, I agree these tcpinfo lock assertion are too strong.  I am
fixing and testing that as in top of tcp_notify() and tcp_drop(), you
also need to update also tcp_close() and tcp_detach().

 By the way I am working on make INP_INFO_WLOCK a INP_INFO_RLOCK in
in6_pcbnotify() but this is not for today.

 Thanks.

--
Julien



signature.asc
Description: OpenPGP digital signature