Re: SVN r252892: videodev2.h update breaks gcc compilation

2013-07-08 Thread Alexander Leidinger
On Sun, 07 Jul 2013 06:59:59 -0400
Michael Butler i...@protected-networks.net wrote:

 The recent linux header update triggers the following error:
 
 In file included from /usr/src/sys/compat/linux/linux_ioctl.c:91:
 /usr/src/sys/contrib/v4l/videodev2.h:430: warning: declaration does
 not declare anything

Does someone know what this is supposed to result in?

I would assume as the unions are unnamed and no variable is declared
inside the struct with it, that the size of the struct is the same as
not having those unions inside the structs.

If this is correct I would assume the correct fix would be to #if-0
them out.

Bye,
Alexander.

-- 
http://www.Leidinger.netAlexander @ Leidinger.net: PGP ID = B0063FE7
http://www.FreeBSD.org   netchild @ FreeBSD.org  : PGP ID = 72077137
___
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: buildkernel is broken

2013-07-08 Thread Gleb Smirnoff
On Sun, Jul 07, 2013 at 11:51:01PM +0200, Claude Buisson wrote:
C On 07/07/2013 22:05, Gleb Smirnoff wrote:
C  On Fri, Jul 05, 2013 at 08:32:06AM -0700, Steve Kargl wrote:
C  S On Fri, Jul 05, 2013 at 05:03:38PM +0400, Gleb Smirnoff wrote:
C  S  On Tue, Jul 02, 2013 at 08:45:16PM -0700, Steve Kargl wrote:
C  S  S On Tue, Jul 02, 2013 at 10:51:57PM -0230, Jonathan Anderson wrote:
C  S  S  On Tuesday, 2 July 2013 at 22:16, Steve Kargl wrote:
C  S  S   It seems that
C  S  S  
C  S  S   # Enable FreeBSD7 compatibility syscalls
C  S  S   options COMPAT_FREEBSD7
C  S  S  
C  S  S   is required in a kernel config file. If it is mandatory to
C  S  S   have this option on FreeBSD 10, it may be appropriate to
C  S  S   expand the comment to
C  S  S  
C  S  S  
C  S  S   # Enable FreeBSD7 compatibility syscalls
C  S  S   # This option is MANDATORY. Do not remove.
C  S  S   options COMPAT_FREEBSD7
C  S  S 
C  S  S  So... a non-optional option?
C  S  S
C  S  S Yes, it appears to be that way.
C  S 
C  S  Not really. It is required only if you also got COMPAT_43, the
C  S  pre-FreeBSD compat option.
C  S 
C  S
C  S So, it's essentially non-optional as the comment above COMPAT_43
C  S is
C  S
C  S #
C  S # Implement system calls compatible with 4.3BSD and older versions of
C  S # FreeBSD.  You probably do NOT want to remove this as much current code
C  S # still relies on the 4.3 emulation.
C  S
C  S Is do NOT want to remove too strong of a statement?
C 
C  Where did you find this statement? I remember it, but haven't seen
C  it for long time. Can't find it in modern GENERIC.
C 
C 
C Try and read sys/conf/NOTES

I think, the statement is outdated today.

-- 
Totus tuus, Glebius.
___
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


Improved SYN Cookies: Looking for testers

2013-07-08 Thread Andre Oppermann

We have a SYN cookie implementation for quite some time now but it
has some limitations with current realities for window scaling and
SACK encoding the in the few available bits.

This patch updates and improves SYN cookies mainly by:

 a) encoding of MSS, WSCALE (window scaling) and SACK into the ISN
(initial sequence number) without the use of timestamp bits.

 b) switching to the very fast and cryptographically strong SipHash-2-4
hash MAC algorithm to protect the SYN cookie against forgery.

The patch had been reviewed by dwmalone (cookies) and cperciva (siphash).

Please find it here for testing:

 http://people.freebsd.org/~andre/syncookie-20130708.diff

Please enable TCP logdebug to see connection status reporting by the
changes.

Detailed discussion:

The purpose of SYN cookies is to encode all necessary session state
in the 32 bits of our initial sequence number to avoid storing any
information locally in memory.  This is especially important when
under heavy spoofed SYN attacks where we would either run out of
memory or the syncache would fill with bogus connection attempts
swamping out legitimate connections.

The 32 bits of the ISN are a very limited space because we also have
to store a cryptographically strong enough hash MAC in it to prevent
spoofing of valid SYN cookies.  The result is that 24 bits have to
be dedicated to the MAC hash and only 8 bits remain available for
the session state.

The common parameters used on TCP sessions have changed quite a bit
since SYN cookies very invented some 17 years ago.  Today we a lot
more bandwidth making the use window scaling almost mandatory.  Also
SACK has become standard as it makes recovering from packet loss
much more efficient.

The original SYN cookies method only stored an indexed MSS values in
the cookie.  This obviously isn't sufficient anymore and breaks in
the presence of WSCALE.  WSCALE information is only exchanged during
SYN and SYN-ACK.  If we can't keep track of it then we severely under-
estimate the available send or receive window compounded with the fact
that with large window scaling the window size information on the TCP
segment header would be even lower numerically.

A number of years back I extended SYN cookies to store the additional
state in the TCP timestamp fields, if available on a connection.  It
has been adapted by Linux as well.  While timestamps are common among
the BSD, Linux and other *nix systems Windows never enabled them by
default and thus are not present for the vast majority of clients seen
on the Internet.

The new improvement in this patch moves all necessary information into
the ISN again removing the need for timestamps.  Both the MSS and send
WSCALE are stored in 3 bit indexed form together with a single bit for
SACK.  While we can't represent all possible MSS and WSCALE values, both
are 16 bit fields in the TCP header, in only 3 bits each this, it turns
out, isn't actually necessary.

The MSS depends on the MTU of the path and with the dominance of ethernet
the main value seen is around 1460 bytes.  Encapsulations for DSL lines
and some other overheads reduce it by a few more bytes for many connections
seen.  Based on large traffic surveys I've selected the most common values
that perfectly, or with only a small down rounding difference, represent
essentially 99.99% of all connections seen in real life.  Rounding down
to the next lower value isn't a problem as we only would send slightly
more packets for the same amount of data.

The send WSCALE is bit more tricky as rounding down would let us under-
estimate the available send space available towards the remote host.
Again it turns out that a small number of values dominates all connections
and is thus carefully selected again.  The receive WSCALE isn't encoded
at all but recalculated based on the local receive socket buffer size
when a valid SYN cookie returns.  The socket buffer size most likely
didn't change in the mean time on a listen socket.  If it did we'd have
a discrepancy for those SYN cookies in flight at the time of the change.

These improvements allow one to run with SYN cookies only on Internet
facing servers.  However while SYN cookies are calculated and sent all the
time, they're only used when the syn cache overflows due to attacks or
overload.  In that cause though you can rest assured that no significant
degradation in TCP connection setup happens anymore and that even Windows
clients can make use of window scaling and SACK.

In addition the hash MAC to protect the SYN cookies is changed from MD5
to SipHash-2-4, a much faster and cryptographically secure algorithm
recently developed by Jean-Philippe Aumasson and Daniel J. Bernstein.
Ministat makes the MAC hash calculation speed difference even more obvious:

x md5
+ siphash

Re: another -Wunsequenced topic

2013-07-08 Thread dt71

Well, this turned out to be a semi-false alarm. A week ago, for a short time, 
there was a bug in Clang. There is no undefined behavior in

  ptr = func(++ptr);,

partially because a function call introduces a sequence point in C, but Clang 
did not respect this at that time. However,

  x = func1(++ptr) + func2(++ptr);

is compiler-dependent. Additionally, if func() turns out to be a macro, rather than a 
native function, then undefined behavior (due to unsequencedness) occurs. According to 
the manpage for ntohl(): On machines which have a byte order which is the same as 
the network order, routines are defined as null macros.. This can bite libstand on 
big-endian systems

So in the end, Clang has accidentally pointed me to an irrelated bug, and 
induced some unnecessary code changes. lolz
___
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: Fixing X220 Video The Right Way (and trying to apply the same fix to X121e)

2013-07-08 Thread Matthias Petermann


Hello,

I applied the patch, trying to get brightness controls for my X121e.

But it looks like I need a different loader.conf setting.

 hw.pci0.0.2.0.handle=_SB_.PCI0.PEG.VID

doesn't work. In my ASl there is only one device providing DOD / DOS:

Scope (_SB.PCI0)
  {
  Device (GFX0)
  {
  Name (_ADR, 0x0002)  // _ADR: Address
  Method (_DOS, 1, NotSerialized)  // _DOS: Disable  
Output Switching

  {
  Store (And (Arg0, 0x07), DSEN)
  If (LEqual (And (Arg0, 0x03), Zero))
  {
  If (CondRefOf (HDOS))
  {
  HDOS ()
  }
  }
  }

  Method (_DOD, 0, NotSerialized)  // _DOD: Display Output Devices
  {
  If (CondRefOf (IDAB))
  {
  IDAB ()
  }
  Else
  {
   [truncated]

Unfortunately I'm far away from understanding the ASL, so I can only  
guess this is the part where my graphics device is described. Also,  
because I don't have a PEG device with DOD / DOS, I fear the described  
patch for the X220 will not solve the problem for me?


My ASL is located here:  
https://d2ux.org/owncloud/public.php?service=filest=7022f90cea5e48da7fa65806c0d66091


I would really appreciate if someone with more ACPI background could  
take a look at it and

tell me what I should try next.

Thanks  kind regards,
Matthias


___
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: ACPI Lenovo X121e (Model 3045-79G, i3, HD3000) Suspend and LCD Brightness

2013-07-08 Thread Matthias Petermann


Hello Kevin,

Zitat von Kevin Oberman rkober...@gmail.com:

Can't help with suspend/resume, but I can point you to the brightness
solution.

This is probably the same issue that impacts most recent Lenovo laptops. If
so, there is a fix in the thread titled Fixing X220 Video The Right Way
on this (acpi@) mailing list with the patch by jhb on Feb. 28, but be usre
to a followup message on using the fix posted on June 14. It' a tricky
issue with getting a string with quoted characters parsed correctly.

There have been a number of discussions on ThinkPad suspend/resume, but I
have not seen a reliable fix. (I can't resume mine at this time, though it
suspends fine :-)


Thanks for your reply. I found the thread you recommended to me and  
followed up with it.

Looks like I cannot apply the same procedure unchanged to the X121e.

It would be interesting to know if the suspend / brightness issues are  
specific to the Thinkpads with integrated Intel HD graphics or if also  
the NVidia models are affected.


Kind regards,
Matthias


___
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: Fixing X220 Video The Right Way (and trying to apply the same fix to X121e)

2013-07-08 Thread Matthias Petermann


Hello,

I applied the patch, trying to get brightness controls for my X121e.

But it looks like I need a different loader.conf setting.

hw.pci0.0.2.0.handle=_SB_.PCI0.PEG.VID

doesn't work. In my ASl there is only one device providing DOD / DOS:

Scope (_SB.PCI0)
 {
 Device (GFX0)
 {
 Name (_ADR, 0x0002)  // _ADR: Address
 Method (_DOS, 1, NotSerialized)  // _DOS: Disable Output  
Switching

 {
 Store (And (Arg0, 0x07), DSEN)
 If (LEqual (And (Arg0, 0x03), Zero))
 {
 If (CondRefOf (HDOS))
 {
 HDOS ()
 }
 }
 }

 Method (_DOD, 0, NotSerialized)  // _DOD: Display Output Devices
 {
 If (CondRefOf (IDAB))
 {
 IDAB ()
 }
 Else
 {
  [truncated]

Unfortunately I'm far away from understanding the ASL, so I can only  
guess this is the part where my graphics device is described. Also,  
because I don't have a PEG device with DOD / DOS, I fear the described  
patch for the X220 will not solve the problem for me?


My ASL is located here:  
https://d2ux.org/owncloud/public.php?service=filest=7022f90cea5e48da7fa65806c0d66091


I would really appreciate if someone with more ACPI background could  
take a look at it and

tell me what I should try next.

Thanks  kind regards,
Matthias

___
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: ACPI Lenovo X121e (Model 3045-79G, i3, HD3000) Suspend and LCD Brightness

2013-07-08 Thread Matthias Petermann

Hello Kevin,

Zitat von Kevin Oberman rkober...@gmail.com:

Can't help with suspend/resume, but I can point you to the brightness
solution.

This is probably the same issue that impacts most recent Lenovo laptops. If
so, there is a fix in the thread titled Fixing X220 Video The Right Way
on this (acpi@) mailing list with the patch by jhb on Feb. 28, but be usre
to a followup message on using the fix posted on June 14. It' a tricky
issue with getting a string with quoted characters parsed correctly.

There have been a number of discussions on ThinkPad suspend/resume, but I
have not seen a reliable fix. (I can't resume mine at this time, though it
suspends fine :-)


Thanks for your reply. I found the thread you recommended to me and  
followed up with it.

Looks like I cannot apply the same procedure unchanged to the X121e.

It would be interesting to know if the suspend / brightness issues are  
specific to the Thinkpads with integrated Intel HD graphics or if also  
the NVidia models are affected.


Kind regards,
Matthias



___
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: Ipfilter pre-Vendor Import Issue

2013-07-08 Thread Andre Oppermann

On 05.07.2013 20:38, Cy Schubert wrote:

In message 20130705084649.gc67...@freebsd.org, Gleb Smirnoff writes:

What I'd prefer to see is the following:

- commit new ipfilter untouched to vendor-sys/ipfilter
- nuke sys/contrib/ipfilter
- svn copy vendor-sys/ipfilter to sys/netpfil/ipfilter


Having ipfilter in one place instead of two (vendor and vendor-sys) makes a
lot more sense.

I suppose we could put ipfilter's kernel components in sys/netpfil but what
about the userland sources? Also see my reply below regarding keeping it in
contrib.



In future imports do:

- commit newer ipfilter to vendor-sys/ipfilter
- svn merge vendor-sys/ipfilter to sys/netpfil/ipfilter

What's the reason to keep code in contrib?


The reason to keep ipftilter in contrib is to maintain consistency with
other contributed software such as bind, nvi, sendmail, pf, and a host of
other notable software we don't maintain ourselves. Maintaining consistency
with other contributed software should probably be maintained. I'm open to
moving all packet filters, e.g. ipfw, pf, and ipfilter into sys/netpfil as
long as consistency is maintained across the board.

Do you think we should put the userland sources also in the same location
or should we maintain a similar separation we do today? I'm open to both
however I'd prefer keeping all vendor software (kernel and userland) in one
location.


I think the main distinction here is whether the adaptions to
FreeBSD are kept local (resulting in almost a fork) or are fed
upstream so that successive updates require less or no local
changes.

Having the kernel part in sys/netpfil certainly makes it easier
for kernel people to adjust it to changed realities.

IIRC ipfilter also has very messy ifdef's all over the place for
every possible ancient version of FreeBSD.  This probably should
be cleaned up (and upstreamed) as well.

--
Andre

___
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: Ipfilter pre-Vendor Import Issue

2013-07-08 Thread Gleb Smirnoff
  Cy,

On Fri, Jul 05, 2013 at 11:38:21AM -0700, Cy Schubert wrote:
C  What I'd prefer to see is the following:
C  
C  - commit new ipfilter untouched to vendor-sys/ipfilter
C  - nuke sys/contrib/ipfilter
C  - svn copy vendor-sys/ipfilter to sys/netpfil/ipfilter
C 
C Having ipfilter in one place instead of two (vendor and vendor-sys) makes a 
C lot more sense.
C
C I suppose we could put ipfilter's kernel components in sys/netpfil but what 
C about the userland sources? Also see my reply below regarding keeping it in 
C contrib.

IMO, it is possible to keep a bulk checkout of ipfilter in vendor/ipfilter,
but merge kernel files separately to sys/netpfil/ipfilter, and separately
merge userland files to appropriate place.

C  In future imports do:
C  
C  - commit newer ipfilter to vendor-sys/ipfilter
C  - svn merge vendor-sys/ipfilter to sys/netpfil/ipfilter
C  
C  What's the reason to keep code in contrib?
C 
C The reason to keep ipftilter in contrib is to maintain consistency with 
C other contributed software such as bind, nvi, sendmail, pf, and a host of 
C other notable software we don't maintain ourselves. Maintaining consistency 
C with other contributed software should probably be maintained. I'm open to 
C moving all packet filters, e.g. ipfw, pf, and ipfilter into sys/netpfil as 
C long as consistency is maintained across the board.
C 
C Do you think we should put the userland sources also in the same location 
C or should we maintain a similar separation we do today? I'm open to both 
C however I'd prefer keeping all vendor software (kernel and userland) in one 
C location.

The BSD license allows us to put the code into FreeBSD w/o any separation.

So the question is: what is more handy to us?

What do we actually gain having contrib/ipf, assuming we got vendor branch
already?

What we lose is: 
- more complex Makefiles
- more complex hacking: edit files in one place, run make in other

-- 
Totus tuus, Glebius.
___
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


[head tinderbox] failure on armv6/arm

2013-07-08 Thread FreeBSD Tinderbox
TB --- 2013-07-08 11:50:18 - tinderbox 2.10 running on freebsd-current.sentex.ca
TB --- 2013-07-08 11:50:18 - FreeBSD freebsd-current.sentex.ca 8.3-PRERELEASE 
FreeBSD 8.3-PRERELEASE #0: Mon Mar 26 13:54:12 EDT 2012 
d...@freebsd-current.sentex.ca:/usr/obj/usr/src/sys/GENERIC  amd64
TB --- 2013-07-08 11:50:18 - starting HEAD tinderbox run for armv6/arm
TB --- 2013-07-08 11:50:18 - cleaning the object tree
TB --- 2013-07-08 11:51:22 - /usr/local/bin/svn stat /src
TB --- 2013-07-08 11:51:25 - At svn revision 253030
TB --- 2013-07-08 11:51:26 - building world
TB --- 2013-07-08 11:51:26 - CROSS_BUILD_TESTING=YES
TB --- 2013-07-08 11:51:26 - MAKEOBJDIRPREFIX=/obj
TB --- 2013-07-08 11:51:26 - PATH=/usr/bin:/usr/sbin:/bin:/sbin
TB --- 2013-07-08 11:51:26 - SRCCONF=/dev/null
TB --- 2013-07-08 11:51:26 - TARGET=arm
TB --- 2013-07-08 11:51:26 - TARGET_ARCH=armv6
TB --- 2013-07-08 11:51:26 - TZ=UTC
TB --- 2013-07-08 11:51:26 - __MAKE_CONF=/dev/null
TB --- 2013-07-08 11:51:26 - cd /src
TB --- 2013-07-08 11:51:26 - /usr/bin/make -B buildworld
 Building an up-to-date make(1)
 World build started on Mon Jul  8 11:51:33 UTC 2013
 Rebuilding the temporary build tree
 stage 1.1: legacy release compatibility shims
 stage 1.2: bootstrap tools
 stage 2.1: cleaning up the object tree
 stage 2.2: rebuilding the object tree
 stage 2.3: build tools
 stage 3: cross tools
 stage 4.1: building includes
 stage 4.2: building libraries
 stage 4.3: make dependencies
 stage 4.4: building everything
 World build completed on Mon Jul  8 14:53:29 UTC 2013
TB --- 2013-07-08 14:53:29 - generating LINT kernel config
TB --- 2013-07-08 14:53:29 - cd /src/sys/arm/conf
TB --- 2013-07-08 14:53:29 - /usr/bin/make -B LINT
TB --- 2013-07-08 14:53:29 - cd /src/sys/arm/conf
TB --- 2013-07-08 14:53:29 - /usr/sbin/config -m LINT
TB --- 2013-07-08 14:53:29 - skipping LINT kernel
TB --- 2013-07-08 14:53:29 - cd /src/sys/arm/conf
TB --- 2013-07-08 14:53:29 - /usr/sbin/config -m AC100
TB --- 2013-07-08 14:53:29 - building AC100 kernel
TB --- 2013-07-08 14:53:29 - CROSS_BUILD_TESTING=YES
TB --- 2013-07-08 14:53:29 - MAKEOBJDIRPREFIX=/obj
TB --- 2013-07-08 14:53:29 - PATH=/usr/bin:/usr/sbin:/bin:/sbin
TB --- 2013-07-08 14:53:29 - SRCCONF=/dev/null
TB --- 2013-07-08 14:53:29 - TARGET=arm
TB --- 2013-07-08 14:53:29 - TARGET_ARCH=armv6
TB --- 2013-07-08 14:53:29 - TZ=UTC
TB --- 2013-07-08 14:53:29 - __MAKE_CONF=/dev/null
TB --- 2013-07-08 14:53:29 - cd /src
TB --- 2013-07-08 14:53:29 - /usr/bin/make -B buildkernel KERNCONF=AC100
 Kernel build for AC100 started on Mon Jul  8 14:53:29 UTC 2013
 stage 1: configuring the kernel
 stage 2.1: cleaning up the object tree
 stage 2.2: rebuilding the object tree
 stage 2.3: build tools
 stage 3.1: making dependencies
 stage 3.2: building everything
[...]
cc  -c -O -pipe  -std=c99 -g -Wall -Wredundant-decls -Wnested-externs 
-Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  
-Wundef -Wno-pointer-sign -fformat-extensions  -Wmissing-include-dirs 
-fdiagnostics-show-option  -Wno-error-tautological-compare 
-Wno-error-empty-body  -Wno-error-parentheses-equality  -nostdinc  -I. 
-I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/libfdt -D_KERNEL 
-DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h  -ffreestanding -Werror  
/src/sys/arm/arm/pmap-v6.c
/src/sys/arm/arm/pmap-v6.c:3339:28: error: more '%' conversions than data 
arguments [-Werror,-Wformat]
 va %x pte %x in %s, va, *ptep));
  ~^
/src/sys/sys/systm.h:83:17: note: expanded from macro 'KASSERT'
kassert_panic msg;  
\
  ^
1 error generated.
*** Error code 1

Stop.
make: stopped in /obj/arm.armv6/src/sys/AC100
*** Error code 1

Stop.
make: stopped in /src
*** Error code 1

Stop in /src.
TB --- 2013-07-08 14:56:07 - WARNING: /usr/bin/make returned exit code  1 
TB --- 2013-07-08 14:56:07 - ERROR: failed to build AC100 kernel
TB --- 2013-07-08 14:56:07 - 8905.29 user 1540.20 system 11149.19 real


http://tinderbox.freebsd.org/tinderbox-head-build-HEAD-armv6-arm.full
___
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: [CFT] sysutils/bsdconfg (0.9.0) and sysutils/sysrc (5.2)

2013-07-08 Thread Kurt Lidl

In light of Devin's CFT, I offer the following, related code...

Greetings -

I've been asked to look at inserting ZFS support into the guided setup
for FreeBSD.

I've got a mostly working set of patches, but they are still a bit
ugly -- hard wired to use ZFS now, rather than UFS, but I'm to the point
where some external input is needed.

On of the issues that I've run into is the partedit command knows
that pretty much a partition equates to a filesystem.  While that
is true for UFS, it's not that way for ZFS.  A partition is more likely
a zpool, and that zpool can have as many filesystems as the user
wants.

Also, the bsdinstall framework (nice piece of work!) would need to
be extended to query for zfs vs ufs and also have some hook for
setting up the different zfs filesystems.  Right now, I just kludged
in a static list of filesystems to create in the mount script.
I suppose there should be filesystems script before mount that
lets a user muck about in terms of creating filesystems...

Anyway, attached should be a patch against a recent snapshot of
a -current source tree to add in this code.  It's not ready for
primetime, buy I would like some feedback about the approach I've
taken so far.

Thanks.

-Kurt

diff --git a/usr.sbin/bsdinstall/partedit/Makefile 
b/usr.sbin/bsdinstall/partedit/Makefile
--- a/usr.sbin/bsdinstall/partedit/Makefile
+++ b/usr.sbin/bsdinstall/partedit/Makefile
@@ -1,9 +1,11 @@
 # $FreeBSD$
+STRIP=
+CFLAGS+=-g
 
 BINDIR= /usr/libexec/bsdinstall
 PROG=  partedit
 LINKS= ${BINDIR}/partedit ${BINDIR}/autopart \
${BINDIR}/partedit ${BINDIR}/scriptedpart
 SYMLINKS= ${BINDIR}/partedit /usr/sbin/sade
 DPADD= ${LIBGEOM} ${LIBNCURSESW} ${LIBUTIL} ${LIBDIALOG} ${LIBM}
 LDADD= -lgeom -lncursesw -lutil -ldialog -lm
diff --git a/usr.sbin/bsdinstall/partedit/gpart_ops.c 
b/usr.sbin/bsdinstall/partedit/gpart_ops.c
--- a/usr.sbin/bsdinstall/partedit/gpart_ops.c
+++ b/usr.sbin/bsdinstall/partedit/gpart_ops.c
@@ -114,16 +114,56 @@ newfs_command(const char *fstype, char *
strcat(command, -O1 );
else if (strcmp(items[i].name, SU) == 0)
strcat(command, -U );
else if (strcmp(items[i].name, SUJ) == 0)
strcat(command, -j );
else if (strcmp(items[i].name, TRIM) == 0)
strcat(command, -t );
}
+   } else if (strcmp(fstype, freebsd-zfs) == 0) {
+   int i;
+   DIALOG_LISTITEM items[] = {
+   {fletcher4, checksum algorithm: fletcher4,
+   Use fletcher4 for data integrity checking. 
+   (default), 1 },
+   {fletcher2, checksum algorithm: fletcher2,
+   Use fletcher2 for data integrity checking. 
+   (not recommended), 0 },
+   {sha256, checksum algorithm: sha256,
+   Use sha256 for data integrity checking. 
+   (not recommended), 0 },
+   {atime, Update atimes for files,
+   Disable atime update, 0 },
+   };
+
+   if (!use_default) {
+   int choice;
+   choice = dlg_checklist(ZFS Options, , 0, 0, 0,
+   sizeof(items)/sizeof(items[0]), items, NULL,
+   FLAG_CHECK, i);
+   if (choice == 1) /* Cancel */
+   return;
+   }
+
+   strcpy(command, zpool create -o cachefile=/tmp/zpool.cache
+-O canmount=off -O mountpoint=none );
+   for (i = 0; i  (int)(sizeof(items)/sizeof(items[0])); i++) {
+   if (items[i].state == 0)
+   continue;
+   if (strcmp(items[i].name, fletcher4) == 0)
+   strcat(command, -O checksum=fletcher4 );
+   else if (strcmp(items[i].name, fletcher2) == 0)
+   strcat(command, -O checksum=fletcher2 );
+   else if (strcmp(items[i].name, sha256) == 0)
+   strcat(command, -O checksum=sha256 );
+   else if (strcmp(items[i].name, atime) == 0)
+   strcat(command, -O atime=off );
+   }
+   strcat(command, zroot ); /* XXX */
} else if (strcmp(fstype, fat32) == 0 || strcmp(fstype, efi) == 0) {
int i;
DIALOG_LISTITEM items[] = {
{FAT32, FAT Type 32,
Create a FAT32 filesystem (default), 1 },
{FAT16, FAT Type 16,
Create a FAT16 filesystem, 0 },
{FAT12, FAT Type 12,
@@ -339,30 +379,34 

Re: Ipfilter pre-Vendor Import Issue

2013-07-08 Thread Cy Schubert
In message 51da85cf.3000...@freebsd.org, Andre Oppermann writes:
 On 05.07.2013 20:38, Cy Schubert wrote:
  In message 20130705084649.gc67...@freebsd.org, Gleb Smirnoff writes:
  What I'd prefer to see is the following:
 
  - commit new ipfilter untouched to vendor-sys/ipfilter
  - nuke sys/contrib/ipfilter
  - svn copy vendor-sys/ipfilter to sys/netpfil/ipfilter
 
  Having ipfilter in one place instead of two (vendor and vendor-sys) makes a
  lot more sense.
 
  I suppose we could put ipfilter's kernel components in sys/netpfil but what
  about the userland sources? Also see my reply below regarding keeping it in
  contrib.
 
 
  In future imports do:
 
  - commit newer ipfilter to vendor-sys/ipfilter
  - svn merge vendor-sys/ipfilter to sys/netpfil/ipfilter
 
  What's the reason to keep code in contrib?
 
  The reason to keep ipftilter in contrib is to maintain consistency with
  other contributed software such as bind, nvi, sendmail, pf, and a host of
  other notable software we don't maintain ourselves. Maintaining consistency
  with other contributed software should probably be maintained. I'm open to
  moving all packet filters, e.g. ipfw, pf, and ipfilter into sys/netpfil as
  long as consistency is maintained across the board.
 
  Do you think we should put the userland sources also in the same location
  or should we maintain a similar separation we do today? I'm open to both
  however I'd prefer keeping all vendor software (kernel and userland) in one
  location.
 
 I think the main distinction here is whether the adaptions to
 FreeBSD are kept local (resulting in almost a fork) or are fed
 upstream so that successive updates require less or no local
 changes.

I see no problem feeding update upstream. The email I just received from 
Darren (cc'd Gleb and yourself) is likely to lead to this kind of 
relationship.

 
 Having the kernel part in sys/netpfil certainly makes it easier
 for kernel people to adjust it to changed realities.

True. I'm thinking we should do the same with the userland side of 
ipfilter, keeping everything consistent.

Also, I think putting all of the vendor bits regardless of whether they're 
destined for kernel or userlan into vendor/ or vendor-sys/ should make it 
simpler as well. What are  your thoughts?

 
 IIRC ipfilter also has very messy ifdef's all over the place for
 every possible ancient version of FreeBSD.  This probably should
 be cleaned up (and upstreamed) as well.

Yes. There's a lot of cruft in there for operating systems that are no 
longer relevant as well. At least we can push some of the FreeBSD cleanup 
upstream. Initially I'd like to import v5-1-2 into our vendor branch 
(either vendor/ or vendor-sys/ for the complete tarball) then svn merge 
into sys/netpfil/ (for kernel) and netpfil/ (for userland).

Do you have any additional thoughts on any of this?


-- 
Cheers,
Cy Schubert cy.schub...@komquats.com
FreeBSD UNIX:  c...@freebsd.org   Web:  http://www.FreeBSD.org

The need of the many outweighs the greed of the few.


___
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: Ipfilter pre-Vendor Import Issue

2013-07-08 Thread Cy Schubert
In message 20130708134400.gh67...@glebius.int.ru, Gleb Smirnoff writes:
   Cy,
 
 On Fri, Jul 05, 2013 at 11:38:21AM -0700, Cy Schubert wrote:
 C  What I'd prefer to see is the following:
 C  
 C  - commit new ipfilter untouched to vendor-sys/ipfilter
 C  - nuke sys/contrib/ipfilter
 C  - svn copy vendor-sys/ipfilter to sys/netpfil/ipfilter
 C 
 C Having ipfilter in one place instead of two (vendor and vendor-sys) makes 
 a 
 C lot more sense.
 C
 C I suppose we could put ipfilter's kernel components in sys/netpfil but wha
 t 
 C about the userland sources? Also see my reply below regarding keeping it i
 n 
 C contrib.
 
 IMO, it is possible to keep a bulk checkout of ipfilter in vendor/ipfilter,
 but merge kernel files separately to sys/netpfil/ipfilter, and separately
 merge userland files to appropriate place.
 
 C  In future imports do:
 C  
 C  - commit newer ipfilter to vendor-sys/ipfilter
 C  - svn merge vendor-sys/ipfilter to sys/netpfil/ipfilter
 C  
 C  What's the reason to keep code in contrib?
 C 
 C The reason to keep ipftilter in contrib is to maintain consistency with 
 C other contributed software such as bind, nvi, sendmail, pf, and a host of 
 C other notable software we don't maintain ourselves. Maintaining consistenc
 y 
 C with other contributed software should probably be maintained. I'm open to
  
 C moving all packet filters, e.g. ipfw, pf, and ipfilter into sys/netpfil as
  
 C long as consistency is maintained across the board.
 C 
 C Do you think we should put the userland sources also in the same location 
 C or should we maintain a similar separation we do today? I'm open to both 
 C however I'd prefer keeping all vendor software (kernel and userland) in on
 e 
 C location.
 
 The BSD license allows us to put the code into FreeBSD w/o any separation.
 
 So the question is: what is more handy to us?
 
 What do we actually gain having contrib/ipf, assuming we got vendor branch
 already?
 
 What we lose is: 
 - more complex Makefiles
 - more complex hacking: edit files in one place, run make in other

How is this for a plan?

Instead of importing the kernel bits into vendor-sys/ipfilter and the 
userland bits into vendor/ipfilter, the base tarball should be imported 
into vendor-sys/ipfilter (or vendor/ipfilter, doesn't matter which). We 
keep the complete tarball imported into one place in the tree.

Merge ipfilter into sys/netpfil/ipfilter (for kernel bits) and 
netpfil/ipfilter (for userland bits).

We should probably think of moving pf and ipfw into the new subdirectory as 
well, but that's for a future discussion.


-- 
Cheers,
Cy Schubert cy.schub...@komquats.com
FreeBSD UNIX:  c...@freebsd.org   Web:  http://www.FreeBSD.org

The need of the many outweighs the greed of the few.


___
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


new make vs security/vpnc

2013-07-08 Thread Andriy Gapon

Using recent head and the latest ports as of now.
$ cd /usr/ports/security/vpnc
$ make
===  Building for vpnc-0.5.3_8
/usr/ports/security/vpnc/Makefile:37: *** missing separator.  Stop.
*** Error code 1

But fmake works just fine without any error.

In my ports tree Makefile:37 is:
.include bsd.port.options.mk

Please advise.
-- 
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: new make vs security/vpnc

2013-07-08 Thread Andriy Gapon
on 09/07/2013 00:07 Andriy Gapon said the following:
 
 Using recent head and the latest ports as of now.
 $ cd /usr/ports/security/vpnc
 $ make
 ===  Building for vpnc-0.5.3_8
 /usr/ports/security/vpnc/Makefile:37: *** missing separator.  Stop.
 *** Error code 1
 
 But fmake works just fine without any error.
 
 In my ports tree Makefile:37 is:
 .include bsd.port.options.mk
 
 Please advise.
 

A quick followup.  I ran make -dA and noticed the following in the output:
*** Failed target:  do-build
*** Failed command: (cd /usr/obj/ports/usr/ports/security/vpnc/work/vpnc-0.5.3;
if ! /usr/bin/env BINS=cisco-decrypt SHELL=/bin/sh NO_LINT=YES
ADDR2LINE=/usr/local/bin/addr2line AR=/usr/local/bin/ar
AS=/usr/local/bin/as CPPFILT=/usr/local/bin/c++filt
GPROF=/usr/local/bin/gprof LD=/usr/local/bin/ld NM=/usr/local/bin/nm
OBJCOPY=/usr/local/bin/objcopy OBJDUMP=/usr/local/bin/objdump
RANLIB=/usr/local/bin/ranlib READELF=/usr/local/bin/readelf
SIZE=/usr/local/bin/size STRINGS=/usr/local/bin/strings PREFIX=/usr/local
LOCALBASE=/usr/local MOTIFLIB=-L/usr/local/lib -lXm -lXp LIBDIR=/usr/lib
CC=gcc46 CFLAGS=-O2 -pipe -O2 -fno-strict-aliasing -pipe -march=amdfam10
-DOPENSSL_GPL_VIOLATION -DCISCO_PATCH_VERSION -march=amdfam10 -march=amdfam10
CPP=cpp46 CPPFLAGS= LDFLAGS= -lcrypto -Wl,-rpath=/usr/local/lib/gcc46
-L/usr/local/lib/gcc46 -Wl,-rpath=/usr/local/lib/gcc46 -L/usr/local/lib/gcc46
CXX=g++46 CXXFLAGS=-O2 -pipe -O2 -fno-strict-aliasing -pipe -march=amdfam10
-DOPENSSL_GPL_VIOLATION -DCISCO_PATCH_VERSION -march=amdfam10 -march=amdfam10
-O2 -fno-strict-aliasing -pipe -march=amdfam10 -march=amdfam10
MANPREFIX=/usr/local BSD_INSTALL_PROGRAM=install -s -o root -g wheel -m 555
BSD_INSTALL_LIB=install -s -o root -g wheel -m 444 BSD_INSTALL_SCRIPT=install
-o root -g wheel -m 555 BSD_INSTALL_DATA=install -o root -g wheel -m 444
BSD_INSTALL_MAN=install -o root -g wheel -m 444 gmake -f
/usr/ports/security/vpnc/Makefile -j`/sbin/sysctl -n kern.smp.cpus` all; then if
[ -n  ] ; then echo === Compilation failed unexpectedly.; (echo ) |
/usr/bin/fmt 75 79 ; fi; false; fi)

This is quite a large snippet, so here is a smaller and more obvious one:
gmake -f /usr/ports/security/vpnc/Makefile -j`/sbin/sysctl -n kern.smp.cpus` all

And indeed:
$ gmake
Makefile:37: *** missing separator.  Stop.

The port has
USES= ... gmake
but that's supposed to affect what is used inside the working directory.
It's certainly a bug that gmake is run with the port's make file.


-- 
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: new make vs security/vpnc

2013-07-08 Thread Andriy Gapon

Seems like the problem boils down to this:

$ make -V MAKEFILE
/usr/ports/security/vpnc/Makefile
$ fmake -V MAKEFILE
Makefile

The only explicit assignments of MAKEFILE that I could find in ports
infrastructure are these:
/usr/ports/Mk/bsd.port.mk:MAKEFILE?=Makefile
/usr/ports/Mk/bsd.gnustep.mk:MAKEFILE=  GNUmakefile

-- 
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

[head tinderbox] failure on armv6/arm

2013-07-08 Thread FreeBSD Tinderbox
TB --- 2013-07-08 23:00:18 - tinderbox 2.10 running on freebsd-current.sentex.ca
TB --- 2013-07-08 23:00:18 - FreeBSD freebsd-current.sentex.ca 8.3-PRERELEASE 
FreeBSD 8.3-PRERELEASE #0: Mon Mar 26 13:54:12 EDT 2012 
d...@freebsd-current.sentex.ca:/usr/obj/usr/src/sys/GENERIC  amd64
TB --- 2013-07-08 23:00:18 - starting HEAD tinderbox run for armv6/arm
TB --- 2013-07-08 23:00:18 - cleaning the object tree
TB --- 2013-07-08 23:01:23 - /usr/local/bin/svn stat /src
TB --- 2013-07-08 23:01:26 - At svn revision 253048
TB --- 2013-07-08 23:01:27 - building world
TB --- 2013-07-08 23:01:27 - CROSS_BUILD_TESTING=YES
TB --- 2013-07-08 23:01:27 - MAKEOBJDIRPREFIX=/obj
TB --- 2013-07-08 23:01:27 - PATH=/usr/bin:/usr/sbin:/bin:/sbin
TB --- 2013-07-08 23:01:27 - SRCCONF=/dev/null
TB --- 2013-07-08 23:01:27 - TARGET=arm
TB --- 2013-07-08 23:01:27 - TARGET_ARCH=armv6
TB --- 2013-07-08 23:01:27 - TZ=UTC
TB --- 2013-07-08 23:01:27 - __MAKE_CONF=/dev/null
TB --- 2013-07-08 23:01:27 - cd /src
TB --- 2013-07-08 23:01:27 - /usr/bin/make -B buildworld
 Building an up-to-date make(1)
 World build started on Mon Jul  8 23:01:34 UTC 2013
 Rebuilding the temporary build tree
 stage 1.1: legacy release compatibility shims
 stage 1.2: bootstrap tools
 stage 2.1: cleaning up the object tree
 stage 2.2: rebuilding the object tree
 stage 2.3: build tools
 stage 3: cross tools
 stage 4.1: building includes
 stage 4.2: building libraries
 stage 4.3: make dependencies
 stage 4.4: building everything
 World build completed on Tue Jul  9 02:03:30 UTC 2013
TB --- 2013-07-09 02:03:30 - generating LINT kernel config
TB --- 2013-07-09 02:03:30 - cd /src/sys/arm/conf
TB --- 2013-07-09 02:03:30 - /usr/bin/make -B LINT
TB --- 2013-07-09 02:03:30 - cd /src/sys/arm/conf
TB --- 2013-07-09 02:03:30 - /usr/sbin/config -m LINT
TB --- 2013-07-09 02:03:30 - skipping LINT kernel
TB --- 2013-07-09 02:03:30 - cd /src/sys/arm/conf
TB --- 2013-07-09 02:03:30 - /usr/sbin/config -m AC100
TB --- 2013-07-09 02:03:31 - building AC100 kernel
TB --- 2013-07-09 02:03:31 - CROSS_BUILD_TESTING=YES
TB --- 2013-07-09 02:03:31 - MAKEOBJDIRPREFIX=/obj
TB --- 2013-07-09 02:03:31 - PATH=/usr/bin:/usr/sbin:/bin:/sbin
TB --- 2013-07-09 02:03:31 - SRCCONF=/dev/null
TB --- 2013-07-09 02:03:31 - TARGET=arm
TB --- 2013-07-09 02:03:31 - TARGET_ARCH=armv6
TB --- 2013-07-09 02:03:31 - TZ=UTC
TB --- 2013-07-09 02:03:31 - __MAKE_CONF=/dev/null
TB --- 2013-07-09 02:03:31 - cd /src
TB --- 2013-07-09 02:03:31 - /usr/bin/make -B buildkernel KERNCONF=AC100
 Kernel build for AC100 started on Tue Jul  9 02:03:31 UTC 2013
 stage 1: configuring the kernel
 stage 2.1: cleaning up the object tree
 stage 2.2: rebuilding the object tree
 stage 2.3: build tools
 stage 3.1: making dependencies
 stage 3.2: building everything
[...]
cc  -c -O -pipe  -std=c99 -g -Wall -Wredundant-decls -Wnested-externs 
-Wstrict-prototypes  -Wmissing-prototypes -Wpointer-arith -Winline -Wcast-qual  
-Wundef -Wno-pointer-sign -fformat-extensions  -Wmissing-include-dirs 
-fdiagnostics-show-option  -Wno-error-tautological-compare 
-Wno-error-empty-body  -Wno-error-parentheses-equality  -nostdinc  -I. 
-I/src/sys -I/src/sys/contrib/altq -I/src/sys/contrib/libfdt -D_KERNEL 
-DHAVE_KERNEL_OPTION_HEADERS -include opt_global.h  -ffreestanding -Werror  
/src/sys/arm/arm/pmap-v6.c
/src/sys/arm/arm/pmap-v6.c:3339:28: error: more '%' conversions than data 
arguments [-Werror,-Wformat]
 va %x pte %x in %s, va, *ptep));
  ~^
/src/sys/sys/systm.h:83:17: note: expanded from macro 'KASSERT'
kassert_panic msg;  
\
  ^
1 error generated.
*** Error code 1

Stop.
make: stopped in /obj/arm.armv6/src/sys/AC100
*** Error code 1

Stop.
make: stopped in /src
*** Error code 1

Stop in /src.
TB --- 2013-07-09 02:06:09 - WARNING: /usr/bin/make returned exit code  1 
TB --- 2013-07-09 02:06:09 - ERROR: failed to build AC100 kernel
TB --- 2013-07-09 02:06:09 - 8909.68 user 1540.76 system 11150.78 real


http://tinderbox.freebsd.org/tinderbox-head-build-HEAD-armv6-arm.full
___
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: another -Wunsequenced topic

2013-07-08 Thread Tim Kientzle

On Jul 8, 2013, at 4:43 AM, d...@gmx.com wrote:

 Well, this turned out to be a semi-false alarm. A week ago, for a short time, 
 there was a bug in Clang. There is no undefined behavior in
 
  ptr = func(++ptr);,

No, there is not.

However, this does have an implicit redundant store,
so changing it to

ptr = func(ptr + 1);

is still a good idea, just not for the reason Clang was claiming.


 partially because a function call introduces a sequence point in C, but Clang 
 did not respect this at that time. However,
 
  x = func1(++ptr) + func2(++ptr);
 
 is compiler-dependent.

Code like this is badly broken.  The order of evaluation
here can even change across compiler versions (optimizers
use a variety of criteria to reorganize code, which can easily
change from version to version).

 Additionally, if func() turns out to be a macro, rather than a native 
 function, then undefined behavior (due to unsequencedness) occurs.

Replacing functions with macros is a common way to
optimize code, which is yet another reason the idiom
above should generally be avoided.

 So in the end, Clang has accidentally pointed me to an irrelated bug, and 
 induced some unnecessary code changes.

Not strictly necessary for correctness, but still good changes for the most 
part.

Tim

___
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


Kernel crash during heavy disk access

2013-07-08 Thread Eric Camachat
I experienced kernel crashes while make world or ports.
For example:
# cd /usr/port/lang/mono
# make

Will cause the crash, from /var/crash/core.txt:
eb8460p dumped core - see /var/crash/vmcore.5

Mon Jul  8 21:22:58 PDT 2013

FreeBSD eb8460p 10.0-CURRENT FreeBSD 10.0-CURRENT #5 r253048: Mon Jul  8
19:07:18 PDT 2013 root@eb8460p:/u
sr/obj/usr/src/sys/EB8460p  amd64

panic: ffs_valloc: dup alloc

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:
mode = 0100600, inum = 52969060, fs = /
panic: ffs_valloc: dup alloc
cpuid = 0
KDB: stack backtrace:
#0 0x805fd6d0 at kdb_backtrace+0x60
#1 0x805c5b65 at panic+0x155
#2 0x807dda6a at ffs_valloc+0x88a
#3 0x8081a34c at ufs_makeinode+0x7c
#4 0x808d2872 at VOP_CREATE_APV+0x92
#5 0x80670c49 at vn_open_cred+0x2c9
#6 0x8066a22f at kern_openat+0x1ef
#7 0x8085db47 at amd64_syscall+0x357
#8 0x808475db at Xfast_syscall+0xfb
Uptime: 6m57s
Dumping 599 out of 3972
MB:..3%..11%..22%..33%..41%..51%..62%..73%..81%..91%

Reading symbols from /boot/modules/cuse4bsd.ko...done.
Loaded symbols for /boot/modules/cuse4bsd.ko
Reading symbols from /boot/kernel/fdescfs.ko.symbols...done.
Loaded symbols for /boot/kernel/fdescfs.ko.symbols
Reading symbols from /boot/kernel/ng_ubt.ko.symbols...done.
Loaded symbols for /boot/kernel/ng_ubt.ko.symbols
Reading symbols from /boot/kernel/netgraph.ko.symbols...done.
Loaded symbols for /boot/kernel/netgraph.ko.symbols
Reading symbols from /boot/kernel/ng_hci.ko.symbols...done.
Loaded symbols for /boot/kernel/ng_hci.ko.symbols
Reading symbols from /boot/kernel/ng_bluetooth.ko.symbols...done.
Loaded symbols for /boot/kernel/ng_bluetooth.ko.symbols
Reading symbols from /boot/kernel/ums.ko.symbols...done.
Loaded symbols for /boot/kernel/ums.ko.symbols
Reading symbols from /boot/kernel/ng_l2cap.ko.symbols...done.
Loaded symbols for /boot/kernel/ng_l2cap.ko.symbols
Reading symbols from /boot/kernel/ng_btsocket.ko.symbols...done.
Loaded symbols for /boot/kernel/ng_btsocket.ko.symbols
Reading symbols from /boot/kernel/ng_socket.ko.symbols...done.
Loaded symbols for /boot/kernel/ng_socket.ko.symbols
#0  doadump (textdump=value optimized out) at pcpu.h:236
236 pcpu.h: No such file or directory.
in pcpu.h
(kgdb) #0  doadump (textdump=value optimized out) at pcpu.h:236
#1  0x805c57e0 in kern_reboot (howto=260)
at /usr/src/sys/kern/kern_shutdown.c:447
#2  0x805c5ba4 in panic (fmt=value optimized out)
at /usr/src/sys/kern/kern_shutdown.c:754
#3  0x807dda6a in ffs_valloc (pvp=value optimized out,
mode=value optimized out, cred=value optimized out,
vpp=value optimized out) at /usr/src/sys/ufs/ffs/ffs_alloc.c:1022
#4  0x8081a34c in ufs_makeinode (mode=value optimized out,
dvp=0xfe011bf44ce8, vpp=0xff811ba058d8,
cnp=0xff811ba05900)
at /usr/src/sys/ufs/ufs/ufs_vnops.c:2620
#5  0x808d2872 in VOP_CREATE_APV (vop=value optimized out,
a=value optimized out) at vnode_if.c:265
#6  0x80670c49 in vn_open_cred (ndp=0xff811ba05880,
flagp=0xff811ba0595c, cmode=420, vn_open_flags=value optimized
out,
cred=0xfe0011fcee00, fp=0xfe00110925a0) at vnode_if.h:109
#7  0x8066a22f in kern_openat (td=0xfe011960f920,
fd=value optimized out,
path=0x801dbd580 Address 0x801dbd580 out of bounds,
pathseg=UIO_USERSPACE, flags=1538, mode=value optimized out)
at /usr/src/sys/kern/vfs_syscalls.c:1093
#8  0x8085db47 in amd64_syscall (td=0xfe011960f920,
traced=0)
at subr_syscall.c:134
#9  0x808475db in Xfast_syscall ()
at /usr/src/sys/amd64/amd64/exception.S:391
#10 0x0008013a5f2a in ?? ()
Previous frame inner to this frame (corrupt stack?)
Current language:  auto; currently minimal
(kgdb)


-- 
Eric Camachat


signature.asc
Description: This is a digitally signed message part