From pgj at FreeBSD.org Sun Jun 1 00:48:29 2008 From: pgj at FreeBSD.org (Gabor Pali) Date: Sun Jun 1 00:48:33 2008 Subject: PERFORCE change 142651 for review Message-ID: <200806010048.m510mRlI029568@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142651 Change 142651 by pgj@disznohal on 2008/06/01 00:47:29 IFC Affected files ... .. //depot/projects/docproj_hu/doc/en_US.ISO8859-1/share/sgml/glossary/freebsd-glossary.sgml#2 integrate .. //depot/projects/docproj_hu/doc/en_US.ISO8859-1/share/sgml/mailing-lists.ent#2 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/articles/Makefile#5 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/eresources/chapter.sgml#4 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/share/sgml/glossary/freebsd-glossary.sgml#4 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/share/sgml/mailing-lists.ent#3 integrate .. //depot/projects/docproj_hu/doc/share/pgpkeys/stas.key#2 integrate .. //depot/projects/docproj_hu/doc/share/sgml/man-refs.ent#2 integrate .. //depot/projects/docproj_hu/src/release/doc/en_US.ISO8859-1/readme/article.sgml#2 integrate .. //depot/projects/docproj_hu/src/release/doc/en_US.ISO8859-1/relnotes/article.sgml#2 integrate .. //depot/projects/docproj_hu/src/release/doc/share/sgml/release.ent#2 integrate .. //depot/projects/docproj_hu/www/en/docs/books.sgml#3 integrate .. //depot/projects/docproj_hu/www/en/multimedia/multimedia-input.xml#2 integrate .. //depot/projects/docproj_hu/www/en/multimedia/multimedia.pl#2 integrate .. //depot/projects/docproj_hu/www/en/platforms/arm.sgml#2 integrate .. //depot/projects/docproj_hu/www/en/platforms/xbox.sgml#2 integrate .. //depot/projects/docproj_hu/www/en/projects/ideas/ideas.xml#3 integrate .. //depot/projects/docproj_hu/www/share/sgml/events.xml#2 integrate Differences ... ==== //depot/projects/docproj_hu/doc/en_US.ISO8859-1/share/sgml/glossary/freebsd-glossary.sgml#2 (text+ko) ==== @@ -1,5 +1,5 @@ @@ -349,6 +349,10 @@ FreeBSD realtime extensions mailing list"> freebsd-realtime"> + +FreeBSD Ruby mailing list"> +freebsd-ruby"> + FreeBSD SCSI subsystem mailing list"> freebsd-scsi"> ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/articles/Makefile#5 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: doc/hu_HU.ISO8859-2/articles/Makefile,v 1.4 2008/05/26 20:21:04 pgj Exp $ +# $FreeBSD: doc/hu_HU.ISO8859-2/articles/Makefile,v 1.5 2008/05/28 17:19:18 pgj Exp $ # # The FreeBSD Hungarian Documentation Project ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/eresources/chapter.sgml#4 (text+ko) ==== @@ -1,7 +1,7 @@ + @@ -7,6 +7,8 @@ Key fingerprint = F21E D6CC 5626 9609 6CE2 A385 2BF5 5993 EB26 9581 uid Stanislav Sedov uid Stanislav Sedov +uid Stanislav Sedov (Corporate email) +uid Stanislav Sedov sub 1024g/B47898B1 2006-05-20 [expires: 2011-05-19] ]]> ==== //depot/projects/docproj_hu/doc/share/sgml/man-refs.ent#2 (text+ko) ==== @@ -20,7 +20,7 @@ lexicographical order by the entity (i.e., the dots used in place of special characters should not be expanded when comparing). - $FreeBSD: doc/share/sgml/man-refs.ent,v 1.461 2008/04/20 18:15:46 hrs Exp $ + $FreeBSD: doc/share/sgml/man-refs.ent,v 1.462 2008/05/31 13:14:38 hrs Exp $ --> @@ -3437,6 +3437,7 @@ + ==== //depot/projects/docproj_hu/src/release/doc/en_US.ISO8859-1/readme/article.sgml#2 (text+ko) ==== @@ -12,7 +12,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/readme/article.sgml,v 1.40 2007/08/18 17:11:14 bmah Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/readme/article.sgml,v 1.41 2008/05/31 13:45:35 hrs Exp $ 2000 @@ -23,6 +23,7 @@ 2005 2006 2007 + 2008 The &os; Documentation Project @@ -58,8 +59,8 @@ Intel Itanium Processor based computers (&arch.ia64;), NEC PC-9801/9821 series PCs and compatibles (&arch.pc98;), and &ultrasparc; machines (&arch.sparc64;). Versions - for the &powerpc; (&arch.powerpc;), and &mips; (mips) - architectures are currently under + for the &arm; (&arch.arm;), &mips; (&arch.mips;), and + &powerpc; (&arch.powerpc;) architectures are currently under development as well. &os; works with a wide variety of peripherals and configurations and can be used for everything from software development to games to Internet Service ==== //depot/projects/docproj_hu/src/release/doc/en_US.ISO8859-1/relnotes/article.sgml#2 (text+ko) ==== @@ -17,7 +17,7 @@ The &os; Project - $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/article.sgml,v 1.1088 2008/04/20 18:17:33 hrs Exp $ + $FreeBSD: src/release/doc/en_US.ISO8859-1/relnotes/article.sgml,v 1.1089 2008/05/31 13:27:16 hrs Exp $ 2000 @@ -208,6 +208,8 @@ The &man.cmx.4; driver, a driver for Omnikey CardMan 4040 PCMCIA smartcard readers, has been added. + The &man.syscons.4; driver now supports Colemak keyboard layout. + The &man.uslcom.4; driver, a driver for Silicon Laboratories CP2101/CP2102-based USB serial adapters, has been imported from OpenBSD. @@ -228,6 +230,10 @@ client/desktop adapters. A new igb driver will support new server adapters. + The &man.jme.4; driver has been added to provide support + for PCIe network adapters based on JMicron JMC250 Gigabit + Ethernet and JMC260 Fast Ethernet controllers. + The &man.malo.4; driver has been added to provide support for Marvell Libertas 88W8335 based PCI network adapters. @@ -263,6 +269,10 @@ the net.bpf.zerocopy_enable sysctl variable to 1. + ISDN4BSD(I4B), netatm, and all + related subsystems have been removed due to lack of + multi-processor support. + A bug in TCP options padding, where the wrong padding bytes were used, has been fixed. @@ -320,6 +330,11 @@ supports a flag, which is equivalent to specifying the flags. + BSD-licensed version of &man.cpio.1; based on + libarchive, has replaced the GNU cpio. + Note that the GNU cpio is still installed as + gcpio. + The &man.env.1; program now supports which will completely unset the given variable @@ -332,6 +347,10 @@ of primaries that were present in GNU find but not &os; &man.find.1;. + &man.jexec.8; now supports option to specify the + jail where the command will be executed. + &man.kgdb.1; now supports a new add-kld command to make it easier to debug crash dumps with kernel modules. @@ -343,6 +362,11 @@ &man.nc.1; now supports a switch to disable the use of TCP options. + The &man.ping6.8; utility now returns 2 + when the packet transmission was successful but no responses + were received (this is the same behavior as &man.ping.8;). + It returned a non-zero value before this change. + The &man.procstat.1; utility has been added to display detailed information about processes. @@ -357,6 +381,17 @@ flag to enable &man.compress.1;-style compression/decompression. + The &man.tar.1; utility now supports a + flag to ignore user/group names + on create and extract. + + The &man.tar.1; utility now supports an + flag to sparsify files on extraction. + + The &man.tar.1; utility now supports a + flag to substitute filenames based on the specified regular + expression. + The &man.tcgetsid.3; library function has been added to return the process group ID for the session leader for the controlling terminal. It is defined in IEEE Std 1003.1-2001 @@ -427,6 +462,13 @@ Ports/Packages Collection Infrastructure + The &man.pkg.create.1; utility now supports + . When this option is specified and a + package tarball exists, it will not be overwritten. This is + useful when multiple packages are saved with several consecutive + runs of &man.pkg.create.1; with the + options. + The pkg_sign and pkg_check utilities for cryptographically signing &os; packages have been removed. They were only useful for packages compressed using &man.gzip.1;; however ==== //depot/projects/docproj_hu/src/release/doc/share/sgml/release.ent#2 (text+ko) ==== @@ -1,6 +1,6 @@ @@ -54,6 +54,7 @@ + ==== //depot/projects/docproj_hu/www/en/docs/books.sgml#3 (text+ko) ==== @@ -1,6 +1,6 @@ - + @@ -140,6 +140,10 @@ A list of organizations and individuals who have helped enhance FreeBSD.

+

CUPS on &os; + (cups)
+ How to setup CUPS with &os;.

+

Setting up a CVS repository - The FreeBSD way (cvs-freebsd)
How to set up a CVS repository that uses the same CVSROOT @@ -225,6 +229,11 @@ (laptop)
Information about running FreeBSD on a laptop.

+

LDAP Authentication + (ldap-auth)
+ A practical guide about setting up an LDAP server on + &os; and how to use it for authenticating users.

+

FreeBSD: An Open Source Alternative to Linux (linux-comparison)
A white paper explaining the differences between Linux ==== //depot/projects/docproj_hu/www/en/multimedia/multimedia-input.xml#2 (text+ko) ==== @@ -10,6 +10,1089 @@ + + Alex Feldman from Sangoma + + Interview at BSDCan2008 with Alex Feldman from Sangoma. + + http://bsdtalk.blogspot.com/2008/05/bsdtalk150-alex-feldman-from-sangoma.html + bsdtalk,interview,sangoma,alex feldman + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk150.mp3 + 4 Mb + 9 minutes + MP3 version + mp3 + + + bsdtalk150.ogg + 9 minutes + Ogg version + ogg + + + + + + Justin Gibbs from the FreeBSD Foundation + + Interview with Justin Gibbs from the FreeBSD Foundation. + + http://bsdtalk.blogspot.com/2008/05/bsdtalk149-justin-gibbs-from-freebsd.html + bsdtalk,interview,freebsd foundation,justin gibbs + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk149.mp3 + 5 Mb + 11 minutes + MP3 version + mp3 + + + bsdtalk149.ogg + 11 minutes + Ogg version + ogg + + + + + + Jeremy White, Founder of CodeWeavers + + Interview with Jeremy White, Founder of CodeWeavers. + We talk about the recent availability of an + experimental build of Crossover Games for BSD. + + http://bsdtalk.blogspot.com/2008/05/bsdtalk148-jeremy-white-founder-of.html + bsdtalk,interview,freebsd,codeweavers,crossover,jeremy white + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk148.mp3 + 7 Mb + 16 minutes + MP3 version + mp3 + + + bsdtalk148.ogg + 16 minutes + Ogg version + ogg + + + + + + FreeBSD Developer Alexander Motin + + Interview with FreeBSD Developer Alexander Motin. + We talk about mpd, the netgraph based Multi-link + PPP Daemon. For more information, see + http://mpd.sourceforge.net/. + + http://bsdtalk.blogspot.com/2008/04/bsdtalk147-freebsd-developer-alexander.html + bsdtalk,interview,freebsd,mpd,alexander motin + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk147.mp3 + 8 Mb + 16 minutes + MP3 version + mp3 + + + bsdtalk147.ogg + 16 minutes + Ogg version + ogg + + + + + + James Cornell + + Another interview with Sysadmin James Cornell. We + talk about BSD, OpenSolaris, and Linux on the + desktop. + + http://bsdtalk.blogspot.com/2008/04/bsdtalkalk146-james-cornell.html + bsdtalk,interview,desktop,james cornell + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk146.mp3 + 9 Mb + 20 minutes + MP3 version + mp3 + + + bsdtalk146.ogg + 9 minutes + Ogg version + ogg + + + + + + Adam Wright from No Starch Press + + Intro: Some musings on the consistency and simplicity of BSD. +

+ A brief interview with Adam Wright from No Starch + Press, recorded by Micheal Dexter on behalf of + BSDTalk. They talk about recent and future BSD + books. +

+ ]]> + http://bsdtalk.blogspot.com/2008/04/bsdtalk145-adam-wright-from-no-starch.html + bsdtalk,interview,books,no starch press,adam wright + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk145.mp3 + 4 Mb + 8 minutes + MP3 version + mp3 + + + bsdtalk145.ogg + 8 minutes + Ogg version + ogg + + + + + + Dan Langille + + Interview with Dan Langille. We talk about his new + job with Afilias, and BSDCan 2008. + + http://bsdtalk.blogspot.com/2008/03/bsdtalk144-dan-langille.html + bsdtalk,interview,afilias,bsdcan2008,dan langille + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk144.mp3 + 10 Mb + 22 minutes + MP3 version + mp3 + + + bsdtalk144.ogg + 22 minutes + Ogg version + ogg + + + + + + BSD Hobbiest Deborah Norling + + Interview with Deborah Norling. We talk about her + use of BSD on old hardware, accessibility on the + BSDs, and Simh (http://simh.trailing-edge.com). + + http://bsdtalk.blogspot.com/2008/03/bsdtalk143-bsd-hobbiest-deborah-norling.html + bsdtalk,interview,accessibility,deborah norling + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk143.mp3 + 10 Mb + 23 minutes + MP3 version + mp3 + + + bsdtalk143.ogg + 23 minutes + Ogg version + ogg + + + + + + FreeBSD Lead Release Engineer Ken Smith + + Interview with FreeBSD Lead Release Engineer Ken Smith. + + http://bsdtalk.blogspot.com/2008/02/bsdtalk142-freebsd-lead-release.html + bsdtalk,interview,freebsd,release engineer,ken smith + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk142.mp3 + 7 Mb + 16 minutes + MP3 version + mp3 + + + bsdtalk142.ogg + 16 minutes + Ogg version + ogg + + + + + + PBI 4 with Kris Moore + + Interview with PC-BSD founder Kris Moore about the + new features in PBI 4. + + http://bsdtalk.blogspot.com/2008/02/bsdtalk141-pbi4-with-kris-moore.html + bsdtalk,interview,pc-bsd, kris moore + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk141.mp3 + 5 Mb + 10 minutes + MP3 version + mp3 + + + bsdtalk141.ogg + 10 minutes + Ogg version + ogg + + + + + + The Mult Project with Kristaps Dzonsons + + We talk about the Mult project, which is "an on-going + research project to create a high-performance + instance multiplicity system." You can find more + information at http://mult.bsd.lv/. He also gives + a quick update on Sysjail. + + http://bsdtalk.blogspot.com/2008/02/bsdtalk140-mult-project-with-kristaps.html + bsdtalk,interview,multi project, kristaps dzonsons + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk140.mp3 + 14 Mb + 30 minutes + MP3 version + mp3 + + + bsdtalk140.ogg + 30 minutes + Ogg version + ogg + + + + + + Dru Lavigne + + Interview with Dru Lavigne. We talk about her new + book "The Best of FreeBSD Basics" and also get an + update on some other projects including BSD + Certification. +

+ See the following links for more information: +

    +
  • https://register.bsdcertification.org/register/get-a-bsdcg-id +
  • http://reedmedia.net/books/freebsd-basics +
  • http://www.osbr.ca +
+

+ ]]>
+ http://bsdtalk.blogspot.com/2008/01/bsdtalk139-dru-lavigne.html + bsdtalk,interview,dru lavigne,the best of freebsd basics + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk139.mp3 + 7 Mb + 14 minutes + MP3 version + mp3 + + + bsdtalk139.ogg + 14 minutes + Ogg version + ogg + + +
+ + + Central Syslog + +
  • If you are concerned about the security of your logs, use a dedicated machine and lock it down. +
  • Keep clocks in sync. +
  • You may need to change log rotation schedule in /etc/newsyslog.conf. You can rotate based in size and/or time. This can be as much a policy decision as a hardware decision. +
  • On central log host, change syslogd flags to listen to network. Each BSD does this differently, so check the man pages. Also, check out the -n flag for busy environments. +
  • Make sure host firewall allows syslog traffic through. +
  • Be careful to limit syslog traffic to just the trusted network or hosts. FreeBSD man page refers to syslogd as a "remote disk filling service". +
  • For heavy logging environments, it is important to have a dedicated network. A down syslogd server can create a lot of "ARP who-has" broadcasts. +
  • Most network devices such as printers and commercial firewalls support sending to a central syslog server. Take a look at "Snare" for Windows hosts. +
  • To send messages from a Unix host, specify the host name prepended with @ instead of a file for logging in /etc/syslog.conf. For example, change /var/log/xferlog to @loghost.mydomain.biz. You can also copy and edit the line to have it log to both a local file and a remote host. + + ]]> + http://bsdtalk.blogspot.com/2008/01/bsdtalk138-central-syslog.html + bsdtalk,syslog + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk138.mp3 + 3 Mb + 7 minutes + MP3 version + mp3 + + + bsdtalk138.ogg + 7 minutes + Ogg version + ogg + + + + + + Open Community Camp with Marten Vijn + + Interview with Marten Vijn about www.OpenCommunityCamp.org. + + http://bsdtalk.blogspot.com/2008/01/bsdtalk137-open-community-camp-with.html + bsdtalk,interview,opencommunitycamp,marten vijn + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk137.mp3 + 6 Mb + 13 minutes + MP3 version + mp3 + + + bsdtalk137.ogg + 13 minutes + Ogg version + ogg + + + + + + PF with Peter N. M. Hansteen + + An interview with Peter N. M. Hansteen, recorded + by Michael Dexter on behalf of BSDTalk. If you would + like to learn more about the PF firewall, check out + "The Book of PF" which is available at + http://nostarch.com/frameset.php?startat=pf + + http://bsdtalk.blogspot.com/2007/12/bsdtalk136-pf-with-peter-n-m-hansteen.html + bsdtalk,interview,pf,michael dexter,peter n m hansteen,book of pf + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk136.mp3 + 7 Mb + 16 minutes + MP3 version + mp3 + + + bsdtalk136.ogg + 15 minutes + Ogg version + ogg + + + + + + Joerg Sonnenberger + + Michael Dexter sent me an interview he recorded on + behalf of BSDTalk with Joerg Sonnenberger at + EuroBSDCon 2007. + + http://bsdtalk.blogspot.com/2007/11/bsdtalk135-joerg-sonnenberger.html + bsdtalk,interview,eurobsdcon,eurobsdcon2007,michael dexter,joerg sonnenberger + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk135.mp3 + 8 Mb + 17 minutes + MP3 version + mp3 + + + bsdtalk135.ogg + 17 minutes + Ogg version + ogg + + + + + + AsiaBSDCon Update with Hiroki Sato and George Neville-Neil + + A quick update on AsiaBSDCon 2008 with Hiroki Sato + and George Neville-Neil. More information at + http://www.asiabsdcon.org/. + + http://bsdtalk.blogspot.com/2007/10/bsdtalk134-asiabsdcon-update-with.html + bsdtalk,interview,asiabsdcon,hiroki sato,george neville-neil + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk134.mp3 + 5 Mb + 10 minutes + MP3 version + mp3 + + + bsdtalk134.ogg + 10 minutes + Ogg version + ogg + + + + + + OpenCon 2007 update from Marc Balmer + + A short update on OpenCon 2007 with Marc Balmer. + More information at http://www.opencon.org/. + + http://bsdtalk.blogspot.com/2007/10/bsdtalk133-opencon-2007-update-from.html + bsdtalk,interview,opencon,marc balmer + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk133.mp3 + 3 Mb + 7 minutes + MP3 version + mp3 + + + bsdtalk133.ogg + 7 minutes + Ogg version + ogg + + + + + + Richard Stallman + + Interview with Richard Stallman. + + http://bsdtalk.blogspot.com/2007/10/bsdtalk132-richard-stallman.html + bsdtalk,interview,rms,richard stallman + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk132.ogg + 16 Mb + 28 minutes + Ogg version + ogg + + + + + + PCC with Anders "Ragge" Magnusson + + Interview with Anders "Ragge" Magnusson. We talk + about his work on the Portable C Compiler. More + information can be found at http://pcc.ludd.ltu.se/. + + http://bsdtalk.blogspot.com/2007/10/bsdtalk131-pcc-with-anders-ragge.html + bsdtalk,interview,pcc,ragge,anders magnusson + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk131.mp3 + 7 Mb + 15 minutes + MP3 version + mp3 + + + bsdtalk131.ogg + 15 minutes + Ogg version + ogg + + + + + + Network Stack Virtualization with Marko Zec + + Michael Dexter sent me an interview he recorded on + behalf of BSDTalk with Marko Zec at EuroBSDCon 2007. + More information on the project at + http://imunes.tel.fer.hr/virtnet/. + + http://bsdtalk.blogspot.com/2007/10/bsdtalk130-network-stack-virtualization.html + bsdtalk,interview,stack virtualization,marko zec + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk130.mp3 + 8 Mb + 16 minutes + MP3 version + mp3 + + + bsdtalk130.ogg + 16 minutes + Ogg version + ogg + + + + + + BSDCertification Update with Dru Lavigne + + Interview with Dru Lavigne. We talk about the + progress of BSDCertification.org and also her new + position with the Open Source Business Resource at + http://www.osbr.ca/. + + http://bsdtalk.blogspot.com/2007/09/bsdtalk129-bsdcertification-update-with.html + bsdtalk,interview,bsdcertification,dru lavigne + + http://cisx1.uma.maine.edu/~wbackman/bsdtalk/ + + bsdtalk129.mp3 + 10 Mb + 20 minutes >>> TRUNCATED FOR MAIL (1000 lines) <<< From pgj at FreeBSD.org Sun Jun 1 00:50:31 2008 From: pgj at FreeBSD.org (Gabor Pali) Date: Sun Jun 1 00:50:32 2008 Subject: PERFORCE change 142652 for review Message-ID: <200806010050.m510oUPl029808@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142652 Change 142652 by pgj@disznohal on 2008/06/01 00:50:12 IFC Affected files ... .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/articles/compiz-fusion/Makefile#2 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/articles/compiz-fusion/article.sgml#3 integrate Differences ... ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/articles/compiz-fusion/Makefile#2 (text+ko) ==== ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/articles/compiz-fusion/article.sgml#3 (text+ko) ==== From pgj at FreeBSD.org Sun Jun 1 00:52:33 2008 From: pgj at FreeBSD.org (Gabor Pali) Date: Sun Jun 1 00:52:35 2008 Subject: PERFORCE change 142653 for review Message-ID: <200806010052.m510qWt6030029@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142653 Change 142653 by pgj@disznohal on 2008/06/01 00:51:52 Update CVS Id tags Affected files ... .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/articles/compiz-fusion/Makefile#3 edit .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/articles/compiz-fusion/article.sgml#4 edit Differences ... ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/articles/compiz-fusion/Makefile#3 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: doc/en_US.ISO8859-1/articles/compiz-fusion/Makefile,v 1.1 2008/02/12 07:25:23 gabor Exp $ +# $FreeBSD: doc/hu_HU.ISO8859-2/articles/compiz-fusion/Makefile,v 1.1 2008/05/28 17:19:18 pgj Exp $ # # Article: Installing and using compiz-fusion ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/articles/compiz-fusion/article.sgml#4 (text+ko) ==== @@ -1,4 +1,4 @@ - + 1.231 books/handbook/config/chapter.sgml MFP4 after: 3 days Affected files ... .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/config/chapter.sgml#4 edit Differences ... ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/config/chapter.sgml#4 (text+ko) ==== @@ -6,7 +6,7 @@ + Original Revision: 1.231 --> @@ -528,13 +528,11 @@ Jóllehet minden szkriptnek teljesítenie kell minimális elvárásokat, ezek a legtöbb esetben függetlenek a &os; konkrét - verziójától. Minden szkriptnek - .sh kiterjesztéssel kell rendelkeznie - és minden szkriptnek a rendszer által - végrehajthatónak kell lennie. Ez utóbbit + verziójától. Minden szkriptnek a rendszer + által végrehajthatónak kell lennie. Ezt úgy érhetjük el, ha a chmod parancs felhasználásával - beállítjuk a 755 + beállítjuk a 555 kódú engedélyeket. Ezen felül a szkriptnek még tudnia kell kezelnie a start és stop From jb at FreeBSD.org Sun Jun 1 01:50:34 2008 From: jb at FreeBSD.org (John Birrell) Date: Sun Jun 1 01:50:48 2008 Subject: PERFORCE change 142659 for review Message-ID: <200806010150.m511oWwd036102@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142659 Change 142659 by jb@freebsd3 on 2008/06/01 01:49:51 IFdtrace Affected files ... .. //depot/projects/dtrace7/src/share/mk/bsd.own.mk#7 integrate .. //depot/projects/dtrace7/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#4 integrate .. //depot/projects/dtrace7/src/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace_impl.h#3 integrate .. //depot/projects/dtrace7/src/sys/modules/Makefile#13 integrate .. //depot/projects/dtrace7/src/sys/modules/cyclic_test/Makefile#3 integrate .. //depot/projects/dtrace7/src/sys/modules/dtrace/Makefile#5 integrate Differences ... ==== //depot/projects/dtrace7/src/share/mk/bsd.own.mk#7 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/mk/bsd.own.mk,v 1.67.2.4 2008/01/28 08:42:15 dougb Exp $ +# $FreeBSD: src/share/mk/bsd.own.mk,v 1.75 2008/05/26 10:39:52 bz Exp $ # # The include file set common variables for owner, # group, mode, and directories. Defaults are in brackets. @@ -162,8 +162,6 @@ NLSGRP?= ${SHAREGRP} NLSMODE?= ${NOBINMODE} -DEFAULT_THREAD_LIB?= libthr - INCLUDEDIR?= /usr/include # Common variables @@ -231,7 +229,6 @@ GPIB \ GROFF \ HTML \ - I4B \ INET6 \ INFO \ IPFILTER \ @@ -318,7 +315,6 @@ GPIB \ GROFF \ HTML \ - I4B \ INET6 \ INFO \ INSTALLLIB \ @@ -328,7 +324,6 @@ KVM \ LIB32 \ LIBPTHREAD \ - LIBKSE \ LIBTHR \ LOCALES \ LPR \ @@ -359,8 +354,8 @@ TOOLCHAIN \ USB \ WPA_SUPPLICANT_EAPOL \ - ZONEINFO \ - ZFS + ZFS \ + ZONEINFO .if defined(WITH_${var}) && defined(WITHOUT_${var}) .error WITH_${var} and WITHOUT_${var} can't both be set. .endif @@ -399,11 +394,10 @@ # Order is somewhat important. # .if ${MK_LIBPTHREAD} == "no" -MK_LIBKSE:= no MK_LIBTHR:= no .endif -.if ${MK_LIBKSE} == "no" && ${MK_LIBTHR} == "no" +.if ${MK_LIBTHR} == "no" MK_BIND:= no .endif ==== //depot/projects/dtrace7/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#4 (text) ==== @@ -111,6 +111,7 @@ /* FreeBSD includes: */ #if !defined(sun) +#include #include #include #include @@ -5593,7 +5594,7 @@ #if defined(sun) debug_enter(c); #else - kdb_enter_why(KDB_WHY_DTRACE, "breakpoint action"); + kdb_enter(KDB_WHY_DTRACE, "breakpoint action"); #endif } @@ -12690,6 +12691,7 @@ } } +#if defined(sun) static void dtrace_state_clean(dtrace_state_t *state) { @@ -12707,9 +12709,51 @@ dtrace_sync(); -#if !defined(sun) + now = dtrace_gethrtime(); + + if (state != dtrace_anon.dta_state && + now - state->dts_laststatus >= dtrace_deadman_user) + return; + + /* + * We must be sure that dts_alive never appears to be less than the + * value upon entry to dtrace_state_deadman(), and because we lack a + * dtrace_cas64(), we cannot store to it atomically. We thus instead + * store INT64_MAX to it, followed by a memory barrier, followed by + * the new value. This assures that dts_alive never appears to be + * less than its true value, regardless of the order in which the + * stores to the underlying storage are issued. + */ + state->dts_alive = INT64_MAX; + dtrace_membar_producer(); + state->dts_alive = now; +} +#else +static void +dtrace_state_clean(void *arg) +{ + dtrace_state_t *state = arg; + dtrace_optval_t *opt = state->dts_options; + + if (state->dts_activity == DTRACE_ACTIVITY_INACTIVE) + return; + + dtrace_dynvar_clean(&state->dts_vstate.dtvs_dynvars); + dtrace_speculation_clean(state); + + callout_reset(&state->dts_cleaner, hz * opt[DTRACEOPT_CLEANRATE] / NANOSEC, + dtrace_state_clean, state); +} + +static void +dtrace_state_deadman(void *arg) +{ + dtrace_state_t *state = arg; + hrtime_t now; + + dtrace_sync(); + dtrace_debug_output(); -#endif now = dtrace_gethrtime(); @@ -12729,7 +12773,11 @@ state->dts_alive = INT64_MAX; dtrace_membar_producer(); state->dts_alive = now; + + callout_reset(&state->dts_deadman, hz * dtrace_deadman_interval / NANOSEC, + dtrace_state_deadman, state); } +#endif static dtrace_state_t * #if defined(sun) @@ -12803,8 +12851,14 @@ */ state->dts_buffer = kmem_zalloc(bufsize, KM_SLEEP); state->dts_aggbuffer = kmem_zalloc(bufsize, KM_SLEEP); + +#if defined(sun) state->dts_cleaner = CYCLIC_NONE; state->dts_deadman = CYCLIC_NONE; +#else + callout_init(&state->dts_cleaner, CALLOUT_MPSAFE); + callout_init(&state->dts_deadman, CALLOUT_MPSAFE); +#endif state->dts_vstate.dtvs_state = state; for (i = 0; i < DTRACEOPT_MAX; i++) @@ -13086,8 +13140,10 @@ dtrace_optval_t *opt = state->dts_options, sz, nspec; dtrace_speculation_t *spec; dtrace_buffer_t *buf; +#if defined(sun) cyc_handler_t hdlr; cyc_time_t when; +#endif int rval = 0, i, bufsize = NCPU * sizeof (dtrace_buffer_t); dtrace_icookie_t cookie; @@ -13265,11 +13321,11 @@ if (opt[DTRACEOPT_CLEANRATE] > dtrace_cleanrate_max) opt[DTRACEOPT_CLEANRATE] = dtrace_cleanrate_max; + state->dts_alive = state->dts_laststatus = dtrace_gethrtime(); +#if defined(sun) hdlr.cyh_func = (cyc_func_t)dtrace_state_clean; hdlr.cyh_arg = state; -#if defined(sun) hdlr.cyh_level = CY_LOW_LEVEL; -#endif when.cyt_when = 0; when.cyt_interval = opt[DTRACEOPT_CLEANRATE]; @@ -13278,15 +13334,18 @@ hdlr.cyh_func = (cyc_func_t)dtrace_state_deadman; hdlr.cyh_arg = state; -#if defined(sun) hdlr.cyh_level = CY_LOW_LEVEL; -#endif when.cyt_when = 0; when.cyt_interval = dtrace_deadman_interval; - state->dts_alive = state->dts_laststatus = dtrace_gethrtime(); state->dts_deadman = cyclic_add(&hdlr, &when); +#else + callout_reset(&state->dts_cleaner, hz * opt[DTRACEOPT_CLEANRATE] / NANOSEC, + dtrace_state_clean, state); + callout_reset(&state->dts_deadman, hz * dtrace_deadman_interval / NANOSEC, + dtrace_state_deadman, state); +#endif state->dts_activity = DTRACE_ACTIVITY_WARMUP; @@ -13547,11 +13606,16 @@ for (i = 0; i < nspec; i++) dtrace_buffer_free(spec[i].dtsp_buffer); +#if defined(sun) if (state->dts_cleaner != CYCLIC_NONE) cyclic_remove(state->dts_cleaner); if (state->dts_deadman != CYCLIC_NONE) cyclic_remove(state->dts_deadman); +#else + callout_stop(&state->dts_cleaner); + callout_stop(&state->dts_deadman); +#endif dtrace_dstate_fini(&vstate->dtvs_dynvars); dtrace_vstate_fini(vstate); ==== //depot/projects/dtrace7/src/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace_impl.h#3 (text) ==== @@ -1137,8 +1137,13 @@ uint32_t dts_dblerrors; /* errors in ERROR probes */ uint32_t dts_reserve; /* space reserved for END */ hrtime_t dts_laststatus; /* time of last status */ +#if defined(sun) cyclic_id_t dts_cleaner; /* cleaning cyclic */ cyclic_id_t dts_deadman; /* deadman cyclic */ +#else + struct callout dts_cleaner; /* Cleaning callout. */ + struct callout dts_deadman; /* Deadman callout. */ +#endif hrtime_t dts_alive; /* time last alive */ char dts_speculates; /* boolean: has speculations */ char dts_destructive; /* boolean: has dest. actions */ ==== //depot/projects/dtrace7/src/sys/modules/Makefile#13 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/modules/Makefile,v 1.540.2.13 2008/05/09 02:20:39 weongyo Exp $ +# $FreeBSD: src/sys/modules/Makefile,v 1.571 2008/05/28 20:26:25 jhb Exp $ .include @@ -8,6 +8,7 @@ accf_data \ accf_http \ ${_acpi} \ + age \ ${_agp} \ aha \ ${_ahb} \ @@ -23,6 +24,7 @@ ${_arcmsr} \ ${_arcnet} \ ${_arl} \ + ${_asmc} \ ${_asr} \ ata \ ${_ath} \ @@ -32,7 +34,6 @@ ${_ath_rate_sample} \ aue \ ${_auxio} \ - ${_awi} \ axe \ bce \ bfe \ @@ -52,6 +53,7 @@ ${_ciss} \ ${_cm} \ ${_cmx} \ + ${_cnw} \ coda \ coda5 \ ${_coff} \ @@ -63,9 +65,10 @@ ${_cs} \ ${_ctau} \ cue \ + ${_cx} \ cxgb \ - ${_cx} \ ${_cyclic} \ + ${_cyclic_test} \ dc \ dcons \ dcons_crom \ @@ -92,9 +95,7 @@ fxp \ gem \ geom \ - ${_harp} \ hatm \ - ${_hfa} \ hifn \ hme \ ${_hptiop} \ @@ -105,7 +106,6 @@ ${_ibcs2} \ ${_ichwd} \ ${_ida} \ - ${_idt} \ ${_ie} \ if_bridge \ if_disc \ @@ -129,8 +129,8 @@ ${_ipfilter} \ ipfw \ ipfw_nat \ + ${_ipmi} \ ip_mroute_mod \ - ${_ipmi} \ ${_ips} \ ${_ipw} \ ${_ipwfw} \ @@ -139,8 +139,12 @@ ispfw \ ${_iwi} \ ${_iwifw} \ + ${_iwn} \ + ${_iwnfw} \ ${_ixgb} \ + jme \ joy \ + ${_k8temp} \ kbdmux \ krpc \ kue \ @@ -195,11 +199,11 @@ ${_nsp} \ ntfs \ ntfs_iconv \ - ${_nxge} \ nullfs \ ${_nve} \ ${_nvram} \ ${_nwfs} \ + ${_nxge} \ ${_oltr} \ ${_opensolaris} \ ${_padlock} \ @@ -226,6 +230,7 @@ ${_ray} \ rc \ rc4 \ + ${_rdma} \ re \ reiserfs \ rl \ @@ -310,11 +315,10 @@ wb \ ${_wi} \ wlan \ - wlan_scan_ap \ - wlan_scan_sta \ wlan_acl \ wlan_amrr \ wlan_ccmp \ + wlan_rssadapt \ wlan_tkip \ wlan_wep \ wlan_xauth \ @@ -336,11 +340,6 @@ _ufs= ufs .endif -# Disabled in 7.0 as netatm is not MPSAFE. -#if ${MK_ATM} != "no" -#_harp= harp -#.endif - .if ${MK_CRYPT} != "no" || defined(ALL_MODULES) .if exists(${.CURDIR}/../opencrypto) _crypto= crypto @@ -378,7 +377,6 @@ _ath_rate_amrr= ath_rate_amrr _ath_rate_onoe= ath_rate_onoe _ath_rate_sample=ath_rate_sample -_awi= awi _bktr= bktr _cardbus= cardbus _cbb= cbb @@ -389,6 +387,7 @@ _cs= cs .if ${MK_CDDL} != "no" || defined(ALL_MODULES) _cyclic= cyclic +_cyclic_test= cyclic_test .endif _digi= digi _drm= drm @@ -402,8 +401,6 @@ _exca= exca _ext2fs= ext2fs _fe= fe -# Disabled due to non-MPSAFEty in 7.0 -#_hfa= hfa _i2c= i2c _ibcs2= ibcs2 _ie= ie @@ -432,6 +429,7 @@ _pecoff= pecoff _pst= pst _ray= ray +_rdma= rdma _safe= safe _sbni= sbni _scsi_low= scsi_low @@ -444,7 +442,7 @@ _sr= sr _stg= stg _streams= streams -_tmpfs= tmpfs +_tmpfs= tmpfs _wi= wi _xe= xe .if ${MK_ZFS} != "no" || defined(ALL_MODULES) @@ -456,11 +454,13 @@ _ahb= ahb _arcmsr= arcmsr _arl= arl +_asmc= asmc _asr= asr _bios= bios _ciss= ciss _cm= cm _cmx= cmx +_cnw= cnw _coretemp= coretemp _ctau= ctau _cx= cx @@ -471,8 +471,6 @@ _hptrr= hptrr _ichwd= ichwd _ida= ida -# Disabled due to non-MPSAFEty in 7.0 -#_idt= idt _iir= iir _ipmi= ipmi _ips= ips @@ -480,7 +478,9 @@ _ipwfw= ipwfw _iwi= iwi _iwifw= iwifw -_ixgb= ixgb +_iwn= iwn +_iwnfw= iwnfw +_ixgb= ixgb _mly= mly _nfe= nfe _nve= nve @@ -510,6 +510,7 @@ _agp= agp _an= an _arcmsr= arcmsr +_asmc= asmc _ath= ath _ath_hal= ath_hal _ath_rate_amrr= ath_rate_amrr @@ -523,6 +524,7 @@ _cpufreq= cpufreq .if ${MK_CDDL} != "no" || defined(ALL_MODULES) _cyclic= cyclic +_cyclic_test= cyclic_test .endif _digi= digi _drm= drm @@ -547,7 +549,10 @@ _ips= ips _ipw= ipw _ipwfw= ipwfw -_ixgb= ixgb +_iwn= iwn +_iwnfw= iwnfw +_ixgb= ixgb +_k8temp= k8temp _linprocfs= linprocfs _linsysfs= linsysfs _linux= linux @@ -561,13 +566,14 @@ _opensolaris= opensolaris .endif _pccard= pccard +_rdma= rdma _safe= safe _scsi_low= scsi_low _smbfs= smbfs _sound= sound _speaker= speaker _sppp= sppp -_tmpfs= tmpfs +_tmpfs= tmpfs _twa= twa _wi= wi _wpi= wpi @@ -584,9 +590,9 @@ # acpi is not enabled because it is broken as a module on ia64 _aic= aic #_ar= ar not 64-bit clean +_an= an _arcnet= arcnet _asr= asr -_an= an _bktr= bktr _cardbus= cardbus _cbb= cbb @@ -599,7 +605,6 @@ _ep= ep _exca= exca _fe= fe -_hfa= hfa _igb= igb _iir= iir _mly= mly ==== //depot/projects/dtrace7/src/sys/modules/cyclic_test/Makefile#3 (text+ko) ==== @@ -1,6 +1,6 @@ # $FreeBSD# -.PATH: ${.CURDIR}/../../cddl/cyclic +.PATH: ${.CURDIR}/../../cddl/dev/cyclic KMOD= cyclic_test SRCS= cyclic_test.c ==== //depot/projects/dtrace7/src/sys/modules/dtrace/Makefile#5 (text+ko) ==== From jb at FreeBSD.org Sun Jun 1 01:51:34 2008 From: jb at FreeBSD.org (John Birrell) Date: Sun Jun 1 01:51:36 2008 Subject: PERFORCE change 142660 for review Message-ID: <200806010151.m511pXQl036176@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142660 Change 142660 by jb@freebsd3 on 2008/06/01 01:50:49 IFdtrace Affected files ... .. //depot/projects/dtrace6/src/cddl/Makefile#2 integrate .. //depot/projects/dtrace6/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#2 integrate .. //depot/projects/dtrace6/src/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace_impl.h#2 integrate Differences ... ==== //depot/projects/dtrace6/src/cddl/Makefile#2 (text+ko) ==== ==== //depot/projects/dtrace6/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#2 (text) ==== @@ -111,6 +111,7 @@ /* FreeBSD includes: */ #if !defined(sun) +#include #include #include #include @@ -11410,9 +11411,11 @@ * block pending our completion. */ for (enab = dtrace_retained; enab != NULL; enab = enab->dten_next) { +#if defined(sun) cred_t *cr = enab->dten_vstate->dtvs_state->dts_cred.dcr_cred; if (INGLOBALZONE(curproc) || getzoneid() == crgetzoneid(cr)) +#endif (void) dtrace_enabling_match(enab, NULL); } @@ -12688,6 +12691,7 @@ } } +#if defined(sun) static void dtrace_state_clean(dtrace_state_t *state) { @@ -12705,9 +12709,51 @@ dtrace_sync(); -#if !defined(sun) + now = dtrace_gethrtime(); + + if (state != dtrace_anon.dta_state && + now - state->dts_laststatus >= dtrace_deadman_user) + return; + + /* + * We must be sure that dts_alive never appears to be less than the + * value upon entry to dtrace_state_deadman(), and because we lack a + * dtrace_cas64(), we cannot store to it atomically. We thus instead + * store INT64_MAX to it, followed by a memory barrier, followed by + * the new value. This assures that dts_alive never appears to be + * less than its true value, regardless of the order in which the + * stores to the underlying storage are issued. + */ + state->dts_alive = INT64_MAX; + dtrace_membar_producer(); + state->dts_alive = now; +} +#else +static void +dtrace_state_clean(void *arg) +{ + dtrace_state_t *state = arg; + dtrace_optval_t *opt = state->dts_options; + + if (state->dts_activity == DTRACE_ACTIVITY_INACTIVE) + return; + + dtrace_dynvar_clean(&state->dts_vstate.dtvs_dynvars); + dtrace_speculation_clean(state); + + callout_reset(&state->dts_cleaner, hz * opt[DTRACEOPT_CLEANRATE] / NANOSEC, + dtrace_state_clean, state); +} + +static void +dtrace_state_deadman(void *arg) +{ + dtrace_state_t *state = arg; + hrtime_t now; + + dtrace_sync(); + dtrace_debug_output(); -#endif now = dtrace_gethrtime(); @@ -12727,7 +12773,11 @@ state->dts_alive = INT64_MAX; dtrace_membar_producer(); state->dts_alive = now; + + callout_reset(&state->dts_deadman, hz * dtrace_deadman_interval / NANOSEC, + dtrace_state_deadman, state); } +#endif static dtrace_state_t * #if defined(sun) @@ -12801,8 +12851,14 @@ */ state->dts_buffer = kmem_zalloc(bufsize, KM_SLEEP); state->dts_aggbuffer = kmem_zalloc(bufsize, KM_SLEEP); + +#if defined(sun) state->dts_cleaner = CYCLIC_NONE; state->dts_deadman = CYCLIC_NONE; +#else + callout_init(&state->dts_cleaner, CALLOUT_MPSAFE); + callout_init(&state->dts_deadman, CALLOUT_MPSAFE); +#endif state->dts_vstate.dtvs_state = state; for (i = 0; i < DTRACEOPT_MAX; i++) @@ -13084,8 +13140,10 @@ dtrace_optval_t *opt = state->dts_options, sz, nspec; dtrace_speculation_t *spec; dtrace_buffer_t *buf; +#if defined(sun) cyc_handler_t hdlr; cyc_time_t when; +#endif int rval = 0, i, bufsize = NCPU * sizeof (dtrace_buffer_t); dtrace_icookie_t cookie; @@ -13263,11 +13321,11 @@ if (opt[DTRACEOPT_CLEANRATE] > dtrace_cleanrate_max) opt[DTRACEOPT_CLEANRATE] = dtrace_cleanrate_max; + state->dts_alive = state->dts_laststatus = dtrace_gethrtime(); +#if defined(sun) hdlr.cyh_func = (cyc_func_t)dtrace_state_clean; hdlr.cyh_arg = state; -#if defined(sun) hdlr.cyh_level = CY_LOW_LEVEL; -#endif when.cyt_when = 0; when.cyt_interval = opt[DTRACEOPT_CLEANRATE]; @@ -13276,15 +13334,18 @@ hdlr.cyh_func = (cyc_func_t)dtrace_state_deadman; hdlr.cyh_arg = state; -#if defined(sun) hdlr.cyh_level = CY_LOW_LEVEL; -#endif when.cyt_when = 0; when.cyt_interval = dtrace_deadman_interval; - state->dts_alive = state->dts_laststatus = dtrace_gethrtime(); state->dts_deadman = cyclic_add(&hdlr, &when); +#else + callout_reset(&state->dts_cleaner, hz * opt[DTRACEOPT_CLEANRATE] / NANOSEC, + dtrace_state_clean, state); + callout_reset(&state->dts_deadman, hz * dtrace_deadman_interval / NANOSEC, + dtrace_state_deadman, state); +#endif state->dts_activity = DTRACE_ACTIVITY_WARMUP; @@ -13545,11 +13606,16 @@ for (i = 0; i < nspec; i++) dtrace_buffer_free(spec[i].dtsp_buffer); +#if defined(sun) if (state->dts_cleaner != CYCLIC_NONE) cyclic_remove(state->dts_cleaner); if (state->dts_deadman != CYCLIC_NONE) cyclic_remove(state->dts_deadman); +#else + callout_stop(&state->dts_cleaner); + callout_stop(&state->dts_deadman); +#endif dtrace_dstate_fini(&vstate->dtvs_dynvars); dtrace_vstate_fini(vstate); ==== //depot/projects/dtrace6/src/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace_impl.h#2 (text) ==== @@ -1137,8 +1137,13 @@ uint32_t dts_dblerrors; /* errors in ERROR probes */ uint32_t dts_reserve; /* space reserved for END */ hrtime_t dts_laststatus; /* time of last status */ +#if defined(sun) cyclic_id_t dts_cleaner; /* cleaning cyclic */ cyclic_id_t dts_deadman; /* deadman cyclic */ +#else + struct callout dts_cleaner; /* Cleaning callout. */ + struct callout dts_deadman; /* Deadman callout. */ +#endif hrtime_t dts_alive; /* time last alive */ char dts_speculates; /* boolean: has speculations */ char dts_destructive; /* boolean: has dest. actions */ From julian at FreeBSD.org Sun Jun 1 06:50:39 2008 From: julian at FreeBSD.org (Julian Elischer) Date: Sun Jun 1 06:50:42 2008 Subject: PERFORCE change 142665 for review Message-ID: <200806010650.m516ocNL074317@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142665 Change 142665 by julian@julian_trafmon1 on 2008/06/01 06:49:56 Make things compile if ipfw nat is included. This doesn't mean it works. Affected files ... .. //depot/projects/vimage/src/sys/netinet/ip_fw.h#11 edit .. //depot/projects/vimage/src/sys/netinet/ip_fw2.c#33 edit .. //depot/projects/vimage/src/sys/netinet/ip_fw_nat.c#2 edit Differences ... ==== //depot/projects/vimage/src/sys/netinet/ip_fw.h#11 (text+ko) ==== @@ -647,6 +647,7 @@ int ipfw_init(void); void ipfw_destroy(void); +void ipfw_nat_destroy(void); typedef int ip_fw_ctl_t(struct sockopt *); extern ip_fw_ctl_t *ip_fw_ctl_ptr; @@ -771,6 +772,7 @@ #define V_norule_counter VNET_IPFW(norule_counter) #define V_ipfw_timeout VNET_IPFW(ipfw_timeout) +#define V_ifaddr_event_tag VNET_IPFW(ifaddr_event_tag) #endif /* _KERNEL */ #endif /* _IPFW2_H */ ==== //depot/projects/vimage/src/sys/netinet/ip_fw2.c#33 (text+ko) ==== @@ -4703,7 +4703,7 @@ #endif #ifdef IPFIREWALL_NAT - EVENTHANDLER_DEREGISTER(ifaddr_event, ifaddr_event_tag); + ipfw_nat_destroy(); #endif IPFW_DYN_LOCK_DESTROY(); uma_zdestroy(ipfw_dyn_rule_zone); ==== //depot/projects/vimage/src/sys/netinet/ip_fw_nat.c#2 (text+ko) ==== @@ -24,6 +24,7 @@ * SUCH DAMAGE. */ +#include "opt_vimage.h" #include __FBSDID("$FreeBSD: src/sys/netinet/ip_fw_nat.c,v 1.2 2008/03/03 22:32:01 piso Exp $"); @@ -45,6 +46,7 @@ #include #include #include +#include #include #include @@ -52,6 +54,7 @@ #define IPFW_INTERNAL /* Access to protected data structures in ip_fw.h. */ #include +#include #include #include #include @@ -63,12 +66,15 @@ #include #include #include +#include #include /* XXX for in_cksum */ MALLOC_DECLARE(M_IPFW); -extern struct ip_fw_chain layer3_chain; +#ifndef VIMAGE +extern struct ip_fw_chain V_layer3_chain; +#endif static eventhandler_tag ifaddr_event_tag; @@ -81,12 +87,13 @@ static void ifaddr_change(void *arg __unused, struct ifnet *ifp) { + INIT_VNET_IPFW(curvnet); struct cfg_nat *ptr; struct ifaddr *ifa; - IPFW_WLOCK(&layer3_chain); + IPFW_WLOCK(&V_layer3_chain); /* Check every nat entry... */ - LIST_FOREACH(ptr, &layer3_chain.nat, _next) { + LIST_FOREACH(ptr, &V_layer3_chain.nat, _next) { /* ...using nic 'ifp->if_xname' as dynamic alias address. */ if (strncmp(ptr->if_name, ifp->if_xname, IF_NAMESIZE) == 0) { mtx_lock(&ifp->if_addr_mtx); @@ -102,16 +109,17 @@ mtx_unlock(&ifp->if_addr_mtx); } } - IPFW_WUNLOCK(&layer3_chain); + IPFW_WUNLOCK(&V_layer3_chain); } static void flush_nat_ptrs(const int i) { + INIT_VNET_IPFW(curvnet); struct ip_fw *rule; - IPFW_WLOCK_ASSERT(&layer3_chain); - for (rule = layer3_chain.rules; rule; rule = rule->next) { + IPFW_WLOCK_ASSERT(&V_layer3_chain); + for (rule = V_layer3_chain.rules; rule; rule = rule->next) { ipfw_insn_nat *cmd = (ipfw_insn_nat *)ACTION_PTR(rule); if (cmd->o.opcode != O_NAT) continue; @@ -121,12 +129,12 @@ } #define HOOK_NAT(b, p) do { \ - IPFW_WLOCK_ASSERT(&layer3_chain); \ + IPFW_WLOCK_ASSERT(&V_layer3_chain); \ LIST_INSERT_HEAD(b, p, _next); \ } while (0) #define UNHOOK_NAT(p) do { \ - IPFW_WLOCK_ASSERT(&layer3_chain); \ + IPFW_WLOCK_ASSERT(&V_layer3_chain); \ LIST_REMOVE(p, _next); \ } while (0) @@ -402,6 +410,7 @@ static int ipfw_nat_cfg(struct sockopt *sopt) { + INIT_VNET_IPFW(curvnet); struct cfg_nat *ptr, *ser_n; char *buf; @@ -413,20 +422,20 @@ /* * Find/create nat rule. */ - IPFW_WLOCK(&layer3_chain); - LOOKUP_NAT(layer3_chain, ser_n->id, ptr); + IPFW_WLOCK(&V_layer3_chain); + LOOKUP_NAT(V_layer3_chain, ser_n->id, ptr); if (ptr == NULL) { /* New rule: allocate and init new instance. */ ptr = malloc(sizeof(struct cfg_nat), M_IPFW, M_NOWAIT | M_ZERO); if (ptr == NULL) { - IPFW_WUNLOCK(&layer3_chain); + IPFW_WUNLOCK(&V_layer3_chain); free(buf, M_IPFW); return (ENOSPC); } ptr->lib = LibAliasInit(NULL); if (ptr->lib == NULL) { - IPFW_WUNLOCK(&layer3_chain); + IPFW_WUNLOCK(&V_layer3_chain); free(ptr, M_IPFW); free(buf, M_IPFW); return (EINVAL); @@ -437,7 +446,7 @@ UNHOOK_NAT(ptr); flush_nat_ptrs(ser_n->id); } - IPFW_WUNLOCK(&layer3_chain); + IPFW_WUNLOCK(&V_layer3_chain); /* * Basic nat configuration. @@ -463,28 +472,29 @@ /* Add new entries. */ add_redir_spool_cfg(&buf[(sizeof(struct cfg_nat))], ptr); free(buf, M_IPFW); - IPFW_WLOCK(&layer3_chain); - HOOK_NAT(&layer3_chain.nat, ptr); - IPFW_WUNLOCK(&layer3_chain); + IPFW_WLOCK(&V_layer3_chain); + HOOK_NAT(&V_layer3_chain.nat, ptr); + IPFW_WUNLOCK(&V_layer3_chain); return (0); } static int ipfw_nat_del(struct sockopt *sopt) { + INIT_VNET_IPFW(curvnet); struct cfg_nat *ptr; int i; sooptcopyin(sopt, &i, sizeof i, sizeof i); - IPFW_WLOCK(&layer3_chain); - LOOKUP_NAT(layer3_chain, i, ptr); + IPFW_WLOCK(&V_layer3_chain); + LOOKUP_NAT(V_layer3_chain, i, ptr); if (ptr == NULL) { - IPFW_WUNLOCK(&layer3_chain); + IPFW_WUNLOCK(&V_layer3_chain); return (EINVAL); } UNHOOK_NAT(ptr); flush_nat_ptrs(i); - IPFW_WUNLOCK(&layer3_chain); + IPFW_WUNLOCK(&V_layer3_chain); del_redir_spool_cfg(ptr, &ptr->redir_chain); LibAliasUninit(ptr->lib); free(ptr, M_IPFW); @@ -494,6 +504,7 @@ static int ipfw_nat_get_cfg(struct sockopt *sopt) { + INIT_VNET_IPFW(curvnet); uint8_t *data; struct cfg_nat *n; struct cfg_redir *r; @@ -504,9 +515,9 @@ off = sizeof(nat_cnt); data = malloc(NAT_BUF_LEN, M_IPFW, M_WAITOK | M_ZERO); - IPFW_RLOCK(&layer3_chain); + IPFW_RLOCK(&V_layer3_chain); /* Serialize all the data. */ - LIST_FOREACH(n, &layer3_chain.nat, _next) { + LIST_FOREACH(n, &V_layer3_chain.nat, _next) { nat_cnt++; if (off + SOF_NAT < NAT_BUF_LEN) { bcopy(n, &data[off], SOF_NAT); @@ -533,12 +544,12 @@ goto nospace; } bcopy(&nat_cnt, data, sizeof(nat_cnt)); - IPFW_RUNLOCK(&layer3_chain); + IPFW_RUNLOCK(&V_layer3_chain); sooptcopyout(sopt, data, NAT_BUF_LEN); free(data, M_IPFW); return (0); nospace: - IPFW_RUNLOCK(&layer3_chain); + IPFW_RUNLOCK(&V_layer3_chain); printf("serialized data buffer not big enough:" "please increase NAT_BUF_LEN\n"); free(data, M_IPFW); @@ -548,6 +559,7 @@ static int ipfw_nat_get_log(struct sockopt *sopt) { + INIT_VNET_IPFW(curvnet); uint8_t *data; struct cfg_nat *ptr; int i, size, cnt, sof; @@ -556,16 +568,16 @@ sof = LIBALIAS_BUF_SIZE; cnt = 0; - IPFW_RLOCK(&layer3_chain); + IPFW_RLOCK(&V_layer3_chain); size = i = 0; - LIST_FOREACH(ptr, &layer3_chain.nat, _next) { + LIST_FOREACH(ptr, &V_layer3_chain.nat, _next) { if (ptr->lib->logDesc == NULL) continue; cnt++; size = cnt * (sof + sizeof(int)); data = realloc(data, size, M_IPFW, M_NOWAIT | M_ZERO); if (data == NULL) { - IPFW_RUNLOCK(&layer3_chain); + IPFW_RUNLOCK(&V_layer3_chain); return (ENOSPC); } bcopy(&ptr->id, &data[i], sizeof(int)); @@ -573,7 +585,7 @@ bcopy(ptr->lib->logDesc, &data[i], sof); i += sof; } - IPFW_RUNLOCK(&layer3_chain); + IPFW_RUNLOCK(&V_layer3_chain); sooptcopyout(sopt, data, size); free(data, M_IPFW); return(0); @@ -582,27 +594,29 @@ static void ipfw_nat_init(void) { + INIT_VNET_IPFW(curvnet); - IPFW_WLOCK(&layer3_chain); + IPFW_WLOCK(&V_layer3_chain); /* init ipfw hooks */ ipfw_nat_ptr = ipfw_nat; ipfw_nat_cfg_ptr = ipfw_nat_cfg; ipfw_nat_del_ptr = ipfw_nat_del; ipfw_nat_get_cfg_ptr = ipfw_nat_get_cfg; ipfw_nat_get_log_ptr = ipfw_nat_get_log; - IPFW_WUNLOCK(&layer3_chain); + IPFW_WUNLOCK(&V_layer3_chain); ifaddr_event_tag = EVENTHANDLER_REGISTER(ifaddr_event, ifaddr_change, NULL, EVENTHANDLER_PRI_ANY); } -static void +void ipfw_nat_destroy(void) { + INIT_VNET_IPFW(curvnet); struct ip_fw *rule; struct cfg_nat *ptr, *ptr_temp; - IPFW_WLOCK(&layer3_chain); - LIST_FOREACH_SAFE(ptr, &layer3_chain.nat, _next, ptr_temp) { + IPFW_WLOCK(&V_layer3_chain); + LIST_FOREACH_SAFE(ptr, &V_layer3_chain.nat, _next, ptr_temp) { LIST_REMOVE(ptr, _next); del_redir_spool_cfg(ptr, &ptr->redir_chain); LibAliasUninit(ptr->lib); @@ -610,14 +624,14 @@ } EVENTHANDLER_DEREGISTER(ifaddr_event, ifaddr_event_tag); /* flush all nat ptrs */ - for (rule = layer3_chain.rules; rule; rule = rule->next) { + for (rule = V_layer3_chain.rules; rule; rule = rule->next) { ipfw_insn_nat *cmd = (ipfw_insn_nat *)ACTION_PTR(rule); if (cmd->o.opcode == O_NAT) cmd->nat = NULL; } /* deregister ipfw_nat */ ipfw_nat_ptr = NULL; - IPFW_WUNLOCK(&layer3_chain); + IPFW_WUNLOCK(&V_layer3_chain); } static int From julian at FreeBSD.org Sun Jun 1 06:51:40 2008 From: julian at FreeBSD.org (Julian Elischer) Date: Sun Jun 1 06:51:42 2008 Subject: PERFORCE change 142666 for review Message-ID: <200806010651.m516pdoo074387@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142666 Change 142666 by julian@julian_trafmon1 on 2008/06/01 06:51:12 have a go at making ipfw compile correctly Affected files ... .. //depot/projects/vimage/src/sys/i386/conf/VIMAGE#12 edit Differences ... ==== //depot/projects/vimage/src/sys/i386/conf/VIMAGE#12 (text+ko) ==== @@ -8,6 +8,13 @@ ident VIMAGE options VIMAGE +options IPFIREWALL +options IPFIREWALL_VERBOSE +options IPFIREWALL_VERBOSE_LIMIT=100 +options IPFIREWALL_DEFAULT_TO_ACCEPT +options IPFIREWALL_FORWARD +options IPFIREWALL_NAT +options LIBALIAS # # Some kernel subsystems and functions don't yet compile with VIMAGE. Remove From andre at FreeBSD.org Sun Jun 1 11:14:16 2008 From: andre at FreeBSD.org (Andre Oppermann) Date: Sun Jun 1 11:14:18 2008 Subject: PERFORCE change 142687 for review Message-ID: <200806011114.m51BEGsA015233@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142687 Change 142687 by andre@andre_flirtbox on 2008/06/01 11:13:53 Make TCPS_HAVERCVDFIN() do what its name suggests and its consumers actually depend on. Affected files ... .. //depot/projects/tcp_new/netinet/tcp_fsm.h#2 edit Differences ... ==== //depot/projects/tcp_new/netinet/tcp_fsm.h#2 (text+ko) ==== @@ -73,7 +73,7 @@ #define TCPS_HAVERCVDSYN(s) ((s) >= TCPS_SYN_RECEIVED) #define TCPS_HAVEESTABLISHED(s) ((s) >= TCPS_ESTABLISHED) -#define TCPS_HAVERCVDFIN(s) ((s) >= TCPS_TIME_WAIT) +#define TCPS_HAVERCVDFIN(s) ((s) == TCPS_CLOSE_WAIT || (s) >= TCPS_CLOSING) #ifdef TCPOUTFLAGS /* From remko at FreeBSD.org Sun Jun 1 14:31:48 2008 From: remko at FreeBSD.org (Remko Lodder) Date: Sun Jun 1 14:31:51 2008 Subject: PERFORCE change 142700 for review Message-ID: <200806011431.m51EVl5S049457@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142700 Change 142700 by remko@remko_nakur on 2008/06/01 14:31:37 Bring in the latest work by Rene Ladan (Thanks!) Affected files ... .. //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml#3 edit Differences ... ==== //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml#3 (text+ko) ==== @@ -3,7 +3,7 @@ $FreeBSD$ $FreeBSDnl: doc/nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml,v 1.12 2006/01/01 13:09:23 siebrand Exp $ - Gebaseerd op: 1.131 + Gebaseerd op: 1.137 --> @@ -12,14 +12,14 @@ Bill Lloyd - Original work by + Origineel werk van Jim Mock - Rewritten by + Hershreven door @@ -28,176 +28,185 @@ Tom Leeters Vertaald door - - + + + + - Frederic - Van Assche - - + Frederic + Van Assche + Vertaling voortgezet door + + + + - Remko - Lodder + René + Ladan + Vertaling voortgezet door + - Electronische Mail + Electronische mail Overzicht email - Electronische Mail, beter bekend als email, is vandaag - de dag een van de meest gebruikte vormen van communicatie. Dit hoofdstuk - zal een algemene inleiding in het opzetten van een mailserver op &os; zijn, - alsmede een introductie in het verzenden en ontvangen van email op &os;; - echter zal het geen complete referentie zijn en zullen veel belangrijke - overwegingen buiten beschouwing worden gelaten. Voor een meer complete - behandeling wordt de lezer gewezen op de vele excellente boeken welke + Electronische Mail, beter bekend als email, is + tegenwoordig een van de meest gebruikte vormen van communicatie. + Dit hoofdstuk geeft een algemene inleiding in het opzetten van een + mailserver op &os;, alsmede een introductie in het verzenden en + ontvangen van email op &os;; het is echter geen complete + referentie en veel belangrijke overwegingen zullen buiten + beschouwing worden gelaten. Voor een completere behandeling + wordt de lezer gewezen op de vele uitstekende boeken welke worden vermeld in . - In dit hoofdstuk leer je: + In dit hoofdstuk wordt behandeld: - Welke software (componenten) gebruikt wordt(/en) bij het verzenden - en ontvangen van email. + Welke software (componenten) gebruikt wordt(en) bij het + verzenden en ontvangen van email. - Waar algemene sendmail configuratie - bestanden worden opgeslagen in FreeBSD. + Waar algemene sendmail + instellingsbestanden worden opgeslagen in &os;. - Het verschil tussen postbussen op lokale en netwerk pc's. + Het verschil tussen lokale en postbussen op-afstand. + - Hoe je kunt tegen gaan dat spammers jouw mailserver illegaal - gebruiken als "relay". + Hoe spammers te verhinderen dat ze de mailserver illegaal + gebruiken als "relay". - Hoe je een andere MTA (Mail Transfer Agent) kunt installeren en configureren op je systeem, - om sendmail te vervangen. + Hoe een andere MTA (Mail Transfer Agent) te installeren en + configureren op het systeem, ter vervanging van + sendmail. - Hoe je veel voorkomende problemen met mail servers kunt oplossen. + Hoe veel voorkomende problemen met mail servers worden + opgelost. - Hoe je SMTP met UUCP kunt gebruiken. + Hoe SMTP met UUCP te gebruiken. - Hoe je een systeem kunt instellen om alleen mail te verzenden. + Hoe een systeem in te stellen om alleen mail te verzenden. + - Hoe je email kunt gebruiken met een inbel verbinding. + Hoe email te gebruiken met een inbelverbinding. - Hoe je SMTP Authenticatie moet instellen voor verhoogde beveiliging. + Hoe SMTP Authenticatie in te stellen voor verhoogde + beveiliging. - Hoe een Mail User Agent zoals mutt te installeren - om email te verzenden en ontvangen. + Hoe een Mail User Agent zoals mutt + te installeren om email te verzenden en te + ontvangen. - Hoe je mail kunt binnenhalen van een externe POP - of IMAP server. + Hoe mail te downloaden van een POP of + IMAP server op afstand. - Hoe je automatisch filters en sorteer regels op inkomende email - kunt toepassen. + Hoe automatisch filters en sorteerregels op inkomende + email toe te passen. - Voor je verder gaat met het lezen van dit hoofdstuk, dien je eerst: + Voordat dit hoofdstuk gelezen wordt, dient: - Je netwerkconnecties correct opgezet te hebben - (). + De netwerkverbindingen correct ingesteld te zijn (). - De juiste DNS informatie ingesteld hebben voor je mail server - (). + De juiste DNS-informatie ingesteld te zijn voor de + mailserver (). - Te weten hoe je "third-party" software moet installeren - (). + Bekend te zijn hoe software van derde partijen te + installeren (). - Gebruik maken van Electronische Mail - + Gebruik maken van electronische mail POP - IMAP - DNS - Er zijn vijf belangrijke componenten betrokken bij het uitwisselen van e-mail. - Dit zijn: het gebruikers programma, - de server service, - DNS, - een mailbestand, lokaal of extern, en natuurlijk, - de mail server zelf. + Er zijn vijf belangrijke componenten betrokken bij het + uitwisselen van e-mail. Dit zijn: het + gebruikersprogramma, de + serverdaemon, DNS, + een mailbox, lokaal of op afstand + , en natuurlijk de mailhost zelf + . + - Het gebruikers programma + Het gebruikersprogramma - Dit omvat programma's zoals - mutt, - pine, elm, - and mail, en GUI programma's zoals - balsa, - xfmail om er maar een paar te noemen, en een - iets meer geavanceerder zoals een Web Browser. Deze - programma's doen niets anders dan de mail bezorgen bij de lokale - mailserver, door deze af te leveren - of bij een van de beschikbare server - services, of via TCP. - + Dit omvat opdrachtregelprogramma's zoals mutt + , pine, + elm, en mail, en GUI + programma's zoals balsa, + xfmail, en iets geavanceerders + zoals een webbrowser. Deze programma's doen niets + anders dan de mail bezorgen bij de lokale mailhost, door deze + af te leveren of bij een van de beschikbare serverdiensten, of via TCP + . + - Mailserver Server Service - + Mailhost Server Daemon - mail server daemons - sendmail + mailserver daemons + sendmail - - mail server daemons - postfix + mailserver daemons + postfix - - mail server daemons - qmail + mailserver daemons + qmail - - mail server daemons - exim + mailserver daemons + exim - &os; wordt standaard geleverd metsendmail - , maar ondersteund meerdere andere mail server services, - zoals bijvoorbeeld: + &os; wordt standaard geleverd metsendmail + , maar ondersteund meerdere andere mailserver + daemons, zoals: @@ -213,274 +222,295 @@ - De server service heeft meestal twee functies—het is verantwoordelijk - voor het ontvangen van inkomende mail en het bezorgen van uitgaande mail. Het is - niet verantwoordelijk voor het verzamelen/collecteren van mail - door het gebruik van protocollen zoals POP of IMAP - om je mail te lezen, noch dat het toestaat een connectie te maken met lokale - mbox of Maildir postbussen. Het is mogelijk dat je daarvoor een - extra service voor nodig hebt. + De server daemon heeft meestal twee functies—het is + verantwoordelijk voor het ontvangen van inkomende mail en het + bezorgen van uitgaande mail. Het is niet + verantwoordelijk voor het verzamelen van mail door gebruik te + maken van protocollen zoals POP of + IMAP om mail te lezen, noch staat het toe om + een verbinding te maken met een lokale mbox + of Maildir postbus. Het is mogelijk dat daarvoor een extra + daemon voor nodig is. Oudere versies van sendmail - hebben serieuze beveiligings lekken welke kunnen resulteren in een - situatie waarbij een aanvaller zich lokale of toegang van afstand - tot je machine kan verkijgen. - Ben er zeker van dat je een huidige actuele versie draait om deze problemen - te voorkomen. Optioneel kun je een alternatieve - MTA installeren via de&os; - Portscollectie. + hebben serieuze beveiligingslekken welke kunnen leiden tot een + situatie waarbij een aanvaller lokale of toegang van afstand + tot de machine kan verkijgen. Draai een actuele versie om + deze problemen te voorkomen. Optioneel kan een alternatieve + MTA van de &os; + Portscollectie geïnstalleerd worden. Email en DNS - Het Domain Naam Systeem (DNS) en de service - named spelen een grote rol in het bezorgen van - email. Om het mogelijk te maken e-mail te bezorgen van jouw lokatie naar een andere, - zal de server service de remote lokatie opzoeken in het DNS om zo de host te bepalen - die de e-mail in ontvangst zal nemen voor de bestemming. Dit proces - gebeurt ook als e-mail verzonden wordt vanaf een andere host naar jouw mailserver. + Het Domein Naam Systeem (DNS) en de daemon named + spelen een grote rol in het bezorgen van email. Om + het mogelijk te maken e-mail van de deze lokatie naar een andere + lokatie te bezorgen, zal de serverdaemon de andere lokatie + opzoeken in het DNS om zo de host te bepalen die de e-mail voor + de bestemming in ontvangst zal nemen. Dit gebeurt ook als + e-mail verzonden wordt vanaf een andere host naar de lokale + mailserver. - MX record + + MX record + - DNS is verantwoordelijk voor het koppelen van - hostnamen aan IP adressen, en voor het opslaan van specifieke informatie - voor het bezorgen van mail, beter bekend als MX regels. De MX (Mail - eXchanger) regel specificeert welke host, of meerdere, mail zullen ontvangen - voor een specifiek domein. Als je geen MX regel hebt voor je hostnaam of domein - , dan zal de mail direct bij je host worden afgeleverd, mits je een A regel hebt - die jouw hostnaam aan je IP adres koppelt. + DNS is verantwoordelijk voor het koppelen + van hostnamen aan IP-adressen, en voor het opslaan van + specifieke informatie voor het bezorgen van mail, bekend als + MX-regels. De MX-regel (Mail eXchanger) specificeert welke + host(s) mail zullen ontvangen voor een specifiek domein. Als er + geen MX-regel is voor deze hostnaam of dit domein, dan zal de + mail direct bij de host worden afgeleverd, mits er een A-regel + is die deze hostnaam aan dit IP-adres koppelt. - Je kunt de MX regels van een willekeurig domein bekijken, door gebruik te maken - van het &man.host.1; commando, zoals je hieronder kunt zien in het voorbeeld: + De MX-regels van een willekeurig domein kunnen wordeni + bekeken door gebruik te maken van het commando &man.host.1;, + zoals te zien is in het onderstaande voorbeeld: &prompt.user; host -t mx FreeBSD.org FreeBSD.org mail is handled (pri=10) by mx1.FreeBSD.org - Mail Ontvangen - + Mail ontvangen - email - receiving + email + ontvangen - Mail ontvangen voor je domein wordt door de mail host gedaan. Deze - zal alle mail verzonden aan jouw domein collecteren en deze opslaan in of - een mbox (de standaard manier om mail op te slaan) of in Maildir formaat, - afhankelijk van je configuratie. - Eens mail opgeslagen is, kan deze lokaal worden gelezen door programma's - zoals &man.mail.1; of mutt, of vanaf afstand - bekeken en verzameld middels protocollen zoals - POP of IMAP. - Dit betekend, dat je als je alleen lokaal mail wilt lezen, - je niet nog een POP of IMAP server - hoeft te installeren. + De mailhost verzorgt het ontvangen van mail voor het domein. + Deze zal alle mail verzonden aan het domein verzamelen en deze + afhankelijk van de configuratie opslaan in òf + mbox (de standaardmanier om mail op te slaan) + òf in Maildir-formaat. Wanneer de mail eenmaal is + opgeslagen, kan het òf lokaal gelezen worden door + toepassingen als &man.mail.1; of mutt + , of op afstand bekeken en verzameld worden middels protocollen + als POP of IMAP. + Dit betekent, dat als mail alleen lokaal wordt gelezen, er geen + POP- of IMAP-server + geïnstalleerd hoeft te worden. - Toegang vanaf afstand tot je postbus krijgen door - gebruik te maken van <acronym>POP</acronym> en <acronym>IMAP</acronym> + Op afstand toegang tot de postbus krijgen door gebruik te + maken van <acronym>POP</acronym> en <acronym>IMAP</acronym> + - POP + POP + IMAP + Om op afstand toegang te krijgen tot postbussen is het nodig toegang + te hebben tot een POP- of IMAP + -server. Deze protocollen stellen gebruikers in + staat hun postbus gemakkelijk op afstand te benaderen. Hoewel + zowel POP als IMAP + gebruikers in staat stellen op afstand een postbus te bereiken + , biedt IMAP veel voordelen, waaronder: + - IMAP + + + IMAP kan berichten zowel op de + server op afstand opslaan als ze ophalen. + - Om vanaf afstand toegang te krijgen tot postbussen is het nodig toegang - te hebben tot een POP of IMAP - server. Deze protocollen stellen een gebruiker in staat zijn/haar - postbus gemakkelijk te benaderen vanaf afstand. Hoewel - POP en IMAP beide gebruikers in - staat stellen vanaf afstand een postbus te bereiken biedt, - IMAP veel voordelen, waaronder: + + IMAP ondersteunt gelijktijdig + actualiseren. + - - - IMAP kan berichten zowel op de server - bewaren als lokaal opslaan. - + + IMAP kan uitstekend worden gebruikt + over langzame verbindingen omdat het gebruikers in staat + stelt de structuur van berichten te bekijken zonder deze + binnen te halen; het kan ook worden gebruikt om te zoeken + op de server om zo de gegevensoverdracht tussen client en + server te minimaliseren. + + - - IMAP ondersteund gelijktijdig actualiseren. - + Om een POP- of IMAP- + server te installeren, zijn de volgende stappen nodig: - - IMAP kan uitstekend worden toegepast over - lage-snelheid verbindingen omdat het gebruikers in staat stelt - allereerst berichten te bekijken voor deze binnen te halen; het kan ook - taken zoals zoeken op de server uitvoeren om zo de gegevens - transmissie tussen client en server te beperken servers. - - - - - Om een POP of IMAP server te - installeren, zijn de volgende stappen benodigd: - - + - Kies een IMAP of - POP server die het beste aan jouw eisen voldoet. - De volgende POP en IMAP - servers zijn zeer bekend en dienen als een paar - goede voorbeelden: + Kies een IMAP- of POP + -server die het beste aan de eisen voldoet. + De volgende POP- en IMAP + -servers zijn zeer bekend en zijn goede + voorbeelden: - + qpopper; - + - + teapop; - + - + imap-uw; - + - + courier-imap; - + - - - Installeer de POP of - IMAP service van je keuze vanuit de - Portscollectie. + + Installeer de gewenste POP- of + IMAP-daeomon vanuit de Portscollectie. + - Indien nodig, wijzig /etc/inetd.conf - om de POP of - IMAP server te laden. + Wijzig indien nodig /etc/inetd.conf + om de POP- of IMAP + - server te laden. - + Let er wel op dat zowel POP en - IMAP informatie, waaronder - gebruikersnaam en wachtwoord combinaties oneversleuteld versturen. - Dit betekend, dat wanneer je deze uitwisseling van gegevens over - deze protocollenwilt versleutelen, je het gebruik van tunnels via - &man.ssh.1; kunt overwegen. Het tunnelen van sessies wordt - beschreven in . - + IMAP informatie, waaronder gegevens over + gebruikersnaam en wachtwoord, oneversleuteld versturen. Dit + betekent, dat wanneer het gewenst is dat de uitwisseling van + gegevens over deze protocollen versleuteld is, het + verstandig is om te overwegen de sessies over &man.ssh.1; + te tunnelen. Het tunnelen van sessies wordt beschreven in + . + - Toegang tot lokale postbussen + Toegang tot lokale postbussen - Postbussen kunnen lokaal benaderd worden door direct op de server - waarop de postbus wordt bewaard MUAs te gebruiken - Dit kan gedaan worden door programma's zoals mutt - of &man.mail.1; te gebruiken. + Postbussen kunnen lokaal benaderd worden door direct op de + server waarop de postbus wordt bewaard MUAs + te gebruiken. Dit kan gedaan worden door programma's zoals + mutt of &man.mail.1; te gebruiken. - De mail server + De mailhost + mailhost - mail host - - De mail server is de server benaming welke verantwoordelijk is - for het afleveren en ontvangen van mail voor jouw server en - mogelijk voor je netwerk. + De mailhost is de naam van de server welke verantwoordelijk + is voor het afleveren en ontvangen van mail voor de server en + mogelijk voor het netwerk. - - Christopher - Shumway - Contributed by - + + Christopher + Shumway + Bijgedragen door + + <application>sendmail</application> instellen - <application>sendmail</application> configuratie - - sendmail + + sendmail + &man.sendmail.8; is de standaard Mail Transfer Agent (MTA) in - FreeBSD. sendmail's taak is het accepteren - van mail van gebruikersprogramma's (MUA) en deze - te bezorgen bij de juiste mailer zoals gedefinieerd in het - betreffende configuratie bestand. - sendmail kan ook netwerk connecties + &os;. sendmail's taak is het + accepteren van mail van gebruikersprogramma's (MUA + ) en deze te bezorgen bij de juiste mailer zoals + gedefinieerd in het betreffende configuratiebestand. + sendmail kan ook netwerkverbindingen accepteren en mail in lokale postbussen afleveren of bezorgen bij een ander programma. sendmail gebruikt de volgende - configuratie bestanden: + configuratiebestanden: - /etc/mail/access - - /etc/mail/aliases - - /etc/mail/local-host-names - - /etc/mail/mailer.conf - - /etc/mail/mailertable - - /etc/mail/sendmail.cf - - /etc/mail/virtusertable - + + /etc/mail/access + + + /etc/mail/aliases + + + /etc/mail/local-host-names + + + /etc/mail/mailer.conf + + + /etc/mail/mailertable + + + /etc/mail/sendmail.cf + + + /etc/mail/virtusertable + Bestandsnaam - Functie - /etc/mail/access - - sendmail toegangs database - bestand + + /etc/mail/access + + bestand met de toegangsdatabase van + sendmail - /etc/mail/aliases - - Postbus aliases + + /etc/mail/aliases + + Aliases voor postbussen - /etc/mail/local-host-names - - Lijst van servers waarvoor sendmail - mail accepteert - + + /etc/mail/local-host-names + + Lijst van servers waarvoor sendmail + mail accepteert + - /etc/mail/mailer.conf - - Mailer programma configuratie + + /etc/mail/mailer.conf + + Configuratie voor het mailerprogramma - /etc/mail/mailertable - - Mailer bezorgings tabel + + /etc/mail/mailertable + + Aflevertabel voor de mailer - /etc/mail/sendmail.cf - - sendmail hoofd - configuratie bestand + + /etc/mail/sendmail.cf + + Hoofdconfiguratiebestand van sendmail + - /etc/mail/virtusertable - - Virtuele gebruikers en domein(en) tabellen + + /etc/mail/virtusertable + + Tabellen voor virtuele gebruikers en domeinen @@ -489,342 +519,314 @@ <filename>/etc/mail/access</filename> - De toegangs database definieert welke server(s) of IP adressen - toegang hebben tot de lokale mail server en wat voor soort toegang - ze hebben. Servers kunnen in de lijst voorkomen met een , - , of simpelweg worden doorgevoerd - naar de foutafhandelings procedure van sendmail - met een bepaalde mail fout. - Servers welke vermeld staan met een , welke de standaard is - kunnen mail versturen naar deze server, zolang de eindbestemming - van de mail de lokale machine is. Servers welke vermeld staan met een - worden niet toegestaan om een connectie op te bouwen. - Servers met een vermelding wordt toegestaan om - via deze server naar elke bestemming te mailen. + De toegangsdatabase definieert welke host(s) of IP-adressen + toegang hebben tot de lokale mailserver en wat voor soort toegang + ze hebben. Hosts kunnen in de lijst als , + , of staan, of + worden doorgevoerd naar de foutafhandelingsprocedure van + sendmail met een bepaalde mailerfout. + Hosts welke vermeld staan als , wat de + standaard is, kunnen mail versturen naar deze host zolang de + eindbestemming van de mail de lokale machine is. Hosts welke + vermeld staan als worden voor alle + verbindingen geweigerd. Hosts met een + vermelding wordt toegestaan om via deze server mail naar elke + bestemming te sturen. - - Configureren van de <application>sendmail</application> - Toegangs Database + + Configureren van de <application>sendmail</application> + toegangsdatabase - cyberspammer.com 550 We do not accept mail from spammers -FREE.STEALTH.MAILER@ 550 We do not accept mail from spammers -another.source.of.spam REJECT -okay.cyberspammer.com OK -128.32 RELAY - + cyberspammer.com 550 We accepteren geen mail van spammers +FREE.STEALTH.MAILER@ 550 We accepteren geen mail van spammers +another.source.of.spam REJECT +okay.cyberspammer.com OK +128.32 RELAY + - In dit voorbeeld staan vijf vermeldingen. Mail afzenders die - overeenkomen met de linkerhelft van de tabel worden beinvloed door de actie - die vermeld staan aan de rechterzijde van de tabel. De eerste 2 voorbeelden - geven een foutcode af aan sendmail's foutafhandeling. - Het bericht wordt bij de externe host bekend gemaakt wanneer een e-mail voldoet aan - de linker kolom van de tabel. De volgende regel weigert e-mail van een specifieke - host op het Internet, another.source.of.spam. De daar op volgende - regel accepteert mail connecties van een host okay.cyberspammer.com, - welke nauwkeuriger is dan de cyberspammer.com - regel erboven. Specifiekere regels overtreffen minder specifieke. De laatste regel - staat het doorsturen van electronische mail toe vanaf hosts waarvan de ipadressen - beginnen met 128.32. Deze hosts zijn dan in staat om via deze - mail server naar een andere bestemming mail te versturen. + In dit voorbeeld staan vijf vermeldingen. Mailafzenders die + overeenkomen met de linkerzijde van de tabel worden beïnvloed + door de actie die vermeld staan aan de rechterzijde van de tabel. + De eerste twee voorbeelden geven een foutcode af aan de + foutafhandelingsroutine van sendmail. + Het bericht wordt bij de externe host bekend gemaakt wanneer een + mail voldoet aan de linkerzijde van de tabel. De volgende regel + weigert mail van een specifieke host op het Internet, + another.source.of.spam. De volgende regel accepteert + mailverbindingen van een host + okay.cyberspammer.com, welke nauwkeuriger is dan de + regel met cyberspammer.com + erboven. Specifiekere regels vervangen minder specifieke. De + laatste regel staat het doorsturen van electronische mail toe + vanaf hosts waarvan de IP-adressen beginnen met 128.32 + . Deze hosts zijn dan in staat om via deze mailserver + naar een andere bestemming mail te versturen. - Wanneer dit bestand is bijgewerkt, dien je make - in /etc/mail/ te activeren om de databestanden bij te werken. - + Wanneer dit bestand is bijgewerkt, dient make + in /etc/mail/ te gedraaid te + worden om de database bij te werken. - <filename>/etc/mail/aliases</filename> + <filename>/etc/mail/aliases</filename> - De alias databestanden bevatten een lijst met virtuele postbussen - die verwijzen naar (een) andere gebruiker(s), bestand(en), programma('s) of andere - aliassen. Hier zijn een paar voorbeelden die gebruikt kunnen worden in - /etc/mail/aliases: + De aliasdatabase bevat een lijst met virtuele postbussen die + verwijzen naar andere gebruiker(s), bestand(en), programma('s) of + andere aliassen. Hier zijn een paar voorbeelden die gebruikt + kunnen worden in /etc/mail/aliases: - Mail Alias + Mailaliassen root: localuser ftp-bugs: joe,eric,paul bit.bucket: /dev/null procmail: "|/usr/local/bin/procmail" - Het bestandsformaat is simpel; de postbus naam aan de linkerzijde - van de dubbele punt wordt verder uitgewerkt naar de namen aan de rechterzijde. - Het eerste voorbeeld verwijst heel eenvoudig de postbus van root - naar de postbus localuser, welke dan vervolgens weer wordt opgezocht - in het alias databestand. Als er geen verdere overeenkomst wordt gevonden, - dan wordt het bericht afgeleverd bij de lokale gebruiker - localuser. Het volgende voorbeeld toont een distributielijst. - Post voor de postbus ftp-bugs wordt doorverwezen naar - de drie lokale postbussen van joe, - eric en paul. Merk op dat een externe - postbus gespecificeert kan worden als user@example.com. Het - volgende voorbeeld toont hoe post naar een bestand kan worden geschreven, in dit geval - /dev/null. Het laatste voorbeeld toont hoe post doorgestuurt - kan worden naar een programma, in dit geval wordt de post doorgestuurt naar de standaard - invoer van /usr/local/bin/procmail door een zogenaamde - &unix; pipe. + Het bestandsformaat is simpel; de postbusnaam aan de + linkerzijde van de dubbele punt wordt verder uitgewerkt naar de + doel(en) aan de rechterzijde. Het eerste voorbeeld breidt de + postbus van root uit naar de postbus + localuser, welke dan vervolgens weer wordt + opgezocht in de aliasdatabase. Als er geen verdere overeenkomst + wordt gevonden, dan wordt het bericht afgeleverd bij de lokale + gebruiker localuser. Het volgende + voorbeeld toont een mailinglijst. Mail voor de postbus + ftp-bugs wordt doorverwezen naar de drie + lokale postbussen joe, eric + en paul. Merk op dat een + externe postbus gespecificeerd kan worden als + user@example.com. Het volgende voorbeeld toont het + schrijven van mail naar een bestand, in dit geval + /dev/null. Het laatste voorbeeld toont het sturen + van mail naar een programma, in dit geval wordt het mailbericht + doorgestuurd naar de standaard invoer van + /usr/local/bin/procmail via een &unix; pijp. - Wanneer dit bestand is bijgewerkt, dien je make - in /etc/mail/ te activeren om de databestanden bij te werken. - + Wanneer dit bestand is bijgewerkt, dient make + in /etc/mail/ gedraaid te worden + om de database bij te werken. + - - <filename>/etc/mail/local-host-names</filename> + + <filename>/etc/mail/local-host-names</filename> - Dit is een lijst van hostnamen die &man.sendmail.8; moet zien als de lokale - hostnaam. Plaats hierin alle hostnamen waarvoor - sendmail mail moet ontvangen. - Voorbeeld: als de mailserver mail moet ontvangen van het domein - example.com en de hostnaam is - mail.example.com, dan ziet - local-host-names er ongeveer zo uit: + Dit is een lijst van hostnamen die &man.sendmail.8; moet + accepteren als de lokale hostnaam. Hierin dienen alle hostnamen + geplaatst te worden waarvoor sendmail + mail moet ontvangen. Als deze mailserver mail moet ontvangen + voor het domein example.com + en de hostnaam is mail.example.com, + dan ziet local-host-names er ongeveer zo + uit: - example.com + example.com mail.example.com - Herstart na het bijwerken van dit bestand &man.sendmail.8; om de wijzigingen door - te voeren. + Wanneer dit bestand is bijgewerkt, dient &man.sendmail.8; + opnieuw gestart te worde zodat het de veranderingen kan lezen. + + - + + <filename>/etc/mail/sendmail.cf</filename> - - <filename>/etc/mail/sendmail.cf</filename> + Het hoofdinstellingenbestand van sendmail + , sendmail.cf controleert het + algemene gedrag van sendmail, + inclusief alles van het herschrijven van emailaddressen tot het + sturen van weigeringsberichten naar externe mailservers. Met + zo'n diverse rol is dit instellingenbestand redelijk complex en + vallen de details buiten het bereik van dit hoofdstuk. Gelukkig + hoeft dit bestand maar zelden aangepast te worden voor standaard + mailservers. - Het hoofd instellingenbestand van sendmail - , sendmail.cf controleert het algemene gedrag van - sendmail, betreffende alles van het herschrijven van - e-mail addressen tot het weergeven van weigeringsberichten op externe mailservers. - Natuurlijk, met zo'n diverse rol, is dit instellingenbestand - redelijk complex, en details liggen buiten het bereik van dit hoofdstuk. - Gelukkig moet dit bestand maar zelden aangepast worden voor standaard mailservers. + Het hoofdinstellingenbestand van sendmail + kan gebouwd worden met &man.m4.1; macro's die het + gedrag en de mogelijkheden van sendmail + specificeren. Lees + /usr/src/contrib/sendmail/cf/README voor meer + details. - Het hoofd instellingenbestand van sendmail - kan gebouwd worden met &man.m4.1; macro's die het gedrag en de mogelijkheden van - sendmail specifikren. Lees - /usr/src/contrib/sendmail/cf/README voor meer details. + Wanneer dit bestand is bijgewerkt, dient &man.sendmail.8; + opnieuw gestart te worden om de wijzigingen door te voeren. + + >>> TRUNCATED FOR MAIL (1000 lines) <<< From snagg at FreeBSD.org Sun Jun 1 14:49:10 2008 From: snagg at FreeBSD.org (Vincenzo Iozzo) Date: Sun Jun 1 14:49:13 2008 Subject: PERFORCE change 142703 for review Message-ID: <200806011449.m51En9ST052591@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142703 Change 142703 by snagg@snagg_macosx on 2008/06/01 14:48:35 Added the "launcher" for testing programs. it generates xml from bsm records Affected files ... .. //depot/projects/soc2008/snagg-audit/sys/security/audit/audit_pipe.c#23 edit .. //depot/projects/soc2008/snagg-audit/tools/regression/audit/audit_pipe/audit_pipe_ioctl_events.c#1 add Differences ... ==== //depot/projects/soc2008/snagg-audit/sys/security/audit/audit_pipe.c#23 (text) ==== From snagg at FreeBSD.org Sun Jun 1 14:51:13 2008 From: snagg at FreeBSD.org (Vincenzo Iozzo) Date: Sun Jun 1 14:51:16 2008 Subject: PERFORCE change 142705 for review Message-ID: <200806011451.m51EpCH1057331@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142705 Change 142705 by snagg@snagg_macosx on 2008/06/01 14:50:19 IFC Affected files ... .. //depot/projects/soc2008/snagg-audit/sys/amd64/amd64/pmap.c#5 integrate .. //depot/projects/soc2008/snagg-audit/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#3 integrate .. //depot/projects/soc2008/snagg-audit/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace_impl.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/ath/ah_osdep.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/atkbdc/psm.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/nve/if_nve.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/nve/if_nvereg.h#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/fs/devfs/devfs_vnops.c#4 integrate .. //depot/projects/soc2008/snagg-audit/sys/netinet/ip_fw_nat.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/netinet/libalias/alias.c#3 integrate Differences ... ==== //depot/projects/soc2008/snagg-audit/sys/amd64/amd64/pmap.c#5 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.618 2008/05/18 04:16:55 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.619 2008/06/01 07:36:59 alc Exp $"); /* * Manages physical address maps. @@ -2775,22 +2775,20 @@ PMAP_LOCK_ASSERT(pmap, MA_OWNED); firstpte = (pt_entry_t *)PHYS_TO_DMAP(*pde & PG_FRAME); - KASSERT((*firstpte & PG_V) != 0, - ("pmap_promote_pde: firstpte is missing PG_V")); - if ((*firstpte & PG_A) == 0) { + newpde = *firstpte; + if ((newpde & (PG_A | PG_V)) != (PG_A | PG_V)) { pmap_pde_p_failures++; CTR2(KTR_PMAP, "pmap_promote_pde: failure for va %#lx" " in pmap %p", va, pmap); return; } - pa = *firstpte & PG_PS_FRAME; - newpde = *firstpte; if ((newpde & (PG_M | PG_RW)) == PG_RW) newpde &= ~PG_RW; /* * Check all the ptes before promotion */ + pa = newpde & PG_PS_FRAME; for (pte = firstpte; pte < firstpte + NPTEPG; pte++) { retry: oldpte = *pte; ==== //depot/projects/soc2008/snagg-audit/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#3 (text+ko) ==== @@ -17,6 +17,8 @@ * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END + * + * $FreeBSD: src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c,v 1.4 2008/06/01 01:46:37 jb Exp $ */ /* @@ -111,6 +113,7 @@ /* FreeBSD includes: */ #if !defined(sun) +#include #include #include #include @@ -11400,13 +11403,23 @@ mutex_enter(&dtrace_lock); /* - * Because we can be called after dtrace_detach() has been called, we - * cannot assert that there are retained enablings. We can safely - * load from dtrace_retained, however: the taskq_destroy() at the - * end of dtrace_detach() will block pending our completion. + * Iterate over all retained enablings to see if any probes match + * against them. We only perform this operation on enablings for which + * we have sufficient permissions by virtue of being in the global zone + * or in the same zone as the DTrace client. Because we can be called + * after dtrace_detach() has been called, we cannot assert that there + * are retained enablings. We can safely load from dtrace_retained, + * however: the taskq_destroy() at the end of dtrace_detach() will + * block pending our completion. */ - for (enab = dtrace_retained; enab != NULL; enab = enab->dten_next) - (void) dtrace_enabling_match(enab, NULL); + for (enab = dtrace_retained; enab != NULL; enab = enab->dten_next) { +#if defined(sun) + cred_t *cr = enab->dten_vstate->dtvs_state->dts_cred.dcr_cred; + + if (INGLOBALZONE(curproc) || getzoneid() == crgetzoneid(cr)) +#endif + (void) dtrace_enabling_match(enab, NULL); + } mutex_exit(&dtrace_lock); mutex_exit(&cpu_lock); @@ -12680,6 +12693,7 @@ } } +#if defined(sun) static void dtrace_state_clean(dtrace_state_t *state) { @@ -12697,9 +12711,51 @@ dtrace_sync(); -#if !defined(sun) + now = dtrace_gethrtime(); + + if (state != dtrace_anon.dta_state && + now - state->dts_laststatus >= dtrace_deadman_user) + return; + + /* + * We must be sure that dts_alive never appears to be less than the + * value upon entry to dtrace_state_deadman(), and because we lack a + * dtrace_cas64(), we cannot store to it atomically. We thus instead + * store INT64_MAX to it, followed by a memory barrier, followed by + * the new value. This assures that dts_alive never appears to be + * less than its true value, regardless of the order in which the + * stores to the underlying storage are issued. + */ + state->dts_alive = INT64_MAX; + dtrace_membar_producer(); + state->dts_alive = now; +} +#else +static void +dtrace_state_clean(void *arg) +{ + dtrace_state_t *state = arg; + dtrace_optval_t *opt = state->dts_options; + + if (state->dts_activity == DTRACE_ACTIVITY_INACTIVE) + return; + + dtrace_dynvar_clean(&state->dts_vstate.dtvs_dynvars); + dtrace_speculation_clean(state); + + callout_reset(&state->dts_cleaner, hz * opt[DTRACEOPT_CLEANRATE] / NANOSEC, + dtrace_state_clean, state); +} + +static void +dtrace_state_deadman(void *arg) +{ + dtrace_state_t *state = arg; + hrtime_t now; + + dtrace_sync(); + dtrace_debug_output(); -#endif now = dtrace_gethrtime(); @@ -12719,7 +12775,11 @@ state->dts_alive = INT64_MAX; dtrace_membar_producer(); state->dts_alive = now; + + callout_reset(&state->dts_deadman, hz * dtrace_deadman_interval / NANOSEC, + dtrace_state_deadman, state); } +#endif static dtrace_state_t * #if defined(sun) @@ -12793,8 +12853,14 @@ */ state->dts_buffer = kmem_zalloc(bufsize, KM_SLEEP); state->dts_aggbuffer = kmem_zalloc(bufsize, KM_SLEEP); + +#if defined(sun) state->dts_cleaner = CYCLIC_NONE; state->dts_deadman = CYCLIC_NONE; +#else + callout_init(&state->dts_cleaner, CALLOUT_MPSAFE); + callout_init(&state->dts_deadman, CALLOUT_MPSAFE); +#endif state->dts_vstate.dtvs_state = state; for (i = 0; i < DTRACEOPT_MAX; i++) @@ -13076,8 +13142,10 @@ dtrace_optval_t *opt = state->dts_options, sz, nspec; dtrace_speculation_t *spec; dtrace_buffer_t *buf; +#if defined(sun) cyc_handler_t hdlr; cyc_time_t when; +#endif int rval = 0, i, bufsize = NCPU * sizeof (dtrace_buffer_t); dtrace_icookie_t cookie; @@ -13255,11 +13323,11 @@ if (opt[DTRACEOPT_CLEANRATE] > dtrace_cleanrate_max) opt[DTRACEOPT_CLEANRATE] = dtrace_cleanrate_max; + state->dts_alive = state->dts_laststatus = dtrace_gethrtime(); +#if defined(sun) hdlr.cyh_func = (cyc_func_t)dtrace_state_clean; hdlr.cyh_arg = state; -#if defined(sun) hdlr.cyh_level = CY_LOW_LEVEL; -#endif when.cyt_when = 0; when.cyt_interval = opt[DTRACEOPT_CLEANRATE]; @@ -13268,15 +13336,18 @@ hdlr.cyh_func = (cyc_func_t)dtrace_state_deadman; hdlr.cyh_arg = state; -#if defined(sun) hdlr.cyh_level = CY_LOW_LEVEL; -#endif when.cyt_when = 0; when.cyt_interval = dtrace_deadman_interval; - state->dts_alive = state->dts_laststatus = dtrace_gethrtime(); state->dts_deadman = cyclic_add(&hdlr, &when); +#else + callout_reset(&state->dts_cleaner, hz * opt[DTRACEOPT_CLEANRATE] / NANOSEC, + dtrace_state_clean, state); + callout_reset(&state->dts_deadman, hz * dtrace_deadman_interval / NANOSEC, + dtrace_state_deadman, state); +#endif state->dts_activity = DTRACE_ACTIVITY_WARMUP; @@ -13537,11 +13608,16 @@ for (i = 0; i < nspec; i++) dtrace_buffer_free(spec[i].dtsp_buffer); +#if defined(sun) if (state->dts_cleaner != CYCLIC_NONE) cyclic_remove(state->dts_cleaner); if (state->dts_deadman != CYCLIC_NONE) cyclic_remove(state->dts_deadman); +#else + callout_stop(&state->dts_cleaner); + callout_stop(&state->dts_deadman); +#endif dtrace_dstate_fini(&vstate->dtvs_dynvars); dtrace_vstate_fini(vstate); ==== //depot/projects/soc2008/snagg-audit/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace_impl.h#2 (text+ko) ==== @@ -17,6 +17,8 @@ * information: Portions Copyright [yyyy] [name of copyright owner] * * CDDL HEADER END + * + * $FreeBSD: src/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace_impl.h,v 1.3 2008/06/01 01:46:37 jb Exp $ */ /* @@ -1137,8 +1139,13 @@ uint32_t dts_dblerrors; /* errors in ERROR probes */ uint32_t dts_reserve; /* space reserved for END */ hrtime_t dts_laststatus; /* time of last status */ +#if defined(sun) cyclic_id_t dts_cleaner; /* cleaning cyclic */ cyclic_id_t dts_deadman; /* deadman cyclic */ +#else + struct callout dts_cleaner; /* Cleaning callout. */ + struct callout dts_deadman; /* Deadman callout. */ +#endif hrtime_t dts_alive; /* time last alive */ char dts_speculates; /* boolean: has speculations */ char dts_destructive; /* boolean: has dest. actions */ ==== //depot/projects/soc2008/snagg-audit/sys/dev/ath/ah_osdep.h#2 (text+ko) ==== @@ -26,7 +26,7 @@ * ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF * THE POSSIBILITY OF SUCH DAMAGES. * - * $FreeBSD: src/sys/dev/ath/ah_osdep.h,v 1.3 2008/04/20 20:35:35 sam Exp $ + * $FreeBSD: src/sys/dev/ath/ah_osdep.h,v 1.4 2008/05/31 22:44:06 sam Exp $ */ #ifndef _ATH_AH_OSDEP_H_ #define _ATH_AH_OSDEP_H_ @@ -87,8 +87,11 @@ #define AH_BIG_ENDIAN 4321 #if _BYTE_ORDER == _BIG_ENDIAN +#define OS_REG_UNSWAPPED(_reg) \ + (((_reg) >= 0x4000 && (_reg) < 0x5000) || \ + ((_reg) >= 0x7000 && (_reg) < 0x8000)) #define OS_REG_WRITE(_ah, _reg, _val) do { \ - if ( (_reg) >= 0x4000 && (_reg) < 0x5000) \ + if (OS_REG_UNSWAPPED(_reg)) \ bus_space_write_4((bus_space_tag_t)(_ah)->ah_st, \ (bus_space_handle_t)(_ah)->ah_sh, (_reg), (_val)); \ else \ @@ -96,12 +99,13 @@ (bus_space_handle_t)(_ah)->ah_sh, (_reg), (_val)); \ } while (0) #define OS_REG_READ(_ah, _reg) \ - (((_reg) >= 0x4000 && (_reg) < 0x5000) ? \ + (OS_REG_UNSWAPPED(_reg) ? \ bus_space_read_4((bus_space_tag_t)(_ah)->ah_st, \ (bus_space_handle_t)(_ah)->ah_sh, (_reg)) : \ bus_space_read_stream_4((bus_space_tag_t)(_ah)->ah_st, \ (bus_space_handle_t)(_ah)->ah_sh, (_reg))) #else /* _BYTE_ORDER == _LITTLE_ENDIAN */ +#define OS_REG_UNSWAPPED(_reg) (0) #define OS_REG_WRITE(_ah, _reg, _val) \ bus_space_write_4((bus_space_tag_t)(_ah)->ah_st, \ (bus_space_handle_t)(_ah)->ah_sh, (_reg), (_val)) ==== //depot/projects/soc2008/snagg-audit/sys/dev/atkbdc/psm.c#2 (text+ko) ==== @@ -59,7 +59,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/atkbdc/psm.c,v 1.96 2008/04/08 19:09:45 jkim Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/atkbdc/psm.c,v 1.97 2008/06/01 13:44:51 philip Exp $"); #include "opt_isa.h" #include "opt_psm.h" @@ -367,6 +367,8 @@ 0x08, MOUSE_4D_PACKETSIZE, enable_4dmouse }, { MOUSE_MODEL_4DPLUS, /* A4 Tech 4D+ Mouse */ 0xc8, MOUSE_4DPLUS_PACKETSIZE, enable_4dplus }, + { MOUSE_MODEL_SYNAPTICS, /* Synaptics Touchpad */ + 0xc0, MOUSE_SYNAPTICS_PACKETSIZE, enable_synaptics }, { MOUSE_MODEL_INTELLI, /* Microsoft IntelliMouse */ 0x08, MOUSE_PS2INTELLI_PACKETSIZE, enable_msintelli }, { MOUSE_MODEL_GLIDEPOINT, /* ALPS GlidePoint */ @@ -375,8 +377,6 @@ 0x80, MOUSE_PS2_PACKETSIZE, enable_kmouse }, { MOUSE_MODEL_VERSAPAD, /* Interlink electronics VersaPad */ 0xe8, MOUSE_PS2VERSA_PACKETSIZE, enable_versapad }, - { MOUSE_MODEL_SYNAPTICS, /* Synaptics Touchpad */ - 0xc0, MOUSE_SYNAPTICS_PACKETSIZE, enable_synaptics }, { MOUSE_MODEL_GENERIC, 0xc0, MOUSE_PS2_PACKETSIZE, NULL }, }; ==== //depot/projects/soc2008/snagg-audit/sys/dev/nve/if_nve.c#2 (text+ko) ==== @@ -72,7 +72,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/nve/if_nve.c,v 1.29 2007/11/22 02:44:59 yongari Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/nve/if_nve.c,v 1.30 2008/05/31 14:17:36 remko Exp $"); #include #include @@ -211,32 +211,52 @@ DRIVER_MODULE(miibus, nve, miibus_driver, miibus_devclass, 0, 0); static struct nve_type nve_devs[] = { - {NVIDIA_VENDORID, NFORCE_MCPNET1_DEVICEID, - "NVIDIA nForce MCP Networking Adapter"}, - {NVIDIA_VENDORID, NFORCE_MCPNET2_DEVICEID, - "NVIDIA nForce MCP2 Networking Adapter"}, - {NVIDIA_VENDORID, NFORCE_MCPNET3_DEVICEID, - "NVIDIA nForce MCP3 Networking Adapter"}, - {NVIDIA_VENDORID, NFORCE_MCPNET4_DEVICEID, - "NVIDIA nForce MCP4 Networking Adapter"}, - {NVIDIA_VENDORID, NFORCE_MCPNET5_DEVICEID, - "NVIDIA nForce MCP5 Networking Adapter"}, - {NVIDIA_VENDORID, NFORCE_MCPNET6_DEVICEID, - "NVIDIA nForce MCP6 Networking Adapter"}, - {NVIDIA_VENDORID, NFORCE_MCPNET7_DEVICEID, - "NVIDIA nForce MCP7 Networking Adapter"}, - {NVIDIA_VENDORID, NFORCE_MCPNET8_DEVICEID, - "NVIDIA nForce MCP8 Networking Adapter"}, - {NVIDIA_VENDORID, NFORCE_MCPNET9_DEVICEID, - "NVIDIA nForce MCP9 Networking Adapter"}, - {NVIDIA_VENDORID, NFORCE_MCPNET10_DEVICEID, - "NVIDIA nForce MCP10 Networking Adapter"}, - {NVIDIA_VENDORID, NFORCE_MCPNET11_DEVICEID, - "NVIDIA nForce MCP11 Networking Adapter"}, - {NVIDIA_VENDORID, NFORCE_MCPNET12_DEVICEID, - "NVIDIA nForce MCP12 Networking Adapter"}, - {NVIDIA_VENDORID, NFORCE_MCPNET13_DEVICEID, - "NVIDIA nForce MCP13 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE_LAN, + "NVIDIA nForce MCP Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE2_LAN, + "NVIDIA nForce2 MCP2 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE2_400_LAN1, + "NVIDIA nForce2 400 MCP4 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE2_400_LAN2, + "NVIDIA nForce2 400 MCP5 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE3_LAN1, + "NVIDIA nForce3 MCP3 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE3_250_LAN, + "NVIDIA nForce3 250 MCP6 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE3_LAN4, + "NVIDIA nForce3 MCP7 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE4_LAN1, + "NVIDIA nForce4 CK804 MCP8 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE4_LAN2, + "NVIDIA nForce4 CK804 MCP9 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP04_LAN1, + "NVIDIA nForce MCP04 Networking Adapter"}, // MCP10 + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP04_LAN2, + "NVIDIA nForce MCP04 Networking Adapter"}, // MCP11 + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE430_LAN1, + "NVIDIA nForce 430 MCP12 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_NFORCE430_LAN2, + "NVIDIA nForce 430 MCP13 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP55_LAN1, + "NVIDIA nForce MCP55 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP55_LAN2, + "NVIDIA nForce MCP55 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP61_LAN1, + "NVIDIA nForce MCP61 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP61_LAN2, + "NVIDIA nForce MCP61 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP61_LAN3, + "NVIDIA nForce MCP61 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP61_LAN4, + "NVIDIA nForce MCP61 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP65_LAN1, + "NVIDIA nForce MCP65 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP65_LAN2, + "NVIDIA nForce MCP65 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP65_LAN3, + "NVIDIA nForce MCP65 Networking Adapter"}, + {PCI_VENDOR_NVIDIA, PCI_PRODUCT_NVIDIA_MCP65_LAN4, + "NVIDIA nForce MCP65 Networking Adapter"}, {0, 0, NULL} }; ==== //depot/projects/soc2008/snagg-audit/sys/dev/nve/if_nvereg.h#2 (text+ko) ==== @@ -25,29 +25,47 @@ * SUCH DAMAGE. * * $Id: if_nvreg.h,v 1.6 2004/08/12 14:00:05 q Exp $ - * $FreeBSD: src/sys/dev/nve/if_nvereg.h,v 1.8 2006/12/05 15:31:05 jhb Exp $ + * $FreeBSD: src/sys/dev/nve/if_nvereg.h,v 1.9 2008/05/31 14:17:36 remko Exp $ */ #ifndef _IF_NVEREG_H_ #define _IF_NVEREG_H_ -#ifndef NVIDIA_VENDORID -#define NVIDIA_VENDORID 0x10DE +#ifndef PCI_VENDOR_NVIDIA +#define PCI_VENDOR_NVIDIA 0x10DE #endif -#define NFORCE_MCPNET1_DEVICEID 0x01C3 -#define NFORCE_MCPNET2_DEVICEID 0x0066 -#define NFORCE_MCPNET3_DEVICEID 0x00D6 -#define NFORCE_MCPNET4_DEVICEID 0x0086 -#define NFORCE_MCPNET5_DEVICEID 0x008C -#define NFORCE_MCPNET6_DEVICEID 0x00E6 -#define NFORCE_MCPNET7_DEVICEID 0x00DF -#define NFORCE_MCPNET8_DEVICEID 0x0056 -#define NFORCE_MCPNET9_DEVICEID 0x0057 -#define NFORCE_MCPNET10_DEVICEID 0x0037 -#define NFORCE_MCPNET11_DEVICEID 0x0038 -#define NFORCE_MCPNET12_DEVICEID 0x0268 -#define NFORCE_MCPNET13_DEVICEID 0x0269 +#define PCI_PRODUCT_NVIDIA_NFORCE_LAN 0x01C3 +#define PCI_PRODUCT_NVIDIA_NFORCE2_LAN 0x0066 +#define PCI_PRODUCT_NVIDIA_NFORCE3_LAN1 0x00D6 +#define PCI_PRODUCT_NVIDIA_NFORCE2_400_LAN1 0x0086 +#define PCI_PRODUCT_NVIDIA_NFORCE2_400_LAN2 0x008C +#define PCI_PRODUCT_NVIDIA_NFORCE3_250_LAN 0x00E6 +#define PCI_PRODUCT_NVIDIA_NFORCE3_LAN4 0x00DF +#define PCI_PRODUCT_NVIDIA_NFORCE4_LAN1 0x0056 +#define PCI_PRODUCT_NVIDIA_NFORCE4_LAN2 0x0057 +#define PCI_PRODUCT_NVIDIA_MCP04_LAN1 0x0037 +#define PCI_PRODUCT_NVIDIA_MCP04_LAN2 0x0038 +#define PCI_PRODUCT_NVIDIA_NFORCE430_LAN1 0x0268 +#define PCI_PRODUCT_NVIDIA_NFORCE430_LAN2 0x0269 +#define PCI_PRODUCT_NVIDIA_MCP55_LAN1 0x0372 +#define PCI_PRODUCT_NVIDIA_MCP55_LAN2 0x0373 +#define PCI_PRODUCT_NVIDIA_MCP61_LAN1 0x03e5 +#define PCI_PRODUCT_NVIDIA_MCP61_LAN2 0x03e6 +#define PCI_PRODUCT_NVIDIA_MCP61_LAN3 0x03ee +#define PCI_PRODUCT_NVIDIA_MCP61_LAN4 0x03ef +#define PCI_PRODUCT_NVIDIA_MCP65_LAN1 0x0450 +#define PCI_PRODUCT_NVIDIA_MCP65_LAN2 0x0451 +#define PCI_PRODUCT_NVIDIA_MCP65_LAN3 0x0452 +#define PCI_PRODUCT_NVIDIA_MCP65_LAN4 0x0453 + +#define PCI_PRODUCT_NVIDIA_NFORCE3_LAN2 PCI_PRODUCT_NVIDIA_NFORCE2_400_LAN1 +#define PCI_PRODUCT_NVIDIA_NFORCE3_LAN3 PCI_PRODUCT_NVIDIA_NFORCE2_400_LAN2 +#define PCI_PRODUCT_NVIDIA_NFORCE3_LAN5 PCI_PRODUCT_NVIDIA_NFORCE3_250_LAN +#define PCI_PRODUCT_NVIDIA_CK804_LAN1 PCI_PRODUCT_NVIDIA_NFORCE4_LAN1 +#define PCI_PRODUCT_NVIDIA_CK804_LAN2 PCI_PRODUCT_NVIDIA_NFORCE4_LAN2 +#define PCI_PRODUCT_NVIDIA_MCP51_LAN1 PCI_PRODUCT_NVIDIA_NFORCE430_LAN1 +#define PCI_PRODUCT_NVIDIA_MCP51_LAN2 PCI_PRODUCT_NVIDIA_NFORCE430_LAN2 #define NV_RID 0x10 ==== //depot/projects/soc2008/snagg-audit/sys/fs/devfs/devfs_vnops.c#4 (text+ko) ==== @@ -31,7 +31,7 @@ * @(#)kernfs_vnops.c 8.15 (Berkeley) 5/21/95 * From: FreeBSD: src/sys/miscfs/kernfs/kernfs_vnops.c 1.43 * - * $FreeBSD: src/sys/fs/devfs/devfs_vnops.c,v 1.159 2008/05/23 16:36:39 kib Exp $ + * $FreeBSD: src/sys/fs/devfs/devfs_vnops.c,v 1.161 2008/06/01 14:02:46 ed Exp $ */ /* @@ -891,9 +891,8 @@ if(fp == NULL) return (error); #endif - KASSERT(fp->f_ops == &badfileops, - ("Could not vnode bypass device on fdops %p", fp->f_ops)); - finit(fp, fp->f_flag, DTYPE_VNODE, dev, &devfs_ops_f); + if (fp->f_ops == &badfileops) + finit(fp, fp->f_flag, DTYPE_VNODE, dev, &devfs_ops_f); return (error); } ==== //depot/projects/soc2008/snagg-audit/sys/netinet/ip_fw_nat.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/netinet/ip_fw_nat.c,v 1.2 2008/03/03 22:32:01 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/netinet/ip_fw_nat.c,v 1.3 2008/06/01 12:29:23 mav Exp $"); #include #include @@ -318,11 +318,12 @@ c = mtod(mcl, char *); if (args->oif == NULL) retval = LibAliasIn(t->lib, c, - MCLBYTES); + mcl->m_len + M_TRAILINGSPACE(mcl)); else retval = LibAliasOut(t->lib, c, - MCLBYTES); - if (retval != PKT_ALIAS_OK) { + mcl->m_len + M_TRAILINGSPACE(mcl)); + if (retval != PKT_ALIAS_OK && + retval != PKT_ALIAS_FOUND_HEADER_FRAGMENT) { /* XXX - should i add some logging? */ m_free(mcl); badnat: ==== //depot/projects/soc2008/snagg-audit/sys/netinet/libalias/alias.c#3 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/netinet/libalias/alias.c,v 1.61 2008/05/02 18:54:36 marck Exp $"); +__FBSDID("$FreeBSD: src/sys/netinet/libalias/alias.c,v 1.62 2008/06/01 11:47:04 mav Exp $"); /* Alias.c provides supervisory control for the functions of the @@ -1092,13 +1092,13 @@ /* Local prototypes */ static int FragmentIn(struct libalias *la, struct in_addr ip_src, - struct in_addr *ip_dst, u_char ip_p, u_short *ip_sum); + struct in_addr *ip_dst, u_short ip_id, u_short *ip_sum); static int FragmentOut(struct libalias *, struct in_addr *ip_src, u_short *ip_sum); static int FragmentIn(struct libalias *la, struct in_addr ip_src, struct in_addr *ip_dst, - u_char ip_id, u_short *ip_sum) + u_short ip_id, u_short *ip_sum) { struct alias_link *lnk; From strauss at FreeBSD.org Sun Jun 1 15:41:04 2008 From: strauss at FreeBSD.org (Anselm Strauss) Date: Sun Jun 1 15:41:09 2008 Subject: PERFORCE change 142709 for review Message-ID: <200806011541.m51Ff4Kj026646@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142709 Change 142709 by strauss@strauss_daredevil on 2008/06/01 15:40:31 parent integration Affected files ... .. //depot/projects/soc2008/strauss_libarchive/COPYING#4 integrate .. //depot/projects/soc2008/strauss_libarchive/Makefile#4 delete .. //depot/projects/soc2008/strauss_libarchive/Makefile.am#3 integrate .. //depot/projects/soc2008/strauss_libarchive/Makefile.in#2 delete .. //depot/projects/soc2008/strauss_libarchive/NEWS#2 integrate .. //depot/projects/soc2008/strauss_libarchive/README#4 integrate .. //depot/projects/soc2008/strauss_libarchive/aclocal.m4#2 delete .. //depot/projects/soc2008/strauss_libarchive/autogen.sh#1 branch .. //depot/projects/soc2008/strauss_libarchive/config.h.in#2 delete .. //depot/projects/soc2008/strauss_libarchive/configure.ac#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/Makefile#3 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/bsdcpio.1#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/cmdline.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/config_freebsd.h#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/cpio.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/cpio.h#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/cpio_platform.h#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/err.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/matching.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/matching.h#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/pathmatch.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/pathmatch.h#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/Makefile#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/main.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test.h#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_0.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_basic.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_format_newc.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_gcpio_compat.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_gcpio_compat_ref.bin.uu#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_gcpio_compat_ref.crc.uu#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_gcpio_compat_ref.newc.uu#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_gcpio_compat_ref.ustar.uu#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_B.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_L.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_a.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_c.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_d.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_ell.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_f.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_f.cpio.uu#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_help.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_m.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_m.cpio.uu#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_t.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_t.cpio.uu#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_t.stdout.uu#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_tv.stdout.uu#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_u.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_version.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_y.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_z.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_owner_parse.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/cpio/test/test_pathmatch.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/Makefile#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive.h#1 branch .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive.h.in#3 delete .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_endian.h#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_entry.3#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_entry.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_entry.h#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_entry_link_resolver.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_entry_private.h#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_entry_strmode.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_platform.h#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_read.3#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_read_data_into_fd.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_read_extract.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_read_support_compression_bzip2.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_read_support_compression_program.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_read_support_format_ar.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_read_support_format_iso9660.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_read_support_format_mtree.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_read_support_format_tar.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_read_support_format_zip.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_string.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_string.h#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_util.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_windows.c#1 branch .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_windows.h#1 branch .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_write.3#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_write_disk.3#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_write_disk.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_write_set_compression_program.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_write_set_format_ar.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_write_set_format_pax.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/archive_write_set_format_ustar.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/config_freebsd.h#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/config_windows.h#1 branch .. //depot/projects/soc2008/strauss_libarchive/libarchive/cpio.5#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/filter_fork.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/libarchive-formats.5#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/mtree.5#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/tar.5#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/Makefile#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/main.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/test_acl_pax.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/test_archive_api_feature.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/test_entry.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/test_link_resolver.c#1 branch .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/test_pax_filename_encoding.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/test_read_format_mtree.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/test_read_format_tar_empty_filename.c#1 branch .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/test_read_format_tar_empty_filename.tar.uu#1 branch .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/test_tar_filenames.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/test_tar_large.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/test_ustar_filenames.c#1 branch .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/test_write_disk_hardlink.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/test_write_format_ar.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/test_write_format_tar_ustar.c#1 branch .. //depot/projects/soc2008/strauss_libarchive/release.sh#1 branch .. //depot/projects/soc2008/strauss_libarchive/tar/Makefile#3 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/bsdtar.1#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/bsdtar.c#3 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/bsdtar.h#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/config_freebsd.h#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/matching.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/read.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/siginfo.c#1 branch .. //depot/projects/soc2008/strauss_libarchive/tar/subst.c#1 branch .. //depot/projects/soc2008/strauss_libarchive/tar/test/Makefile#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/test/main.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/test/test.h#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/test/test_0.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/test/test_basic.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/test/test_copy.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/test/test_getdate.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/test/test_help.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/test/test_option_T.c#1 branch .. //depot/projects/soc2008/strauss_libarchive/tar/test/test_patterns.c#1 branch .. //depot/projects/soc2008/strauss_libarchive/tar/test/test_stdio.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/test/test_version.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/util.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/tar/write.c#2 integrate .. //depot/projects/soc2008/strauss_libarchive/upload.sh#2 delete .. //depot/projects/soc2008/strauss_libarchive/version#2 integrate .. //depot/projects/soc2008/strauss_libarchive/windows/mvcpp.nt#1 branch .. //depot/projects/soc2008/strauss_libarchive/windows/wccpp.nt#1 branch Differences ... ==== //depot/projects/soc2008/strauss_libarchive/COPYING#4 (text+ko) ==== @@ -1,7 +1,41 @@ -All of the C source code and documentation in this package is subject -to the following: +The libarchive distribution as a whole is Copyright by Tim Kientzle +and is subject to the copyright notice reproduced at the bottom of +this file. + +Each individual file in this distribution should have a clear +copyright/licensing statement at the beginning of the file. If any do +not, please let me know and I will rectify it. The following is +intended to summarize the copyright status of the individual files; +the actual statements in the files are controlling. + +* Except as listed below, all C sources (including .c and .h files) + and documentation files are subject to the copyright notice reproduced + at the bottom of this file. + +* The following source files are also subject in whole or in part to + a 3-clause UC Regents copyright; please read the individual source + files for details: + libarchive/archive_entry.c + libarchive/archive_read_support_compression_compress.c + libarchive/archive_write_set_compression_compress.c + libarchive/mtree.5 + tar/matching.c + +* The following source files are in the public domain: + tar/getdate.y + +* The build files---including Makefiles, configure scripts, + and auxiliary scripts used as part of the compile process---have + widely varying licensing terms. Please check individual files before + distributing them to see if those restrictions apply to you. + +I intend for all new source code to use the license below and hope over +time to replace code with other licenses with new implementations that +do use the license below. The varying licensing of the build scripts +seems to be an unavoidable mess. + -Copyright (c) 2003-2006 Tim Kientzle +Copyright (c) 2003-2008 All rights reserved. Redistribution and use in source and binary forms, with or without ==== //depot/projects/soc2008/strauss_libarchive/Makefile.am#3 (text+ko) ==== @@ -25,8 +25,9 @@ # EXTRA_DIST= version \ contrib \ + doc \ examples \ - doc \ + windows \ $(libarchive_EXTRA_DIST) \ $(libarchive_test_EXTRA_DIST) \ $(bsdtar_EXTRA_DIST) \ @@ -43,7 +44,7 @@ rm -f `find $(distdir) -name '*.out'` rm -f `find $(distdir) -name '*.core'` -rm -f $(distdir)/*/Makefile $(distdir)/*/*/Makefile - cd $(distdir)/doc && ./update.sh + cd $(distdir)/doc && /bin/sh update.sh # # Extra rules for cleanup @@ -69,10 +70,7 @@ # # -include_HEADERS= libarchive/archive_entry.h -# Note: archive.h is built from archive.h.in, so don't -# include archive.h in the distfile, but do install it. -nodist_include_HEADERS= libarchive/archive.h +include_HEADERS= libarchive/archive.h libarchive/archive_entry.h libarchive_la_SOURCES= \ libarchive/archive_check_magic.c \ @@ -140,8 +138,6 @@ libarchive/filter_fork.c \ libarchive/filter_fork.h -# archive.h ends up in the build directory, so make sure we can find it. -libarchive_la_CPPFLAGS= -I$(top_builddir)/libarchive # cygwin barfs without -no-undefined; I don't know what it does or # whether it helps or hurts other platforms... libarchive_la_LDFLAGS= -no-undefined -version-info $(ARCHIVE_LIBTOOL_VERSION) @@ -161,8 +157,10 @@ libarchive/tar.5 # Additional libarchive files to include in the distribution -libarchive_EXTRA_DIST= \ - libarchive/test/list.h \ +libarchive_EXTRA_DIST= \ + libarchive/test/list.h \ + libarchive/archive_windows.c \ + libarchive/archive_windows.h \ $(libarchive_man_MANS) # @@ -272,14 +270,14 @@ tar/getdate.y \ tar/matching.c \ tar/read.c \ + tar/siginfo.c \ + tar/subst.c \ tar/tree.c \ tar/tree.h \ tar/util.c \ tar/write.c -bsdtar_DEPENDENCIES= libarchive.la \ - libarchive/archive_entry.h \ - libarchive/archive.h +bsdtar_DEPENDENCIES= libarchive.la if STATIC_BSDTAR bsdtar_static= -static @@ -314,6 +312,8 @@ tar/test/test_copy.c \ tar/test/test_getdate.c \ tar/test/test_help.c \ + tar/test/test_option_T.c \ + tar/test/test_patterns.c \ tar/test/test_stdio.c \ tar/test/test_version.c @@ -348,9 +348,7 @@ cpio/pathmatch.c \ cpio/pathmatch.h -bsdcpio_DEPENDENCIES = libarchive.la \ - libarchive/archive_entry.h \ - libarchive/archive.h +bsdcpio_DEPENDENCIES = libarchive.la if STATIC_BSDCPIO ==== //depot/projects/soc2008/strauss_libarchive/NEWS#2 (text+ko) ==== @@ -1,4 +1,54 @@ +May 25, 2008: libarchive 2.5.4b released +May 21, 2008: Joerg Sonnenberger: fix bsdtar hardlink handling for newc format + +May 21, 2008: More progress on Windows building. Thanks to "Scott" + for the Windows makefiles, thanks to Kees Zeelenberg for + code contributions. + +May 21, 2008: Fix a number of non-exploitable integer and buffer overflows, + thanks to David Remahl at Apple for pointing these out. + +May 21, 2008: Colin Percival: SIGINFO or SIGUSR1 to bsdtar prints progress info + +May 16, 2008: bsdtar's test harness no longer depends on file ordering. + This was causing spurious test failures on a lot of systems. + Thanks to Bernhard R. Link for the diagnosis. + +May 14, 2008: Joerg Sonnenberger: -s substitution support for bsdtar + +May 13, 2008: Joerg Sonnenberger: Many mtree improvements + +May 11, 2008: Joerg Sonnenberger: fix hardlink extraction when + hardlinks have different permissions from original file + +April 30, 2008: Primary libarchive work has been moved into the FreeBSD + project's Perforce repository: http://perforce.freebsd.org/ + The libarchive project can be browsed at + //depot/user/kientzle/libarchive-portable + Direct link: http://preview.tinyurl.com/46mdgr + +May 04, 2008: libarchive 2.5.3b released + * libarchive: Several fixes to link resolver to address bsdcpio crashes + * bsdcpio: -p hardlink handling fixes + * tar/pax: Ensure ustar dirnames end in '/'; be more careful about + measuring filenames when deciding what pathname fields to use + * libarchive: Mark which entry strings are set; be accurate about + distinguishing empty strings ("") from unset ones (NULL) + * tar: Don't crash reading entries with empty filenames + * libarchive_test, bsdtar_test, bsdcpio_test: Better detaults: + run all tests, delete temp dirs, summarize repeated failures + * -no-undefined to libtool for Cygwin + * libarchive_test: Skip large file tests on systems with 32-bit off_t + * iso9660: Don't bother trying to find the body of an empty file; + this works around strange behavior from some ISO9660 writers + * tar: allow -r -T to be used together + * tar: allow --format with -r or -u + * libarchive: Don't build archive.h + +May 04, 2008: Simplified building: archive.h is no longer constructed + This may require additional #if conditionals on some platforms. + Mar 30, 2008: libarchive 2.5.1b released Mar 15, 2008: libarchive 2.5.0b released ==== //depot/projects/soc2008/strauss_libarchive/README#4 (text+ko) ==== @@ -69,6 +69,7 @@ The library can write: * gzip compression * bzip2 compression + * compress/LZW compression * POSIX ustar * POSIX pax interchange format * "restricted" pax format, which will create ustar archives except for ==== //depot/projects/soc2008/strauss_libarchive/configure.ac#2 (text+ko) ==== @@ -4,13 +4,13 @@ dnl In particular, this allows the version macro to be used in AC_INIT dnl These first two version numbers are updated automatically on each release. -m4_define([LIBARCHIVE_VERSION_S],[2.5.1b]) -m4_define([LIBARCHIVE_VERSION_N],[2005001]) +m4_define([LIBARCHIVE_VERSION_S],[2.5.4b]) +m4_define([LIBARCHIVE_VERSION_N],[2005004]) dnl bsdtar versioning tracks libarchive m4_define([BSDTAR_VERSION_S],LIBARCHIVE_VERSION_S()) dnl bsdcpio is still versioning separately -m4_define([BSDCPIO_VERSION_S],[0.9.9a]) +m4_define([BSDCPIO_VERSION_S],[0.9.10a]) # # Now starts the "real" configure script. @@ -63,7 +63,6 @@ AC_CONFIG_HEADERS([config.h]) AC_CONFIG_FILES([Makefile]) -AC_CONFIG_FILES([libarchive/archive.h]) # Checks for programs. AC_PROG_CC @@ -174,7 +173,7 @@ AC_CHECK_HEADER(inttypes.h, [AC_SUBST(ARCHIVE_H_INCLUDE_INTTYPES_H,['#include /* For int64_t */'])], [AC_SUBST(ARCHIVE_H_INCLUDE_INTTYPES_H,[''])]) -AC_CHECK_HEADERS([locale.h paths.h poll.h pwd.h stdarg.h]) +AC_CHECK_HEADERS([locale.h paths.h poll.h pwd.h regex.h stdarg.h]) AC_CHECK_HEADERS([stdint.h stdlib.h string.h sys/acl.h sys/ioctl.h]) AC_CHECK_HEADERS([sys/param.h sys/poll.h sys/select.h sys/time.h sys/utime.h]) AC_CHECK_HEADERS([time.h unistd.h utime.h wchar.h zlib.h]) @@ -240,13 +239,13 @@ AC_FUNC_STRERROR_R AC_FUNC_STRFTIME AC_FUNC_VPRINTF -AC_CHECK_FUNCS([chflags chown fchdir fchflags fchmod fchown fstat]) -AC_CHECK_FUNCS([ftruncate futimes geteuid getopt_long getpid]) +AC_CHECK_FUNCS([chflags chown fchdir fchflags fchmod fchown fcntl fork]) +AC_CHECK_FUNCS([fstat ftruncate futimes geteuid getopt_long getpid]) AC_CHECK_FUNCS([lchflags lchmod lchown]) AC_CHECK_FUNCS([lutimes memmove memset mkdir mkfifo mknod]) -AC_CHECK_FUNCS([nl_langinfo poll select setenv setlocale]) +AC_CHECK_FUNCS([nl_langinfo pipe poll select setenv setlocale]) AC_CHECK_FUNCS([strchr strdup strerror strrchr timegm]) -AC_CHECK_FUNCS([tzset unsetenv utime utimes]) +AC_CHECK_FUNCS([tzset unsetenv utime utimes vfork]) AC_CHECK_FUNCS([wcscpy wcslen wmemcmp wmemcpy]) # FreeBSD's nl_langinfo supports an option to specify whether the ==== //depot/projects/soc2008/strauss_libarchive/cpio/Makefile#3 (text+ko) ==== @@ -1,7 +1,7 @@ # $FreeBSD$ PROG= bsdcpio -BSDCPIO_VERSION_STRING=0.9.9a +BSDCPIO_VERSION_STRING=0.9.10a SRCS= cpio.c cmdline.c err.c matching.c pathmatch.c WARNS?= 6 DPADD= ${LIBARCHIVE} ${LIBZ} ${LIBBZ2} ==== //depot/projects/soc2008/strauss_libarchive/cpio/bsdcpio.1#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/cmdline.c#2 (text+ko) ==== @@ -66,7 +66,7 @@ */ -static const char *cpio_opts = "AaBC:F:O:cdE:f:H:hijLlmopR:rtuvW:yZz"; +static const char *cpio_opts = "0AaBC:F:O:cdE:f:H:hijLlmopR:rtuvW:yZz"; /* * On systems that lack getopt_long, long options can be specified @@ -86,6 +86,7 @@ { "format", required_argument, NULL, 'H' }, { "help", no_argument, NULL, 'h' }, { "insecure", no_argument, NULL, OPTION_INSECURE }, + { "null", no_argument, NULL, '0' }, { "owner", required_argument, NULL, 'R' }, { "quiet", no_argument, NULL, OPTION_QUIET }, { "verbose", no_argument, NULL, 'v' }, ==== //depot/projects/soc2008/strauss_libarchive/cpio/config_freebsd.h#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/cpio.c#2 (text+ko) ==== @@ -101,6 +101,7 @@ cpio->gid_override = -1; cpio->argv = argv; cpio->argc = argc; + cpio->line_separator = '\n'; cpio->mode = '\0'; cpio->verbose = 0; cpio->compress = '\0'; @@ -116,6 +117,9 @@ while ((opt = cpio_getopt(cpio)) != -1) { switch (opt) { + case '0': /* GNU convention: --null, -0 */ + cpio->line_separator = '\0'; + break; case 'A': /* NetBSD/OpenBSD */ cpio->option_append = 1; break; @@ -341,8 +345,10 @@ static void mode_out(struct cpio *cpio) { + unsigned long blocks; struct archive_entry *entry, *spare; - unsigned long blocks; + struct line_reader *lr; + const char *p; int r; if (cpio->option_append) @@ -375,7 +381,10 @@ r = archive_write_open_file(cpio->archive, cpio->filename); if (r != ARCHIVE_OK) cpio_errc(1, 0, archive_error_string(cpio->archive)); - process_lines(cpio, "-", file_to_archive); + lr = process_lines_init("-", cpio->line_separator); + while ((p = process_lines_next(lr)) != NULL) + file_to_archive(cpio, p); + process_lines_free(lr); /* * The hardlink detection may have queued up a couple of entries @@ -793,6 +802,8 @@ static void mode_pass(struct cpio *cpio, const char *destdir) { + struct line_reader *lr; + const char *p; int r; /* Ensure target dir has a trailing '/' to simplify path surgery. */ @@ -809,7 +820,10 @@ cpio_errc(1, 0, archive_error_string(cpio->archive)); cpio->linkresolver = archive_entry_linkresolver_new(); archive_write_disk_set_standard_lookup(cpio->archive); - process_lines(cpio, "-", file_to_archive); + lr = process_lines_init("-", cpio->line_separator); + while ((p = process_lines_next(lr)) != NULL) + file_to_archive(cpio, p); + process_lines_free(lr); archive_entry_linkresolver_free(cpio->linkresolver); r = archive_write_close(cpio->archive); @@ -868,79 +882,119 @@ * terminated with newlines. * * This uses a self-sizing buffer to handle arbitrarily-long lines. - * If the "process" function returns non-zero for any line, this - * function will return non-zero after attempting to process all - * remaining lines. */ -int -process_lines(struct cpio *cpio, const char *pathname, - int (*process)(struct cpio *, const char *)) -{ +struct line_reader { FILE *f; char *buff, *buff_end, *line_start, *line_end, *p; - size_t buff_length, bytes_read, bytes_wanted; + char *pathname; + size_t buff_length; int separator; int ret; +}; - separator = cpio->option_null ? '\0' : '\n'; - ret = 0; +struct line_reader * +process_lines_init(const char *pathname, char separator) +{ + struct line_reader *lr; + + lr = calloc(1, sizeof(*lr)); + if (lr == NULL) + cpio_errc(1, ENOMEM, "Can't open %s", pathname); + + lr->separator = separator; + lr->pathname = strdup(pathname); if (strcmp(pathname, "-") == 0) - f = stdin; + lr->f = stdin; else - f = fopen(pathname, "r"); - if (f == NULL) + lr->f = fopen(pathname, "r"); + if (lr->f == NULL) cpio_errc(1, errno, "Couldn't open %s", pathname); - buff_length = 8192; - buff = malloc(buff_length); - if (buff == NULL) + lr->buff_length = 8192; + lr->buff = malloc(lr->buff_length); + if (lr->buff == NULL) cpio_errc(1, ENOMEM, "Can't read %s", pathname); - line_start = line_end = buff_end = buff; + lr->line_start = lr->line_end = lr->buff_end = lr->buff; + + return (lr); +} + +const char * +process_lines_next(struct line_reader *lr) +{ + size_t bytes_wanted, bytes_read, new_buff_size; + char *line_start, *p; + for (;;) { - /* Get some more data into the buffer. */ - bytes_wanted = buff + buff_length - buff_end; - bytes_read = fread(buff_end, 1, bytes_wanted, f); - buff_end += bytes_read; - /* Process all complete lines in the buffer. */ - while (line_end < buff_end) { - if (*line_end == separator) { - *line_end = '\0'; - if ((*process)(cpio, line_start) != 0) - ret = -1; - line_start = line_end + 1; - line_end = line_start; + /* If there's a line in the buffer, return it immediately. */ + while (lr->line_end < lr->buff_end) { + if (*lr->line_end == lr->separator) { + *lr->line_end = '\0'; + line_start = lr->line_start; + lr->line_start = lr->line_end + 1; + lr->line_end = lr->line_start; + return (line_start); } else - line_end++; + lr->line_end++; + } + + /* If we're at end-of-file, process the final data. */ + if (lr->f == NULL) { + /* If there's more text, return one last line. */ + if (lr->line_end > lr->line_start) { + *lr->line_end = '\0'; + line_start = lr->line_start; + lr->line_start = lr->line_end + 1; + lr->line_end = lr->line_start; + return (line_start); + } + /* Otherwise, we're done. */ + return (NULL); } - if (feof(f)) - break; - if (ferror(f)) - cpio_errc(1, errno, "Can't read %s", pathname); - if (line_start > buff) { + + /* Buffer only has part of a line. */ + if (lr->line_start > lr->buff) { /* Move a leftover fractional line to the beginning. */ - memmove(buff, line_start, buff_end - line_start); - buff_end -= line_start - buff; - line_end -= line_start - buff; - line_start = buff; + memmove(lr->buff, lr->line_start, + lr->buff_end - lr->line_start); + lr->buff_end -= lr->line_start - lr->buff; + lr->line_end -= lr->line_start - lr->buff; + lr->line_start = lr->buff; } else { /* Line is too big; enlarge the buffer. */ - p = realloc(buff, buff_length *= 2); + new_buff_size = lr->buff_length * 2; + if (new_buff_size <= lr->buff_length) + cpio_errc(1, ENOMEM, + "Line too long in %s", lr->pathname); + lr->buff_length = new_buff_size; + p = realloc(lr->buff, new_buff_size); if (p == NULL) cpio_errc(1, ENOMEM, - "Line too long in %s", pathname); - buff_end = p + (buff_end - buff); - line_end = p + (line_end - buff); - line_start = buff = p; + "Line too long in %s", lr->pathname); + lr->buff_end = p + (lr->buff_end - lr->buff); + lr->line_end = p + (lr->line_end - lr->buff); + lr->line_start = lr->buff = p; + } + + /* Get some more data into the buffer. */ + bytes_wanted = lr->buff + lr->buff_length - lr->buff_end; + bytes_read = fread(lr->buff_end, 1, bytes_wanted, lr->f); + lr->buff_end += bytes_read; + + if (ferror(lr->f)) + cpio_errc(1, errno, "Can't read %s", lr->pathname); + if (feof(lr->f)) { + if (lr->f != stdin) + fclose(lr->f); + lr->f = NULL; } } - /* At end-of-file, handle the final line. */ - if (line_end > line_start) { - *line_end = '\0'; - if ((*process)(cpio, line_start) != 0) - ret = -1; - } - free(buff); - if (f != stdin) - fclose(f); - return (ret); +} + +void +process_lines_free(struct line_reader *lr) +{ + free(lr->buff); + free(lr->pathname); + free(lr); } ==== //depot/projects/soc2008/strauss_libarchive/cpio/cpio.h#2 (text+ko) ==== @@ -53,12 +53,12 @@ int extract_flags; /* Flags for extract operation */ char symlink_mode; /* H or L, per BSD conventions */ const char *compress_program; + char line_separator; /* --null ? '\0' : '\n' */ int option_append; /* -A, only relevant for -o */ int option_atime_restore; /* -a */ int option_follow_links; /* -L */ int option_link; /* -l */ int option_list; /* -t */ - int option_null; /* -0 --null */ int option_rename; /* -r */ char *destdir; size_t pass_destpath_alloc; @@ -98,9 +98,13 @@ OPTION_VERSION }; +struct line_reader; + +struct line_reader *process_lines_init(const char *, char separator); +const char *process_lines_next(struct line_reader *); +void process_lines_free(struct line_reader *); + int cpio_getopt(struct cpio *cpio); -int process_lines(struct cpio *cpio, const char *pathname, - int (*process)(struct cpio *, const char *)); int include_from_file(struct cpio *, const char *); #endif ==== //depot/projects/soc2008/strauss_libarchive/cpio/cpio_platform.h#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/err.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/matching.c#2 (text+ko) ==== @@ -107,7 +107,16 @@ int include_from_file(struct cpio *cpio, const char *pathname) { - return (process_lines(cpio, pathname, &include)); + struct line_reader *lr; + const char *p; + int ret = 0; + + lr = process_lines_init(pathname, '\n'); + while ((p = process_lines_next(lr)) != NULL) + if (include(cpio, p) != 0) + ret = -1; + process_lines_free(lr); + return (ret); } static void ==== //depot/projects/soc2008/strauss_libarchive/cpio/matching.h#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/pathmatch.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/pathmatch.h#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/Makefile#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/main.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test.h#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_0.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_basic.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_format_newc.c#2 (text+ko) ==== @@ -66,7 +66,7 @@ int fd, list; int r; int devmajor, devminor, ino, gid; - time_t t, now; + time_t t, t2, now; char *p, *e; size_t s; mode_t oldmask; @@ -159,7 +159,9 @@ assertEqualInt(from_hex(e + 22, 8), getuid()); /* uid */ assertEqualInt(gid, from_hex(e + 30, 8)); /* gid */ assertEqualMem(e + 38, "00000001", 8); /* nlink */ - assertEqualInt(t, from_hex(e + 46, 8)); /* mtime */ + t2 = from_hex(e + 46, 8); /* mtime */ + failure("First entry created at t=0x%08x this entry created at t2=0x%08x", t, t2); + assert(t2 == t || t2 == t + 1); /* Almost same as first entry. */ assertEqualMem(e + 54, "00000005", 8); /* File size */ assertEqualInt(devmajor, from_hex(e + 62, 8)); /* devmajor */ assertEqualInt(devminor, from_hex(e + 70, 8)); /* devminor */ @@ -179,7 +181,9 @@ assertEqualInt(from_hex(e + 22, 8), getuid()); /* uid */ assertEqualInt(gid, from_hex(e + 30, 8)); /* gid */ assertEqualMem(e + 38, "00000002", 8); /* nlink */ - assertEqualInt(t, from_hex(e + 46, 8)); /* mtime */ + t2 = from_hex(e + 46, 8); /* mtime */ + failure("First entry created at t=0x%08x this entry created at t2=0x%08x", t, t2); + assert(t2 == t || t2 == t + 1); /* Almost same as first entry. */ assertEqualMem(e + 54, "00000000", 8); /* File size */ assertEqualInt(devmajor, from_hex(e + 62, 8)); /* devmajor */ assertEqualInt(devminor, from_hex(e + 70, 8)); /* devminor */ @@ -203,7 +207,9 @@ assertEqualInt(from_hex(e + 22, 8), getuid()); /* uid */ assertEqualInt(gid, from_hex(e + 30, 8)); /* gid */ assertEqualMem(e + 38, "00000003", 8); /* nlink */ - assertEqualInt(t, from_hex(e + 46, 8)); /* mtime */ + t2 = from_hex(e + 46, 8); /* mtime */ + failure("First entry created at t=0x%08x this entry created at t2=0x%08x", t, t2); + assert(t2 == t || t2 == t + 1); /* Almost same as first entry. */ assertEqualInt(10, from_hex(e + 54, 8)); /* File size */ assertEqualInt(devmajor, from_hex(e + 62, 8)); /* devmajor */ assertEqualInt(devminor, from_hex(e + 70, 8)); /* devminor */ ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_gcpio_compat.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_gcpio_compat_ref.bin.uu#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_gcpio_compat_ref.crc.uu#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_gcpio_compat_ref.newc.uu#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_gcpio_compat_ref.ustar.uu#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_B.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_L.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_a.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_c.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_d.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_ell.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_f.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_f.cpio.uu#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_help.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_m.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_m.cpio.uu#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_t.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_t.cpio.uu#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_t.stdout.uu#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_tv.stdout.uu#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_u.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_version.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_y.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_option_z.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_owner_parse.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/cpio/test/test_pathmatch.c#2 (text+ko) ==== ==== //depot/projects/soc2008/strauss_libarchive/libarchive/Makefile#3 (text+ko) ==== @@ -1,22 +1,11 @@ -# $FreeBSD: src/lib/libarchive/Makefile,v 1.83 2008/03/21 11:10:20 kaiw Exp $ +# $FreeBSD: src/lib/libarchive/Makefile,v 1.84 2008/05/26 17:00:22 kientzle Exp $ LIB= archive DPADD= ${LIBBZ2} ${LIBZ} LDADD= -lbz2 -lz -# The libarchive version stamp. -# Version is three numbers: -# Major: Bumped ONLY when API/ABI breakage happens (see SHLIB_MAJOR) -# Minor: Bumped when significant new features are added -# Revision: Bumped frequently. - -# The useful version number (one integer, easy to compare) -LIBARCHIVE_VERSION_NUMBER=2005001 -# The pretty version string -LIBARCHIVE_VERSION_STRING=2.5.1b - # FreeBSD SHLIB_MAJOR value is managed as part of the FreeBSD system. -# It has no real relation to the version number above. +# It has no real relation to the libarchive version number. SHLIB_MAJOR= 4 CFLAGS+= -DPLATFORM_CONFIG_H=\"config_freebsd.h\" @@ -27,20 +16,8 @@ # Headers to be installed in /usr/include INCS= archive.h archive_entry.h -# Build archive.h from archive.h.in by substituting version information. -# Note: FreeBSD has inttypes.h, so enable that include in archive.h.in -archive.h: archive.h.in Makefile - cat ${.CURDIR}/archive.h.in | sed \ - -e 's/@LIBARCHIVE_VERSION_NUMBER@/${LIBARCHIVE_VERSION_NUMBER}/g' \ - -e 's/@LIBARCHIVE_VERSION_STRING@/${LIBARCHIVE_VERSION_STRING}/g' \ - > archive.h - -# archive.h needs to be cleaned -CLEANFILES+= archive.h - # Sources to be compiled. -SRCS= archive.h \ - archive_check_magic.c \ +SRCS= archive_check_magic.c \ archive_entry.c \ archive_entry_copy_stat.c \ archive_entry_stat.c \ @@ -115,6 +92,7 @@ MLINKS+= archive_entry.3 archive_entry_acl_text_w.3 MLINKS+= archive_entry.3 archive_entry_clear.3 MLINKS+= archive_entry.3 archive_entry_clone.3 +MLINKS+= archive_entry.3 archive_entry_copy_fflags_text.3 MLINKS+= archive_entry.3 archive_entry_copy_fflags_text_w.3 MLINKS+= archive_entry.3 archive_entry_copy_gname.3 MLINKS+= archive_entry.3 archive_entry_copy_gname_w.3 @@ -230,6 +208,7 @@ MLINKS+= archive_write.3 archive_write_set_bytes_per_block.3 MLINKS+= archive_write.3 archive_write_set_callbacks.3 MLINKS+= archive_write.3 archive_write_set_compression_bzip2.3 +MLINKS+= archive_write.3 archive_write_set_compression_compress.3 MLINKS+= archive_write.3 archive_write_set_compression_gzip.3 MLINKS+= archive_write.3 archive_write_set_compression_none.3 MLINKS+= archive_write.3 archive_write_set_compression_program.3 ==== //depot/projects/soc2008/strauss_libarchive/libarchive/archive_endian.h#2 (text+ko) ==== @@ -23,14 +23,28 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libarchive/archive_endian.h,v 1.2 2008/02/26 07:17:47 kientzle Exp $ + * $FreeBSD: src/lib/libarchive/archive_endian.h,v 1.3 2008/05/26 17:00:22 kientzle Exp $ * * Borrowed from FreeBSD's */ +/* Note: This is a purely internal header! */ +/* Do not use this outside of libarchive internal code! */ + #ifndef ARCHIVE_ENDIAN_H_INCLUDED #define ARCHIVE_ENDIAN_H_INCLUDED + +/* Watcom C++ doesn't support 'inline' in C code. (For any version?) */ +#if defined( __WATCOMC__ ) + #define inline +#endif + +/* Visual C++ 6.0 doesn't support 'inline' in C code. (Does VC7? VC8?) */ +#if defined(_MSC_VER) + #define inline +#endif + /* Alignment-agnostic encode/decode bytestream to/from little/big endian. */ static inline uint16_t ==== //depot/projects/soc2008/strauss_libarchive/libarchive/archive_entry.3#3 (text+ko) ==== >>> TRUNCATED FOR MAIL (1000 lines) <<< From remko at FreeBSD.org Sun Jun 1 15:58:23 2008 From: remko at FreeBSD.org (Remko Lodder) Date: Sun Jun 1 15:58:25 2008 Subject: PERFORCE change 142711 for review Message-ID: <200806011558.m51FwLcS033349@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142711 Change 142711 by remko@remko_nakur on 2008/06/01 15:57:48 Fix some spelling errors. Spotted by: Florian Smeets Affected files ... .. //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml#4 edit Differences ... ==== //depot/projects/docproj_nl/nl_NL.ISO8859-1/books/handbook/mail/chapter.sgml#4 (text+ko) ==== @@ -19,7 +19,7 @@ Jim Mock - Hershreven door + Herschreven door @@ -236,7 +236,7 @@ Oudere versies van sendmail hebben serieuze beveiligingslekken welke kunnen leiden tot een situatie waarbij een aanvaller lokale of toegang van afstand - tot de machine kan verkijgen. Draai een actuele versie om + tot de machine kan verkrijgen. Draai een actuele versie om deze problemen te voorkomen. Optioneel kan een alternatieve MTA van de &os; Portscollectie geïnstalleerd worden. @@ -268,7 +268,7 @@ mail direct bij de host worden afgeleverd, mits er een A-regel is die deze hostnaam aan dit IP-adres koppelt. - De MX-regels van een willekeurig domein kunnen wordeni + De MX-regels van een willekeurig domein kunnen worden bekeken door gebruik te maken van het commando &man.host.1;, zoals te zien is in het onderstaande voorbeeld: From sam at FreeBSD.org Sun Jun 1 20:55:36 2008 From: sam at FreeBSD.org (Sam Leffler) Date: Sun Jun 1 20:55:38 2008 Subject: PERFORCE change 142720 for review Message-ID: <200806012055.m51KtZZH008692@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142720 Change 142720 by sam@sam_ebb on 2008/06/01 20:55:27 Fix node cleanup issues when the last reference is held by the driver (e.g. in the tx q); ni_vap may not be valid, we must carefully check before using it. Affected files ... .. //depot/projects/vap/sys/net80211/ieee80211_node.c#37 edit Differences ... ==== //depot/projects/vap/sys/net80211/ieee80211_node.c#37 (text+ko) ==== @@ -1482,21 +1482,30 @@ static void _ieee80211_free_node(struct ieee80211_node *ni) { - struct ieee80211vap *vap = ni->ni_vap; struct ieee80211_node_table *nt = ni->ni_table; + /* + * NB: careful about referencing the vap as it may be + * gone if the last reference was held by a driver. + * We know the com will always be present so it's safe + * to use ni_ic below to reclaim resources. + */ +#if 0 IEEE80211_DPRINTF(vap, IEEE80211_MSG_NODE, "%s %p<%s> in %s table\n", __func__, ni, ether_sprintf(ni->ni_macaddr), nt != NULL ? nt->nt_name : ""); - - if (vap->iv_aid_bitmap != NULL) - IEEE80211_AID_CLR(vap, ni->ni_associd); +#endif + if (ni->ni_associd != 0) { + struct ieee80211vap *vap = ni->ni_vap; + if (vap->iv_aid_bitmap != NULL) + IEEE80211_AID_CLR(vap, ni->ni_associd); + } if (nt != NULL) { TAILQ_REMOVE(&nt->nt_node, ni, ni_list); LIST_REMOVE(ni, ni_hash); } - vap->iv_ic->ic_node_free(ni); + ni->ni_ic->ic_node_free(ni); } void @@ -1551,9 +1560,8 @@ int ieee80211_node_delucastkey(struct ieee80211_node *ni) { - struct ieee80211vap *vap = ni->ni_vap; - /* XXX is ni_table safe? */ - struct ieee80211_node_table *nt = &ni->ni_ic->ic_sta; + struct ieee80211com *ic = ni->ni_ic; + struct ieee80211_node_table *nt = &ic->ic_sta; struct ieee80211_node *nikey; ieee80211_keyix keyix; int isowned, status; @@ -1573,20 +1581,23 @@ isowned = IEEE80211_NODE_IS_LOCKED(nt); if (!isowned) IEEE80211_NODE_LOCK(nt); - keyix = ni->ni_ucastkey.wk_rxkeyix; - status = ieee80211_crypto_delkey(vap, &ni->ni_ucastkey); - if (nt->nt_keyixmap != NULL && keyix < nt->nt_keyixmax) { - nikey = nt->nt_keyixmap[keyix]; - nt->nt_keyixmap[keyix] = NULL;; - } else - nikey = NULL; + nikey = NULL; + status = 1; /* NB: success */ + if (!IEEE80211_KEY_UNDEFINED(&ni->ni_ucastkey)) { + keyix = ni->ni_ucastkey.wk_rxkeyix; + status = ieee80211_crypto_delkey(ni->ni_vap, &ni->ni_ucastkey); + if (nt->nt_keyixmap != NULL && keyix < nt->nt_keyixmax) { + nikey = nt->nt_keyixmap[keyix]; + nt->nt_keyixmap[keyix] = NULL;; + } + } if (!isowned) IEEE80211_NODE_UNLOCK(nt); if (nikey != NULL) { KASSERT(nikey == ni, ("key map out of sync, ni %p nikey %p", ni, nikey)); - IEEE80211_DPRINTF(vap, IEEE80211_MSG_NODE, + IEEE80211_DPRINTF(ni->ni_vap, IEEE80211_MSG_NODE, "%s: delete key map entry %p<%s> refcnt %d\n", __func__, ni, ether_sprintf(ni->ni_macaddr), ieee80211_node_refcnt(ni)-1); From julian at FreeBSD.org Sun Jun 1 23:43:26 2008 From: julian at FreeBSD.org (Julian Elischer) Date: Sun Jun 1 23:43:30 2008 Subject: PERFORCE change 142723 for review Message-ID: <200806012343.m51NhPu3025622@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142723 Change 142723 by julian@julian_trafmon1 on 2008/06/01 23:42:30 IFC@142722 Affected files ... .. //depot/projects/vimage/src/sys/Makefile#8 integrate .. //depot/projects/vimage/src/sys/amd64/amd64/exception.S#5 integrate .. //depot/projects/vimage/src/sys/amd64/amd64/genassym.c#8 integrate .. //depot/projects/vimage/src/sys/amd64/amd64/identcpu.c#8 integrate .. //depot/projects/vimage/src/sys/amd64/amd64/local_apic.c#10 integrate .. //depot/projects/vimage/src/sys/amd64/amd64/pmap.c#15 integrate .. //depot/projects/vimage/src/sys/amd64/amd64/trap.c#9 integrate .. //depot/projects/vimage/src/sys/amd64/conf/GENERIC#15 integrate .. //depot/projects/vimage/src/sys/amd64/conf/NOTES#11 integrate .. //depot/projects/vimage/src/sys/arm/arm/identcpu.c#4 integrate .. //depot/projects/vimage/src/sys/arm/arm/pmap.c#13 integrate .. //depot/projects/vimage/src/sys/arm/at91/at91_twi.c#3 integrate .. //depot/projects/vimage/src/sys/boot/forth/loader.conf#9 integrate .. //depot/projects/vimage/src/sys/cddl/compat/opensolaris/kern/opensolaris.c#1 branch .. //depot/projects/vimage/src/sys/cddl/compat/opensolaris/kern/opensolaris_cmn_err.c#1 branch .. //depot/projects/vimage/src/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c#2 integrate .. //depot/projects/vimage/src/sys/cddl/compat/opensolaris/machine/endian.h#2 delete .. //depot/projects/vimage/src/sys/cddl/compat/opensolaris/sys/atomic.h#2 integrate .. //depot/projects/vimage/src/sys/cddl/compat/opensolaris/sys/cmn_err.h#2 integrate .. //depot/projects/vimage/src/sys/cddl/compat/opensolaris/sys/cpuvar.h#2 integrate .. //depot/projects/vimage/src/sys/cddl/compat/opensolaris/sys/cpuvar_defs.h#1 branch .. //depot/projects/vimage/src/sys/cddl/compat/opensolaris/sys/cyclic.h#2 integrate .. //depot/projects/vimage/src/sys/cddl/compat/opensolaris/sys/cyclic_impl.h#1 branch .. //depot/projects/vimage/src/sys/cddl/compat/opensolaris/sys/feature_tests.h#1 branch .. //depot/projects/vimage/src/sys/cddl/compat/opensolaris/sys/kmem.h#2 integrate .. //depot/projects/vimage/src/sys/cddl/compat/opensolaris/sys/pcpu.h#2 integrate .. //depot/projects/vimage/src/sys/cddl/compat/opensolaris/sys/sema.h#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/ctf/ctf_mod.c#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/ctf/ctf_subr.c#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/fasttrap.c#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/lockstat.c#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/profile.c#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/sdt_subr.c#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/systrace.c#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/refcount.c#2 integrate .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/spa_misc.c#2 integrate .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/sys/refcount.h#2 integrate .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/fs/zfs/zfs_ioctl.c#2 integrate .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/sys/cmn_err.h#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/sys/cpupart.h#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/sys/cpuvar.h#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/sys/ctf.h#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/sys/ctf_api.h#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/sys/debug.h#2 integrate .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace.h#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace_impl.h#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/sys/fasttrap.h#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/sys/isa_defs.h#2 integrate .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/sys/sdt.h#2 delete .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/common/sys/vmem.h#2 delete .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/intel/sys/fasttrap_isa.h#1 branch .. //depot/projects/vimage/src/sys/cddl/contrib/opensolaris/uts/sparc/sys/fasttrap_isa.h#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/cyclic/amd64/cyclic_machdep.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/cyclic/cyclic.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/cyclic/cyclic_test.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/cyclic/i386/cyclic_machdep.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtmalloc/dtmalloc.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/amd64/dis_tables.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/amd64/dis_tables.h#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/amd64/dtrace_asm.S#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/amd64/dtrace_isa.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/amd64/dtrace_subr.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/amd64/instr_size.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/dtrace_anon.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/dtrace_cddl.h#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/dtrace_clone.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/dtrace_debug.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/dtrace_hacks.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/dtrace_ioctl.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/dtrace_load.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/dtrace_modevent.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/dtrace_sysctl.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/dtrace_test.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/dtrace_unload.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/dtrace_vtime.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/i386/dis_tables.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/i386/dis_tables.h#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/i386/dtrace_asm.S#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/i386/dtrace_isa.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/i386/dtrace_subr.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/dtrace/i386/instr_size.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/fbt/fbt.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/profile/profile.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/prototype.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/sdt/sdt.c#1 branch .. //depot/projects/vimage/src/sys/cddl/dev/systrace/systrace.c#1 branch .. //depot/projects/vimage/src/sys/compat/ndis/subr_ntoskrnl.c#7 integrate .. //depot/projects/vimage/src/sys/conf/Makefile.amd64#4 integrate .. //depot/projects/vimage/src/sys/conf/NOTES#23 integrate .. //depot/projects/vimage/src/sys/conf/files#25 integrate .. //depot/projects/vimage/src/sys/conf/files.i386#12 integrate .. //depot/projects/vimage/src/sys/conf/files.pc98#9 integrate .. //depot/projects/vimage/src/sys/conf/kern.post.mk#5 integrate .. //depot/projects/vimage/src/sys/conf/kern.pre.mk#9 integrate .. //depot/projects/vimage/src/sys/conf/options#25 integrate .. //depot/projects/vimage/src/sys/conf/options.amd64#5 integrate .. //depot/projects/vimage/src/sys/conf/options.i386#5 integrate .. //depot/projects/vimage/src/sys/conf/options.pc98#4 integrate .. //depot/projects/vimage/src/sys/dev/acpi_support/acpi_ibm.c#6 integrate .. //depot/projects/vimage/src/sys/dev/acpi_support/acpi_sony.c#2 integrate .. //depot/projects/vimage/src/sys/dev/age/if_age.c#1 branch .. //depot/projects/vimage/src/sys/dev/age/if_agereg.h#1 branch .. //depot/projects/vimage/src/sys/dev/age/if_agevar.h#1 branch .. //depot/projects/vimage/src/sys/dev/ata/ata-all.c#6 integrate .. //depot/projects/vimage/src/sys/dev/ath/ah_osdep.h#4 integrate .. //depot/projects/vimage/src/sys/dev/ath/if_ath.c#17 integrate .. //depot/projects/vimage/src/sys/dev/ath/if_athvar.h#8 integrate .. //depot/projects/vimage/src/sys/dev/atkbdc/psm.c#7 integrate .. //depot/projects/vimage/src/sys/dev/bce/if_bce.c#13 integrate .. //depot/projects/vimage/src/sys/dev/cnw/if_cnw.c#3 integrate .. //depot/projects/vimage/src/sys/dev/em/if_em.c#11 integrate .. //depot/projects/vimage/src/sys/dev/harp/if_harp.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore.h#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_aali.h#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_buffer.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_command.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_globals.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_if.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_include.h#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_init.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_intr.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_output.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_receive.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_slave.h#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_stats.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_stats.h#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_timer.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_transmit.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_var.h#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/fore_vcm.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/hfa_eisa.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/hfa_freebsd.c#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/hfa_freebsd.h#2 delete .. //depot/projects/vimage/src/sys/dev/hfa/hfa_pci.c#3 delete .. //depot/projects/vimage/src/sys/dev/hfa/hfa_sbus.c#2 delete .. //depot/projects/vimage/src/sys/dev/idt/idt.c#2 delete .. //depot/projects/vimage/src/sys/dev/idt/idt_harp.c#2 delete .. //depot/projects/vimage/src/sys/dev/idt/idt_pci.c#4 delete .. //depot/projects/vimage/src/sys/dev/idt/idtreg.h#3 delete .. //depot/projects/vimage/src/sys/dev/idt/idtvar.h#2 delete .. //depot/projects/vimage/src/sys/dev/ie/if_ie.c#2 integrate .. //depot/projects/vimage/src/sys/dev/ie/if_ievar.h#2 integrate .. //depot/projects/vimage/src/sys/dev/ieee488/upd7210.c#2 integrate .. //depot/projects/vimage/src/sys/dev/if_ndis/if_ndis.c#12 integrate .. //depot/projects/vimage/src/sys/dev/iwn/if_iwn.c#3 integrate .. //depot/projects/vimage/src/sys/dev/ixgbe/LICENSE#2 integrate .. //depot/projects/vimage/src/sys/dev/ixgbe/README#1 branch .. //depot/projects/vimage/src/sys/dev/ixgbe/ixgbe.c#3 integrate .. //depot/projects/vimage/src/sys/dev/ixgbe/ixgbe.h#3 integrate .. //depot/projects/vimage/src/sys/dev/ixgbe/ixgbe_82598.c#3 integrate .. //depot/projects/vimage/src/sys/dev/ixgbe/ixgbe_api.c#3 integrate .. //depot/projects/vimage/src/sys/dev/ixgbe/ixgbe_api.h#3 integrate .. //depot/projects/vimage/src/sys/dev/ixgbe/ixgbe_common.c#3 integrate .. //depot/projects/vimage/src/sys/dev/ixgbe/ixgbe_common.h#3 integrate .. //depot/projects/vimage/src/sys/dev/ixgbe/ixgbe_osdep.h#3 integrate .. //depot/projects/vimage/src/sys/dev/ixgbe/ixgbe_phy.c#3 integrate .. //depot/projects/vimage/src/sys/dev/ixgbe/ixgbe_phy.h#3 integrate .. //depot/projects/vimage/src/sys/dev/ixgbe/ixgbe_type.h#3 integrate .. //depot/projects/vimage/src/sys/dev/ixgbe/tcp_lro.c#1 branch .. //depot/projects/vimage/src/sys/dev/ixgbe/tcp_lro.h#1 branch .. //depot/projects/vimage/src/sys/dev/jme/if_jme.c#1 branch .. //depot/projects/vimage/src/sys/dev/jme/if_jmereg.h#1 branch .. //depot/projects/vimage/src/sys/dev/jme/if_jmevar.h#1 branch .. //depot/projects/vimage/src/sys/dev/led/led.c#3 integrate .. //depot/projects/vimage/src/sys/dev/md/md.c#7 integrate .. //depot/projects/vimage/src/sys/dev/mfi/mfi.c#12 integrate .. //depot/projects/vimage/src/sys/dev/mfi/mfi_ioctl.h#5 integrate .. //depot/projects/vimage/src/sys/dev/mii/atphy.c#1 branch .. //depot/projects/vimage/src/sys/dev/mii/atphyreg.h#1 branch .. //depot/projects/vimage/src/sys/dev/mii/jmphy.c#1 branch .. //depot/projects/vimage/src/sys/dev/mii/jmphyreg.h#1 branch .. //depot/projects/vimage/src/sys/dev/mii/miidevs#11 integrate .. //depot/projects/vimage/src/sys/dev/nve/if_nve.c#6 integrate .. //depot/projects/vimage/src/sys/dev/nve/if_nvereg.h#3 integrate .. //depot/projects/vimage/src/sys/dev/pccard/pccard_cis.c#3 integrate .. //depot/projects/vimage/src/sys/dev/puc/pucdata.c#4 integrate .. //depot/projects/vimage/src/sys/dev/snc/dp83932.c#2 integrate .. //depot/projects/vimage/src/sys/dev/snc/dp83932subr.c#2 integrate .. //depot/projects/vimage/src/sys/dev/snc/dp83932var.h#2 integrate .. //depot/projects/vimage/src/sys/dev/snc/if_sncreg.h#2 integrate .. //depot/projects/vimage/src/sys/dev/sound/midi/sequencer.c#4 integrate .. //depot/projects/vimage/src/sys/dev/sound/pci/hda/hdac.c#17 integrate .. //depot/projects/vimage/src/sys/dev/sound/pcm/dsp.c#7 integrate .. //depot/projects/vimage/src/sys/dev/uart/uart_dev_ns8250.c#5 integrate .. //depot/projects/vimage/src/sys/dev/usb/umass.c#9 integrate .. //depot/projects/vimage/src/sys/dev/usb/usb.c#6 integrate .. //depot/projects/vimage/src/sys/dev/usb/usbdevs#20 integrate .. //depot/projects/vimage/src/sys/dev/usb/uscanner.c#7 integrate .. //depot/projects/vimage/src/sys/dev/usb/uxb360gp_rdesc.h#2 integrate .. //depot/projects/vimage/src/sys/fs/devfs/devfs_int.h#3 integrate .. //depot/projects/vimage/src/sys/fs/devfs/devfs_vnops.c#12 integrate .. //depot/projects/vimage/src/sys/fs/fdescfs/fdesc.h#2 integrate .. //depot/projects/vimage/src/sys/fs/fdescfs/fdesc_vfsops.c#5 integrate .. //depot/projects/vimage/src/sys/fs/fdescfs/fdesc_vnops.c#6 integrate .. //depot/projects/vimage/src/sys/fs/udf/udf_vnops.c#7 integrate .. //depot/projects/vimage/src/sys/geom/geom_dev.c#5 integrate .. //depot/projects/vimage/src/sys/geom/geom_subr.c#4 integrate .. //depot/projects/vimage/src/sys/geom/vinum/geom_vinum_share.c#3 integrate .. //depot/projects/vimage/src/sys/i386/conf/GENERIC#17 integrate .. //depot/projects/vimage/src/sys/i386/conf/NOTES#16 integrate .. //depot/projects/vimage/src/sys/i386/cpufreq/est.c#3 integrate .. //depot/projects/vimage/src/sys/i386/i386/exception.s#4 integrate .. //depot/projects/vimage/src/sys/i386/i386/genassym.c#7 integrate .. //depot/projects/vimage/src/sys/i386/i386/identcpu.c#8 integrate .. //depot/projects/vimage/src/sys/i386/i386/local_apic.c#9 integrate .. //depot/projects/vimage/src/sys/i386/i386/pmap.c#15 integrate .. //depot/projects/vimage/src/sys/i386/i386/trap.c#10 integrate .. //depot/projects/vimage/src/sys/i386/isa/clock.c#9 integrate .. //depot/projects/vimage/src/sys/i4b/capi/README#2 delete .. //depot/projects/vimage/src/sys/i4b/capi/capi.h#2 delete .. //depot/projects/vimage/src/sys/i4b/capi/capi_l4if.c#3 delete .. //depot/projects/vimage/src/sys/i4b/capi/capi_llif.c#3 delete .. //depot/projects/vimage/src/sys/i4b/capi/capi_msgs.c#3 delete .. //depot/projects/vimage/src/sys/i4b/capi/capi_msgs.h#2 delete .. //depot/projects/vimage/src/sys/i4b/capi/iavc/iavc.h#2 delete .. //depot/projects/vimage/src/sys/i4b/capi/iavc/iavc_card.c#3 delete .. //depot/projects/vimage/src/sys/i4b/capi/iavc/iavc_isa.c#4 delete .. //depot/projects/vimage/src/sys/i4b/capi/iavc/iavc_lli.c#3 delete .. //depot/projects/vimage/src/sys/i4b/capi/iavc/iavc_pci.c#4 delete .. //depot/projects/vimage/src/sys/i4b/driver/i4b_ctl.c#3 delete .. //depot/projects/vimage/src/sys/i4b/driver/i4b_ing.c#4 delete .. //depot/projects/vimage/src/sys/i4b/driver/i4b_ipr.c#5 delete .. //depot/projects/vimage/src/sys/i4b/driver/i4b_isppp.c#4 delete .. //depot/projects/vimage/src/sys/i4b/driver/i4b_rbch.c#3 delete .. //depot/projects/vimage/src/sys/i4b/driver/i4b_tel.c#3 delete .. //depot/projects/vimage/src/sys/i4b/driver/i4b_trace.c#3 delete .. //depot/projects/vimage/src/sys/i4b/include/i4b_cause.h#2 delete .. //depot/projects/vimage/src/sys/i4b/include/i4b_debug.h#2 delete .. //depot/projects/vimage/src/sys/i4b/include/i4b_global.h#2 delete .. //depot/projects/vimage/src/sys/i4b/include/i4b_ioctl.h#2 delete .. //depot/projects/vimage/src/sys/i4b/include/i4b_isdnq931.h#2 delete .. //depot/projects/vimage/src/sys/i4b/include/i4b_l1l2.h#3 delete .. //depot/projects/vimage/src/sys/i4b/include/i4b_l2l3.h#2 delete .. //depot/projects/vimage/src/sys/i4b/include/i4b_l3l4.h#2 delete .. //depot/projects/vimage/src/sys/i4b/include/i4b_mbuf.h#2 delete .. //depot/projects/vimage/src/sys/i4b/include/i4b_rbch_ioctl.h#2 delete .. //depot/projects/vimage/src/sys/i4b/include/i4b_tel_ioctl.h#2 delete .. //depot/projects/vimage/src/sys/i4b/include/i4b_trace.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/i4b_hdlc.c#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/i4b_hdlc.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/i4b_l1.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/i4b_l1dmux.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/i4b_l1lib.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpi/i4b_ifpi_ext.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpi/i4b_ifpi_isac.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpi/i4b_ifpi_l1.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpi/i4b_ifpi_l1fsm.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpi/i4b_ifpi_pci.c#4 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpi2/i4b_ifpi2_ext.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpi2/i4b_ifpi2_isacsx.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpi2/i4b_ifpi2_isacsx.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpi2/i4b_ifpi2_l1.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpi2/i4b_ifpi2_l1fsm.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpi2/i4b_ifpi2_pci.c#4 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpnp/i4b_ifpnp_avm.c#4 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpnp/i4b_ifpnp_ext.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpnp/i4b_ifpnp_isac.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpnp/i4b_ifpnp_l1.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ifpnp/i4b_ifpnp_l1fsm.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ihfc/i4b_ihfc.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ihfc/i4b_ihfc_drv.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ihfc/i4b_ihfc_drv.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ihfc/i4b_ihfc_ext.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ihfc/i4b_ihfc_l1if.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/ihfc/i4b_ihfc_pnp.c#4 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_asuscom_ipac.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_avm_a1.c#5 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_bchan.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_ctx_s0P.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_diva.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_drn_ngo.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_dynalink.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_elsa_pcc16.c#5 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_elsa_qs1i.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_elsa_qs1p.c#4 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_hscx.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_hscx.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_ipac.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_isac.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_isac.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_isic.c#4 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_isic.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_isic_ext.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_isic_isa.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_isic_pnp.c#4 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_itk_ix1.c#5 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_l1.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_l1fsm.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_siemens_isurf.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_sws.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_tel_s016.c#5 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_tel_s0163.c#5 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_tel_s08.c#5 delete .. //depot/projects/vimage/src/sys/i4b/layer1/isic/i4b_usr_sti.c#4 delete .. //depot/projects/vimage/src/sys/i4b/layer1/itjc/i4b_hdlc.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/itjc/i4b_itjc_ext.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/itjc/i4b_itjc_isac.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/itjc/i4b_itjc_l1.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/itjc/i4b_itjc_l1fsm.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/itjc/i4b_itjc_pci.c#4 delete .. //depot/projects/vimage/src/sys/i4b/layer1/iwic/i4b_iwic.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/iwic/i4b_iwic_bchan.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/iwic/i4b_iwic_dchan.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/iwic/i4b_iwic_ext.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer1/iwic/i4b_iwic_fsm.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/iwic/i4b_iwic_l1if.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer1/iwic/i4b_iwic_pci.c#4 delete .. //depot/projects/vimage/src/sys/i4b/layer1/iwic/i4b_w6692.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer2/i4b_iframe.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer2/i4b_l2.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer2/i4b_l2.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer2/i4b_l2fsm.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer2/i4b_l2fsm.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer2/i4b_l2timer.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer2/i4b_lme.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer2/i4b_mbuf.c#2 delete .. //depot/projects/vimage/src/sys/i4b/layer2/i4b_sframe.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer2/i4b_tei.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer2/i4b_uframe.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer2/i4b_util.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer3/i4b_l2if.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer3/i4b_l3.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer3/i4b_l3fsm.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer3/i4b_l3fsm.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer3/i4b_l3timer.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer3/i4b_l4if.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer3/i4b_q931.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer3/i4b_q931.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer3/i4b_q932fac.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer3/i4b_q932fac.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer4/i4b_i4bdrv.c#4 delete .. //depot/projects/vimage/src/sys/i4b/layer4/i4b_l4.c#4 delete .. //depot/projects/vimage/src/sys/i4b/layer4/i4b_l4.h#2 delete .. //depot/projects/vimage/src/sys/i4b/layer4/i4b_l4mgmt.c#3 delete .. //depot/projects/vimage/src/sys/i4b/layer4/i4b_l4timer.c#3 delete .. //depot/projects/vimage/src/sys/ia64/ia64/interrupt.c#8 integrate .. //depot/projects/vimage/src/sys/ia64/ia64/machdep.c#13 integrate .. //depot/projects/vimage/src/sys/ia64/ia64/pmap.c#11 integrate .. //depot/projects/vimage/src/sys/ia64/include/atomic.h#5 integrate .. //depot/projects/vimage/src/sys/kern/Make.tags.inc#6 integrate .. //depot/projects/vimage/src/sys/kern/kern_conf.c#10 integrate .. //depot/projects/vimage/src/sys/kern/kern_cpuset.c#2 integrate .. //depot/projects/vimage/src/sys/kern/kern_ctf.c#1 branch .. //depot/projects/vimage/src/sys/kern/kern_descrip.c#14 integrate .. //depot/projects/vimage/src/sys/kern/kern_dtrace.c#1 branch .. //depot/projects/vimage/src/sys/kern/kern_exec.c#11 integrate .. //depot/projects/vimage/src/sys/kern/kern_exit.c#17 integrate .. //depot/projects/vimage/src/sys/kern/kern_fork.c#16 integrate .. //depot/projects/vimage/src/sys/kern/kern_linker.c#14 integrate .. //depot/projects/vimage/src/sys/kern/kern_lock.c#8 integrate .. //depot/projects/vimage/src/sys/kern/kern_malloc.c#7 integrate .. //depot/projects/vimage/src/sys/kern/kern_proc.c#10 integrate .. //depot/projects/vimage/src/sys/kern/kern_rwlock.c#12 integrate .. //depot/projects/vimage/src/sys/kern/kern_sdt.c#1 branch .. //depot/projects/vimage/src/sys/kern/kern_sig.c#11 integrate .. //depot/projects/vimage/src/sys/kern/kern_umtx.c#9 integrate .. //depot/projects/vimage/src/sys/kern/link_elf.c#7 integrate .. //depot/projects/vimage/src/sys/kern/link_elf_obj.c#6 integrate .. //depot/projects/vimage/src/sys/kern/linker_if.m#3 integrate .. //depot/projects/vimage/src/sys/kern/sched_4bsd.c#20 integrate .. //depot/projects/vimage/src/sys/kern/sched_ule.c#23 integrate .. //depot/projects/vimage/src/sys/kern/subr_bus.c#9 integrate .. //depot/projects/vimage/src/sys/kern/subr_clist.c#1 branch .. //depot/projects/vimage/src/sys/kern/subr_smp.c#9 integrate .. //depot/projects/vimage/src/sys/kern/sys_pipe.c#8 integrate .. //depot/projects/vimage/src/sys/kern/tty.c#14 integrate .. //depot/projects/vimage/src/sys/kern/tty_cons.c#6 integrate .. //depot/projects/vimage/src/sys/kern/tty_subr.c#3 delete .. //depot/projects/vimage/src/sys/kern/uipc_sem.c#5 integrate .. //depot/projects/vimage/src/sys/kern/uipc_syscalls.c#18 integrate .. //depot/projects/vimage/src/sys/kern/vfs_mount.c#15 integrate .. //depot/projects/vimage/src/sys/kern/vfs_subr.c#12 integrate .. //depot/projects/vimage/src/sys/mips/mips/pmap.c#2 integrate .. //depot/projects/vimage/src/sys/modules/Makefile#18 integrate .. //depot/projects/vimage/src/sys/modules/age/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/ath_rate_onoe/Makefile#4 integrate .. //depot/projects/vimage/src/sys/modules/ath_rate_sample/Makefile#4 integrate .. //depot/projects/vimage/src/sys/modules/cnw/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/cyclic/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/dtrace/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/dtrace/Makefile.inc#1 branch .. //depot/projects/vimage/src/sys/modules/dtrace/dtmalloc/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/dtrace/dtrace/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/dtrace/dtrace_test/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/dtrace/dtraceall/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/dtrace/dtraceall/dtraceall.c#1 branch .. //depot/projects/vimage/src/sys/modules/dtrace/fasttrap/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/dtrace/fbt/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/dtrace/lockstat/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/dtrace/profile/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/dtrace/prototype/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/dtrace/sdt/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/dtrace/systrace/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/harp/Makefile#2 delete .. //depot/projects/vimage/src/sys/modules/hfa/Makefile#3 delete .. //depot/projects/vimage/src/sys/modules/hfa/Makefile.inc#2 delete .. //depot/projects/vimage/src/sys/modules/hfa/eisa/Makefile#2 delete .. //depot/projects/vimage/src/sys/modules/hfa/hfa/Makefile#2 delete .. //depot/projects/vimage/src/sys/modules/hfa/pci/Makefile#2 delete .. //depot/projects/vimage/src/sys/modules/hfa/sbus/Makefile#2 delete .. //depot/projects/vimage/src/sys/modules/idt/Makefile#2 delete .. //depot/projects/vimage/src/sys/modules/iwn/Makefile#2 integrate .. //depot/projects/vimage/src/sys/modules/ixgbe/Makefile#3 integrate .. //depot/projects/vimage/src/sys/modules/jme/Makefile#1 branch .. //depot/projects/vimage/src/sys/modules/mii/Makefile#4 integrate .. //depot/projects/vimage/src/sys/modules/netgraph/atm/Makefile#3 integrate .. //depot/projects/vimage/src/sys/modules/netgraph/atm/atmpif/Makefile#2 delete .. //depot/projects/vimage/src/sys/modules/opensolaris/Makefile#1 branch .. //depot/projects/vimage/src/sys/net/if.c#25 integrate .. //depot/projects/vimage/src/sys/net/radix_mpath.c#2 integrate .. //depot/projects/vimage/src/sys/net/radix_mpath.h#2 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211.c#14 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_adhoc.c#2 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_crypto.c#5 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_crypto.h#5 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_crypto_ccmp.c#4 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_crypto_tkip.c#4 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_crypto_wep.c#4 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_ddb.c#4 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_freebsd.h#9 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_ioctl.c#9 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_node.c#10 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_output.c#11 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_proto.c#10 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_proto.h#10 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_scan.c#5 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_var.h#12 integrate .. //depot/projects/vimage/src/sys/net80211/ieee80211_wds.c#2 integrate .. //depot/projects/vimage/src/sys/netatm/atm.h#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_aal5.c#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_cm.c#3 delete .. //depot/projects/vimage/src/sys/netatm/atm_cm.h#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_device.c#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_if.c#3 delete .. //depot/projects/vimage/src/sys/netatm/atm_if.h#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_ioctl.h#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_pcb.h#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_proto.c#3 delete .. //depot/projects/vimage/src/sys/netatm/atm_sap.h#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_sigmgr.h#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_signal.c#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_socket.c#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_stack.h#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_subr.c#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_sys.h#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_usrreq.c#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_var.h#2 delete .. //depot/projects/vimage/src/sys/netatm/atm_vc.h#2 delete .. //depot/projects/vimage/src/sys/netatm/ipatm/ipatm.h#2 delete .. //depot/projects/vimage/src/sys/netatm/ipatm/ipatm_event.c#3 delete .. //depot/projects/vimage/src/sys/netatm/ipatm/ipatm_if.c#2 delete .. //depot/projects/vimage/src/sys/netatm/ipatm/ipatm_input.c#2 delete .. //depot/projects/vimage/src/sys/netatm/ipatm/ipatm_load.c#3 delete .. //depot/projects/vimage/src/sys/netatm/ipatm/ipatm_output.c#2 delete .. //depot/projects/vimage/src/sys/netatm/ipatm/ipatm_serv.h#2 delete .. //depot/projects/vimage/src/sys/netatm/ipatm/ipatm_usrreq.c#2 delete .. //depot/projects/vimage/src/sys/netatm/ipatm/ipatm_var.h#2 delete .. //depot/projects/vimage/src/sys/netatm/ipatm/ipatm_vcm.c#2 delete .. //depot/projects/vimage/src/sys/netatm/port.h#3 delete .. //depot/projects/vimage/src/sys/netatm/queue.h#2 delete .. //depot/projects/vimage/src/sys/netatm/sigpvc/sigpvc_if.c#3 delete .. //depot/projects/vimage/src/sys/netatm/sigpvc/sigpvc_subr.c#2 delete .. //depot/projects/vimage/src/sys/netatm/sigpvc/sigpvc_var.h#2 delete .. //depot/projects/vimage/src/sys/netatm/spans/spans_arp.c#2 delete .. //depot/projects/vimage/src/sys/netatm/spans/spans_cls.c#2 delete .. //depot/projects/vimage/src/sys/netatm/spans/spans_cls.h#2 delete .. //depot/projects/vimage/src/sys/netatm/spans/spans_if.c#3 delete .. //depot/projects/vimage/src/sys/netatm/spans/spans_kxdr.c#2 delete .. //depot/projects/vimage/src/sys/netatm/spans/spans_kxdr.h#2 delete .. //depot/projects/vimage/src/sys/netatm/spans/spans_msg.c#2 delete .. //depot/projects/vimage/src/sys/netatm/spans/spans_print.c#2 delete .. //depot/projects/vimage/src/sys/netatm/spans/spans_proto.c#3 delete .. //depot/projects/vimage/src/sys/netatm/spans/spans_subr.c#2 delete .. //depot/projects/vimage/src/sys/netatm/spans/spans_util.c#2 delete .. //depot/projects/vimage/src/sys/netatm/spans/spans_var.h#2 delete .. //depot/projects/vimage/src/sys/netatm/spans/spans_xdr.x#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/q2110_sigaa.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/q2110_sigcpcs.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/q2110_subr.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/qsaal1_sigaa.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/qsaal1_sigcpcs.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/qsaal1_subr.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscf_uni.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscf_uni.h#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscf_uni_lower.c#3 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscf_uni_upper.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscf_uni_var.h#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscop.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscop.h#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscop_lower.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscop_misc.h#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscop_pdu.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscop_pdu.h#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscop_sigaa.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscop_sigcpcs.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscop_subr.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscop_timer.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscop_upper.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/sscop_var.h#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/uni.h#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/uni_load.c#3 delete .. //depot/projects/vimage/src/sys/netatm/uni/uniarp.c#3 delete .. //depot/projects/vimage/src/sys/netatm/uni/uniarp_cache.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/uniarp_input.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/uniarp_output.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/uniarp_timer.c#3 delete .. //depot/projects/vimage/src/sys/netatm/uni/uniarp_vcm.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/uniip.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/uniip_var.h#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig.h#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_decode.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_decode.h#3 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_encode.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_if.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_mbuf.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_mbuf.h#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_msg.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_msg.h#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_print.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_print.h#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_proto.c#3 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_sigmgr_state.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_subr.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_util.c#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_var.h#2 delete .. //depot/projects/vimage/src/sys/netatm/uni/unisig_vc_state.c#2 delete .. //depot/projects/vimage/src/sys/netgraph/atm/atmpif/ng_atmpif.c#2 delete .. //depot/projects/vimage/src/sys/netgraph/atm/atmpif/ng_atmpif_harp.c#2 delete .. //depot/projects/vimage/src/sys/netgraph/atm/atmpif/ng_atmpif_var.h#2 delete .. //depot/projects/vimage/src/sys/netgraph/atm/ng_atmpif.h#2 delete .. //depot/projects/vimage/src/sys/netgraph/ng_nat.c#5 integrate .. //depot/projects/vimage/src/sys/netinet/ip_dummynet.c#10 integrate .. //depot/projects/vimage/src/sys/netinet/ip_fw_nat.c#3 integrate .. //depot/projects/vimage/src/sys/netinet/libalias/alias.c#5 integrate .. //depot/projects/vimage/src/sys/netinet/libalias/alias_db.c#5 integrate .. //depot/projects/vimage/src/sys/netinet/libalias/alias_local.h#4 integrate .. //depot/projects/vimage/src/sys/netinet/raw_ip.c#19 integrate .. //depot/projects/vimage/src/sys/netinet/sctp.h#12 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_asconf.c#17 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_asconf.h#10 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_cc_functions.c#4 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_constants.h#21 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_indata.c#24 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_input.c#24 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_input.h#6 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_lock_bsd.h#9 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_os_bsd.h#17 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_output.c#25 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_output.h#11 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_pcb.c#24 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_pcb.h#16 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_structs.h#17 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_sysctl.c#9 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_sysctl.h#7 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_timer.c#17 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_uio.h#14 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_usrreq.c#25 integrate .. //depot/projects/vimage/src/sys/netinet/sctp_var.h#16 integrate .. //depot/projects/vimage/src/sys/netinet/sctputil.c#26 integrate .. //depot/projects/vimage/src/sys/netinet/sctputil.h#16 integrate .. //depot/projects/vimage/src/sys/netinet/tcp_subr.c#40 integrate .. //depot/projects/vimage/src/sys/netinet/udp_usrreq.c#24 integrate .. //depot/projects/vimage/src/sys/netinet6/ip6_input.c#27 integrate .. //depot/projects/vimage/src/sys/netinet6/ip6_var.h#11 integrate .. //depot/projects/vimage/src/sys/netinet6/sctp6_usrreq.c#22 integrate .. //depot/projects/vimage/src/sys/netinet6/udp6_usrreq.c#23 integrate .. //depot/projects/vimage/src/sys/netipsec/ipsec.c#20 integrate .. //depot/projects/vimage/src/sys/netipsec/ipsec.h#7 integrate .. //depot/projects/vimage/src/sys/netipsec/ipsec_input.c#12 integrate .. //depot/projects/vimage/src/sys/netipsec/ipsec_osdep.h#4 delete .. //depot/projects/vimage/src/sys/netipsec/ipsec_output.c#12 integrate .. //depot/projects/vimage/src/sys/netipsec/xform_ah.c#11 integrate .. //depot/projects/vimage/src/sys/netipsec/xform_esp.c#10 integrate .. //depot/projects/vimage/src/sys/netipsec/xform_ipcomp.c#9 integrate .. //depot/projects/vimage/src/sys/netipsec/xform_ipip.c#13 integrate .. //depot/projects/vimage/src/sys/netipx/spx_usrreq.c#3 integrate .. //depot/projects/vimage/src/sys/nfs4client/nfs4_vnops.c#6 integrate .. //depot/projects/vimage/src/sys/nfsclient/nfs_vnops.c#12 integrate .. //depot/projects/vimage/src/sys/nfsserver/nfs_serv.c#7 integrate .. //depot/projects/vimage/src/sys/nlm/nlm_prot_impl.c#2 integrate .. //depot/projects/vimage/src/sys/pc98/cbus/clock.c#7 integrate .. //depot/projects/vimage/src/sys/pc98/conf/GENERIC#11 integrate .. //depot/projects/vimage/src/sys/pc98/conf/NOTES#4 integrate .. //depot/projects/vimage/src/sys/pci/if_xl.c#8 integrate .. //depot/projects/vimage/src/sys/pci/if_xlreg.h#4 integrate .. //depot/projects/vimage/src/sys/powerpc/aim/machdep.c#4 integrate .. //depot/projects/vimage/src/sys/powerpc/aim/mmu_oea.c#3 integrate .. //depot/projects/vimage/src/sys/powerpc/booke/machdep.c#2 integrate .. //depot/projects/vimage/src/sys/powerpc/booke/pmap.c#2 integrate .. //depot/projects/vimage/src/sys/powerpc/conf/GENERIC#10 integrate .. //depot/projects/vimage/src/sys/powerpc/powerpc/genassym.c#5 integrate .. //depot/projects/vimage/src/sys/powerpc/powerpc/mmu_if.m#4 integrate .. //depot/projects/vimage/src/sys/powerpc/powerpc/pmap_dispatch.c#6 integrate .. //depot/projects/vimage/src/sys/security/audit/audit_worker.c#7 integrate .. //depot/projects/vimage/src/sys/security/mac/mac_inet.c#8 integrate .. //depot/projects/vimage/src/sys/sparc64/conf/GENERIC#10 integrate .. //depot/projects/vimage/src/sys/sparc64/sparc64/identcpu.c#3 integrate .. //depot/projects/vimage/src/sys/sparc64/sparc64/pmap.c#9 integrate .. //depot/projects/vimage/src/sys/sun4v/conf/GENERIC#10 integrate .. //depot/projects/vimage/src/sys/sun4v/sun4v/pmap.c#10 integrate .. //depot/projects/vimage/src/sys/sys/clist.h#2 integrate .. //depot/projects/vimage/src/sys/sys/conf.h#7 integrate .. //depot/projects/vimage/src/sys/sys/cons.h#2 integrate .. //depot/projects/vimage/src/sys/sys/dtrace_bsd.h#1 branch .. //depot/projects/vimage/src/sys/sys/file.h#5 integrate .. //depot/projects/vimage/src/sys/sys/kdb.h#4 integrate .. //depot/projects/vimage/src/sys/sys/kernel.h#11 integrate .. //depot/projects/vimage/src/sys/sys/linker.h#3 integrate .. //depot/projects/vimage/src/sys/sys/malloc.h#3 integrate .. //depot/projects/vimage/src/sys/sys/param.h#18 integrate .. //depot/projects/vimage/src/sys/sys/pipe.h#2 integrate .. //depot/projects/vimage/src/sys/sys/proc.h#18 integrate .. //depot/projects/vimage/src/sys/sys/queue.h#2 integrate .. //depot/projects/vimage/src/sys/sys/sdt.h#1 branch .. //depot/projects/vimage/src/sys/sys/smp.h#4 integrate .. //depot/projects/vimage/src/sys/sys/systm.h#11 integrate .. //depot/projects/vimage/src/sys/sys/time.h#5 integrate .. //depot/projects/vimage/src/sys/sys/tty.h#3 integrate .. //depot/projects/vimage/src/sys/ufs/ffs/ffs_vfsops.c#8 integrate .. //depot/projects/vimage/src/sys/ufs/ffs/fs.h#2 integrate .. //depot/projects/vimage/src/sys/ufs/ufs/ufs_lookup.c#6 integrate .. //depot/projects/vimage/src/sys/vm/device_pager.c#4 integrate .. //depot/projects/vimage/src/sys/vm/pmap.h#5 integrate .. //depot/projects/vimage/src/sys/vm/vm_mmap.c#10 integrate .. //depot/projects/vimage/src/sys/vm/vm_object.c#14 integrate .. //depot/projects/vimage/src/sys/vm/vm_object.h#4 integrate .. //depot/projects/vimage/src/sys/vm/vnode_pager.c#7 integrate Differences ... ==== //depot/projects/vimage/src/sys/Makefile#8 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/sys/Makefile,v 1.46 2008/01/23 08:50:34 maxim Exp $ +# $FreeBSD: src/sys/Makefile,v 1.49 2008/05/26 10:39:52 bz Exp $ .include @@ -8,8 +8,8 @@ .endif # Directories to include in cscope name file and TAGS. -CSCOPEDIRS= boot bsm cam compat conf contrib crypto ddb dev fs gdb geom gnu \ - i4b isa kern libkern modules net net80211 netatalk netatm \ +CSCOPEDIRS= boot bsm cam compat conf contrib crypto ddb dev fs gdb geom \ + gnu isa kern libkern modules net net80211 netatalk \ netgraph netinet netinet6 netipsec netipx netnatm netncp \ netsmb nfs nfs4client nfsclient nfsserver opencrypto pccard \ pci rpc security sys ufs vm ${ARCHDIR} @@ -25,15 +25,20 @@ HTAGSFLAGS+= -at `awk -F= '/^RELEASE *=/{release=$2}; END {print "FreeBSD", release, "kernel"}' < conf/newvers.sh` # You need the devel/cscope port for this. -cscope: ${.CURDIR}/cscopenamefile - cd ${.CURDIR}; cscope -k -p4 -i cscopenamefile +cscope: cscope.out +cscope.out: ${.CURDIR}/cscope.files + cd ${.CURDIR}; cscope -k -buq -p4 + +${.CURDIR}/cscope.files: .PHONY + cd ${.CURDIR}; \ + find ${CSCOPEDIRS} -name "*.[chSs]" -a -type f > ${.TARGET} -${.CURDIR}/cscopenamefile: - cd ${.CURDIR}; find ${CSCOPEDIRS} -name "*.[csh]" > ${.TARGET} +cscope-clean: + rm -f cscope.files cscope.out cscope.in.out cscope.po.out # You need the devel/global and one of editor/emacs* ports for that. -TAGS ${.CURDIR}/TAGS: ${.CURDIR}/cscopenamefile +TAGS ${.CURDIR}/TAGS: ${.CURDIR}/cscope.files rm -f ${.CURDIR}/TAGS - cd ${.CURDIR}; xargs etags -a < ${.CURDIR}/cscopenamefile + cd ${.CURDIR}; xargs etags -a < ${.CURDIR}/cscope.files .include ==== //depot/projects/vimage/src/sys/amd64/amd64/exception.S#5 (text+ko) ==== @@ -31,12 +31,13 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/amd64/amd64/exception.S,v 1.131 2007/12/07 08:20:15 jkoshy Exp $ + * $FreeBSD: src/sys/amd64/amd64/exception.S,v 1.132 2008/05/24 06:32:26 jb Exp $ */ #include "opt_atpic.h" #include "opt_compat.h" #include "opt_hwpmc_hooks.h" +#include "opt_kdtrace.h" #include #include @@ -44,6 +45,21 @@ #include "assym.s" +#ifdef KDTRACE_HOOKS + .bss + .globl dtrace_invop_jump_addr + .align 8 + .type dtrace_invop_jump_addr, @object + .size dtrace_invop_jump_addr, 8 +dtrace_invop_jump_addr: + .zero 8 + .globl dtrace_invop_calltrap_addr + .align 8 + .type dtrace_invop_calltrap_addr, @object + .size dtrace_invop_calltrap_addr, 8 +dtrace_invop_calltrap_addr: + .zero 8 +#endif .text #ifdef HWPMC_HOOKS ENTRY(start_exceptions) @@ -170,6 +186,30 @@ movq %r14,TF_R14(%rsp) movq %r15,TF_R15(%rsp) FAKE_MCOUNT(TF_RIP(%rsp)) +#ifdef KDTRACE_HOOKS + /* + * DTrace Function Boundary Trace (fbt) probes are triggered + * by int3 (0xcc) which causes the #BP (T_BPTFLT) breakpoint + * interrupt. For all other trap types, just handle them in + * the usual way. + */ + cmpq $T_BPTFLT,TF_TRAPNO(%rsp) + jne calltrap + + /* Check if there is no DTrace hook registered. */ + cmpq $0,dtrace_invop_jump_addr + je calltrap + + /* + * Set our jump address for the jump back in the event that + * the breakpoint wasn't caused by DTrace at all. + */ + movq $calltrap, dtrace_invop_calltrap_addr(%rip) + + /* Jump to the code hooked in by DTrace. */ + movq dtrace_invop_jump_addr, %rax + jmpq *dtrace_invop_jump_addr +#endif .globl calltrap .type calltrap,@function calltrap: ==== //depot/projects/vimage/src/sys/amd64/amd64/genassym.c#8 (text+ko) ==== @@ -33,7 +33,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/genassym.c,v 1.167 2008/03/23 22:46:37 peter Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/genassym.c,v 1.168 2008/05/16 13:23:47 attilio Exp $"); #include "opt_compat.h" #include "opt_kstack_pages.h" @@ -214,7 +214,4 @@ ASSYM(KUC32SEL, GSEL(GUCODE32_SEL, SEL_UPL)); ASSYM(SEL_RPL_MASK, SEL_RPL_MASK); -ASSYM(MTX_LOCK, offsetof(struct mtx, mtx_lock)); -ASSYM(MTX_RECURSECNT, offsetof(struct mtx, mtx_recurse)); - ASSYM(MSR_GSBASE, MSR_GSBASE); ==== //depot/projects/vimage/src/sys/amd64/amd64/identcpu.c#8 (text+ko) ==== @@ -39,7 +39,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.158 2008/03/02 07:58:40 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/identcpu.c,v 1.159 2008/05/23 04:03:52 alc Exp $"); #include "opt_cpu.h" @@ -71,8 +71,6 @@ static void print_AMD_info(void); static void print_AMD_assoc(int i); -void setPQL2(int *const size, int *const ways); -static void setPQL2_AMD(int *const size, int *const ways); int cpu_class; char machine[] = "amd64"; @@ -550,30 +548,3 @@ print_AMD_l2_assoc((regs[2] >> 12) & 0x0f); } } - -static void -setPQL2_AMD(int *const size, int *const ways) -{ - if (cpu_exthigh >= 0x80000006) { - u_int regs[4]; - - do_cpuid(0x80000006, regs); - *size = regs[2] >> 16; - *ways = (regs[2] >> 12) & 0x0f; - switch (*ways) { - case 0: /* disabled/not present */ - case 15: /* fully associative */ - default: *ways = 1; break; /* reserved configuration */ - case 4: *ways = 4; break; - case 6: *ways = 8; break; - case 8: *ways = 16; break; - } - } -} - -void -setPQL2(int *const size, int *const ways) -{ - if (strcmp(cpu_vendor, "AuthenticAMD") == 0) - setPQL2_AMD(size, ways); -} ==== //depot/projects/vimage/src/sys/amd64/amd64/local_apic.c#10 (text+ko) ==== @@ -32,9 +32,10 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.44 2008/03/16 10:58:02 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/local_apic.c,v 1.45 2008/05/24 06:32:26 jb Exp $"); #include "opt_hwpmc_hooks.h" +#include "opt_kdtrace.h" #include "opt_ddb.h" @@ -65,6 +66,11 @@ #include #endif +#ifdef KDTRACE_HOOKS +#include +cyclic_clock_func_t lapic_cyclic_clock_func[MAXCPU]; +#endif + /* Sanity checks on IDT vectors. */ CTASSERT(APIC_IO_INTS + APIC_NUM_IOINTS == APIC_TIMER_INT); CTASSERT(APIC_TIMER_INT < APIC_LOCAL_INTS); @@ -668,6 +674,17 @@ (*la->la_timer_count)++; critical_enter(); +#ifdef KDTRACE_HOOKS + /* + * If the DTrace hooks are configured and a callback function + * has been registered, then call it to process the high speed + * timers. + */ + int cpu = PCPU_GET(cpuid); + if (lapic_cyclic_clock_func[cpu] != NULL) + (*lapic_cyclic_clock_func[cpu])(frame); +#endif + /* Fire hardclock at hz. */ la->la_hard_ticks += hz; if (la->la_hard_ticks >= lapic_timer_hz) { ==== //depot/projects/vimage/src/sys/amd64/amd64/pmap.c#15 (text+ko) ==== @@ -77,7 +77,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.617 2008/05/11 20:33:46 alc Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/pmap.c,v 1.619 2008/06/01 07:36:59 alc Exp $"); /* * Manages physical address maps. @@ -2775,22 +2775,20 @@ PMAP_LOCK_ASSERT(pmap, MA_OWNED); firstpte = (pt_entry_t *)PHYS_TO_DMAP(*pde & PG_FRAME); - KASSERT((*firstpte & PG_V) != 0, - ("pmap_promote_pde: firstpte is missing PG_V")); - if ((*firstpte & PG_A) == 0) { + newpde = *firstpte; + if ((newpde & (PG_A | PG_V)) != (PG_A | PG_V)) { pmap_pde_p_failures++; CTR2(KTR_PMAP, "pmap_promote_pde: failure for va %#lx" " in pmap %p", va, pmap); return; } - pa = *firstpte & PG_PS_FRAME; - newpde = *firstpte; if ((newpde & (PG_M | PG_RW)) == PG_RW) newpde &= ~PG_RW; /* * Check all the ptes before promotion */ + pa = newpde & PG_PS_FRAME; for (pte = firstpte; pte < firstpte + NPTEPG; pte++) { retry: oldpte = *pte; @@ -4458,18 +4456,6 @@ critical_exit(); } -vm_offset_t -pmap_addr_hint(vm_object_t obj, vm_offset_t addr, vm_size_t size) -{ - - if ((obj == NULL) || (size < NBPDR) || (obj->type != OBJT_DEVICE)) { - return addr; - } - - addr = (addr + (NBPDR - 1)) & ~(NBPDR - 1); - return addr; -} - /* * Increase the starting virtual address of the given mapping if a * different alignment might result in more superpage mappings. ==== //depot/projects/vimage/src/sys/amd64/amd64/trap.c#9 (text+ko) ==== @@ -38,7 +38,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.325 2008/03/12 10:11:54 jeff Exp $"); +__FBSDID("$FreeBSD: src/sys/amd64/amd64/trap.c,v 1.326 2008/05/24 06:32:26 jb Exp $"); /* * AMD64 Trap and System call handling @@ -49,6 +49,7 @@ #include "opt_hwpmc_hooks.h" #include "opt_isa.h" #include "opt_kdb.h" +#include "opt_kdtrace.h" #include "opt_ktrace.h" #include @@ -94,6 +95,26 @@ #endif #include +#ifdef KDTRACE_HOOKS +#include + +/* + * This is a hook which is initialised by the dtrace module + * to handle traps which might occur during DTrace probe + * execution. + */ +dtrace_trap_func_t dtrace_trap_func; + +dtrace_doubletrap_func_t dtrace_doubletrap_func; + +/* + * This is a hook which is initialised by the systrace module + * when it is loaded. This keeps the DTrace syscall provider + * implementation opaque. + */ +systrace_probe_func_t systrace_probe_func; +#endif + extern void trap(struct trapframe *frame); extern void syscall(struct trapframe *frame); void dblfault_handler(struct trapframe *frame); @@ -199,6 +220,24 @@ goto out; #endif +#ifdef KDTRACE_HOOKS + /* + * A trap can occur while DTrace executes a probe. Before + * executing the probe, DTrace blocks re-scheduling and sets + * a flag in it's per-cpu flags to indicate that it doesn't + * want to fault. On returning from the the probe, the no-fault + * flag is cleared and finally re-scheduling is enabled. + * + * If the DTrace kernel module has registered a trap handler, + * call it and if it returns non-zero, assume that it has + * handled the trap and modified the trap frame so that this + * function can return normally. + */ + if (dtrace_trap_func != NULL) + if ((*dtrace_trap_func)(frame, type)) + goto out; +#endif + if ((frame->tf_rflags & PSL_I) == 0) { /* * Buggy application or kernel code has disabled >>> TRUNCATED FOR MAIL (1000 lines) <<< From jb at FreeBSD.org Sun Jun 1 23:49:33 2008 From: jb at FreeBSD.org (John Birrell) Date: Sun Jun 1 23:49:38 2008 Subject: PERFORCE change 142724 for review Message-ID: <200806012349.m51NnWNI026064@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142724 Change 142724 by jb@freebsd3 on 2008/06/01 23:49:00 IFC Affected files ... .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/Makefile#10 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#80 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.committers.sgml#45 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.develalumni.sgml#20 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/cups/Makefile#1 branch .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/cups/article.sgml#1 branch .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/ldap-auth/Makefile#1 branch .. //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/ldap-auth/article.sgml#1 branch .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/faq/book.sgml#20 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/advanced-networking/chapter.sgml#15 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/config/chapter.sgml#12 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/firewalls/chapter.sgml#16 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/install/chapter.sgml#18 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/kernelconfig/chapter.sgml#13 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/mail/chapter.sgml#6 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/ppp-and-slip/chapter.sgml#8 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/serialcomms/chapter.sgml#10 integrate .. //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/vinum/chapter.sgml#6 integrate .. //depot/projects/dtrace/doc/share/sgml/man-refs.ent#33 integrate .. //depot/projects/dtrace/ports/MOVED#94 integrate .. //depot/projects/dtrace/ports/Tools/scripts/tindex#6 integrate .. //depot/projects/dtrace/ports/UPDATING#76 integrate .. //depot/projects/dtrace/src/MAINTAINERS#16 integrate .. //depot/projects/dtrace/src/games/fortune/datfiles/freebsd-tips#7 integrate .. //depot/projects/dtrace/src/release/doc/en_US.ISO8859-1/readme/article.sgml#6 integrate .. //depot/projects/dtrace/src/release/doc/en_US.ISO8859-1/relnotes/article.sgml#23 integrate .. //depot/projects/dtrace/src/release/doc/share/sgml/release.ent#9 integrate .. //depot/projects/dtrace/src/share/sendmail/Makefile#4 integrate .. //depot/projects/dtrace/src/sys/amd64/amd64/pmap.c#45 integrate .. //depot/projects/dtrace/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#9 integrate .. //depot/projects/dtrace/src/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace_impl.h#6 integrate .. //depot/projects/dtrace/src/sys/dev/ath/ah_osdep.h#5 integrate .. //depot/projects/dtrace/src/sys/dev/atkbdc/psm.c#10 integrate .. //depot/projects/dtrace/src/sys/dev/nve/if_nve.c#8 integrate .. //depot/projects/dtrace/src/sys/dev/nve/if_nvereg.h#5 integrate .. //depot/projects/dtrace/src/sys/dev/pccard/pccard_cis.c#6 integrate .. //depot/projects/dtrace/src/sys/fs/devfs/devfs_vnops.c#21 integrate .. //depot/projects/dtrace/src/sys/modules/dtrace/Makefile#32 integrate .. //depot/projects/dtrace/src/sys/netgraph/ng_nat.c#10 integrate .. //depot/projects/dtrace/src/sys/netinet/ip_fw_nat.c#2 integrate .. //depot/projects/dtrace/src/sys/netinet/libalias/alias.c#10 integrate .. //depot/projects/dtrace/src/sys/netinet/libalias/alias_db.c#8 integrate .. //depot/projects/dtrace/src/sys/netinet/libalias/alias_local.h#7 integrate .. //depot/projects/dtrace/src/usr.sbin/bsnmpd/modules/snmp_pf/pf_snmp.c#5 integrate .. //depot/projects/dtrace/src/usr.sbin/sicontrol/sicontrol.c#4 integrate .. //depot/projects/dtrace/www/en/docs/books.sgml#18 integrate .. //depot/projects/dtrace/www/en/news/news.sgml#8 integrate .. //depot/projects/dtrace/www/en/platforms/arm.sgml#6 integrate .. //depot/projects/dtrace/www/en/platforms/mips.sgml#4 integrate .. //depot/projects/dtrace/www/en/security/security.sgml#14 integrate Differences ... ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/Makefile#10 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: doc/en_US.ISO8859-1/articles/Makefile,v 1.58 2008/04/28 15:44:35 gabor Exp $ +# $FreeBSD: doc/en_US.ISO8859-1/articles/Makefile,v 1.60 2008/05/31 13:32:19 remko Exp $ SUBDIR = SUBDIR+= 5-roadmap @@ -12,6 +12,7 @@ SUBDIR+= contributing SUBDIR+= contributing-ports SUBDIR+= contributors +SUBDIR+= cups SUBDIR+= cvs-freebsd SUBDIR+= cvsup-advanced SUBDIR+= dialup-firewall @@ -29,6 +30,7 @@ SUBDIR+= hubs SUBDIR+= ipsec-must SUBDIR+= laptop +SUBDIR+= ldap-auth SUBDIR+= linux-comparison SUBDIR+= linux-emulation SUBDIR+= linux-users ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/articles/contributors/contrib.additional.sgml#80 (text+ko) ==== @@ -1,4 +1,4 @@ - + + + @@ -324,7 +324,7 @@ 2003) - + &a.amurai; (1995 - 2003) @@ -705,8 +705,8 @@ Andrew L. Moore (1993 - 1995) - - @@ -2165,11 +2165,6 @@ ubt0: Interface 1 (alt.config 5) endpoints: isoc-in=0x83, isoc-out=0x3, wMaxPacketSize=49, nframes=6, buffer size=294 - - The Bluetooth stack has to be started manually on &os; 6.0, and - on &os; 5.X before 5.5. It is done automatically from &man.devd.8; - on &os; 5.5, 6.1 and newer. - Copy /usr/share/examples/netgraph/bluetooth/rc.bluetooth into some convenient place, like /etc/rc.bluetooth. @@ -2190,7 +2185,6 @@ Number of ACL packets: 8 Max. SCO packet size: 64 bytes Number of SCO packets: 8 - @@ -2509,12 +2503,6 @@ &prompt.root; /etc/rc.d/sdpd start - On &os; 6.0, and on &os; 5.X before 5.5, - sdpd is not integrated into the system - startup scripts. It has to be started manually with: - - &prompt.root; sdpd - The local server application that wants to provide Bluetooth service to the remote clients will register service with the local SDP daemon. The example of such application is &man.rfcomm.pppd.8;. ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/config/chapter.sgml#12 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -367,13 +367,11 @@ While every script must meet some minimal requirements, most of the time these requirements are &os; version - agnostic. Each script must have a .sh - extension appended to the end and every script must be - executable by the system. The latter may be achieved by using - the chmod command and setting the unique permissions - of 755. There should also be, at minimal, - an option to start the application and an - option to stop the application. + agnostic. Each script must be executable by the system; this is + typically achieved by using the chmod command and + setting the unique permissions of 555. There should + also be, at minimal, options to start and stop + the application. The simplest start up script would probably look a little bit like this one: @@ -2171,7 +2169,7 @@ connected at once, the resources needed may be similar to a high-scale web server. - As of FreeBSD 4.5, kern.maxusers is + The variable kern.maxusers is automatically sized at boot based on the amount of memory available in the system, and may be determined at run-time by inspecting the value of the read-only kern.maxusers sysctl. @@ -2184,9 +2182,7 @@ boot-time or run-time in /boot/loader.conf (see the &man.loader.conf.5; man page or the /boot/defaults/loader.conf file for some hints) - or as described elsewhere in this document. Systems older than - FreeBSD 4.4 must set this value via the kernel &man.config.8; - option instead. + or as described elsewhere in this document. In older releases, the system will auto-tune maxusers for you if you explicitly set it to @@ -2218,14 +2214,7 @@ limit the number of users which can log into your machine. It simply sets various table sizes to reasonable values considering the maximum number of users you will likely have on your system - and how many processes each of them will be running. One keyword - which does limit the number of simultaneous - remote logins and X terminal windows is pseudo-device pty - 16. With &os; 5.X, you do not have to - worry about this number since the &man.pty.4; driver is - auto-cloning; you simply use the line - device pty in your configuration file. + and how many processes each of them will be running. ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/firewalls/chapter.sgml#16 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -393,9 +393,8 @@ When browsing the pf user's guide, please keep in mind that different versions of &os; contain different versions of pf. The - pf firewall in &os; 5.X is at the level - of OpenBSD version 3.5 and in &os; 6.X is at the level of OpenBSD - version 3.7. + pf firewall in &os; 6.X is at the level + of OpenBSD version 3.7. The &a.pf; is a good place to ask questions about ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/install/chapter.sgml#18 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -2030,15 +2030,6 @@ G for gigabytes, or C for cylinders. - Beginning with FreeBSD 5.X, users can: select - UFS2 (which is default on &os; 5.1 and - above) using the Custom Newfs - (Z) option, create labels with - Auto Defaults and modify them with the Custom Newfs option or - add during the regular creation period. - Do not forget to add for SoftUpdates if you use the Custom Newfs - option! -
    Free Space for Root Partition @@ -2428,8 +2419,8 @@ installation. An option can be configured by re-entering the configuration options before booting the new FreeBSD system or after installation using - sysinstall (/stand/sysinstall - in &os; versions older than 5.2) and selecting + sysinstall + and selecting Configure. @@ -3472,8 +3463,8 @@ Groups can also be added at this time if specific needs are known. Otherwise, this may be accessed through using - sysinstall (/stand/sysinstall - in &os; versions older than 5.2) after installation is + sysinstall + after installation is completed. When you are finished adding users, select @@ -3512,9 +3503,7 @@ If you need to configure additional network services or any other configuration, you can do it at this point or - after installation with sysinstall - (/stand/sysinstall in &os; versions older - than 5.2). + after installation with sysinstall. User Confirmation Requested Visit the general configuration menu for a chance to set any last @@ -4147,7 +4136,7 @@ drive is not probed. - &os; 5.0 and above makes extensive use of the system + &os; makes extensive use of the system ACPI service on the i386, amd64 and ia64 platforms to aid in system configuration if it is detected during boot. Unfortunately, some bugs still exist in both the @@ -4417,9 +4406,6 @@ &prompt.root; cu -l /dev/cuad0 - On &os; 5.X, use - /dev/cuaa0 instead of - /dev/cuad0. @@ -4497,7 +4483,7 @@ That directory will normally contain the following images: - FreeBSD 5.<replaceable>X</replaceable> and 6.<replaceable>X</replaceable> + <title>FreeBSD 6.<replaceable>X</replaceable> and 7.<replaceable>X</replaceable> ISO Image Names and Meanings @@ -4531,14 +4517,14 @@ version-RELEASE-arch-disc2.iso - &os; documentation (prior to &os; 6.2) and as many + As many third-party packages as would fit on the disc. version-RELEASE-arch-docs.iso - &os; documentation (for &os; 6.2 and later). + &os; documentation. ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/kernelconfig/chapter.sgml#13 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -975,7 +975,7 @@ #device apm Advanced Power Management support. Useful for laptops, - although in &os; 5.X and above this is disabled in + although this is disabled in GENERIC by default. # Add suspend/resume support for the i8254. ==== //depot/projects/dtrace/doc/en_US.ISO8859-1/books/handbook/mail/chapter.sgml#6 (text+ko) ==== @@ -1,7 +1,7 @@ @@ -702,12 +702,6 @@ Disable <application>sendmail</application> - The procedure used to start - sendmail changed significantly - between 4.5-RELEASE, 4.6-RELEASE, and later releases. - Therefore, the procedure used to disable it is subtly - different. - If you disable sendmail's outgoing mail service, it is important that you replace it @@ -724,53 +718,10 @@ never be delivered. - - FreeBSD 4.5-STABLE before 2002/4/4 and Earlier - (Including 4.5-RELEASE and Earlier) - - Enter: - - sendmail_enable="NO" - - into /etc/rc.conf. This will disable - sendmail's incoming mail service, - but if /etc/mail/mailer.conf (see below) - is not changed, sendmail will - still be used to send e-mail. - - - - FreeBSD 4.5-STABLE after 2002/4/4 - (Including 4.6-RELEASE and Later) - In order to completely disable sendmail, including the outgoing mail service, you must use - sendmail_enable="NONE" - - in /etc/rc.conf. - - If you only want to disable - sendmail's incoming mail service, - you should set - - sendmail_enable="NO" - - in /etc/rc.conf. However, if - incoming mail is disabled, local delivery will still - function. More information on - sendmail's startup options is - available from the &man.rc.sendmail.8; manual page. >>> TRUNCATED FOR MAIL (1000 lines) <<< From jb at FreeBSD.org Sun Jun 1 23:53:37 2008 From: jb at FreeBSD.org (John Birrell) Date: Sun Jun 1 23:53:40 2008 Subject: PERFORCE change 142725 for review Message-ID: <200806012353.m51Nravl026374@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142725 Change 142725 by jb@freebsd3 on 2008/06/01 23:52:47 IF7 Affected files ... .. //depot/projects/dtrace7/src/MAINTAINERS#2 integrate .. //depot/projects/dtrace7/src/sys/conf/files.sparc64#4 integrate .. //depot/projects/dtrace7/src/sys/conf/files.sun4v#4 integrate .. //depot/projects/dtrace7/src/sys/dev/sym/sym_defs.h#2 integrate .. //depot/projects/dtrace7/src/sys/dev/sym/sym_fw.h#2 integrate .. //depot/projects/dtrace7/src/sys/dev/sym/sym_fw1.h#2 integrate .. //depot/projects/dtrace7/src/sys/dev/sym/sym_fw2.h#2 integrate .. //depot/projects/dtrace7/src/sys/dev/sym/sym_hipd.c#2 integrate .. //depot/projects/dtrace7/src/sys/fs/devfs/devfs_vnops.c#3 integrate .. //depot/projects/dtrace7/src/sys/ia64/ia64/machdep.c#7 integrate .. //depot/projects/dtrace7/src/sys/kern/kern_conf.c#6 integrate .. //depot/projects/dtrace7/src/sys/kern/tty.c#4 integrate .. //depot/projects/dtrace7/src/sys/nfsserver/nfs_serv.c#3 integrate .. //depot/projects/dtrace7/src/sys/sparc64/fhc/fhc.c#2 integrate .. //depot/projects/dtrace7/src/sys/sparc64/include/bus_common.h#3 integrate .. //depot/projects/dtrace7/src/sys/sparc64/include/intr_machdep.h#3 integrate .. //depot/projects/dtrace7/src/sys/sparc64/isa/isa.c#2 integrate .. //depot/projects/dtrace7/src/sys/sparc64/pci/ofw_pci.h#2 integrate .. //depot/projects/dtrace7/src/sys/sparc64/pci/ofw_pci_if.m#3 delete .. //depot/projects/dtrace7/src/sys/sparc64/pci/psycho.c#5 integrate .. //depot/projects/dtrace7/src/sys/sparc64/sbus/sbus.c#3 integrate .. //depot/projects/dtrace7/src/sys/sparc64/sparc64/intr_machdep.c#4 integrate .. //depot/projects/dtrace7/src/sys/sparc64/sparc64/mp_machdep.c#4 integrate .. //depot/projects/dtrace7/src/sys/sparc64/sparc64/upa.c#2 integrate .. //depot/projects/dtrace7/src/sys/sun4v/sun4v/hv_pci.c#2 integrate Differences ... ==== //depot/projects/dtrace7/src/MAINTAINERS#2 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.145 2007/05/23 21:47:19 jfv Exp $ +$FreeBSD: src/MAINTAINERS,v 1.145.2.1 2008/05/31 22:25:43 peter Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -72,7 +72,6 @@ ps gad I am working on a number of changes to this. Would like advance notice of major changes planned to it. cvs peter Heads-up appreciated, try not to break it. -ncurses peter Heads-up appreciated, try not to break it. nvi peter Try not to break it. libz peter Try not to break it. pppd/chat peter Try not to break it. ==== //depot/projects/dtrace7/src/sys/conf/files.sparc64#4 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.sparc64,v 1.92.2.2 2008/04/10 22:09:22 rwatson Exp $ +# $FreeBSD: src/sys/conf/files.sparc64,v 1.92.2.3 2008/05/30 22:24:34 marius Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -83,7 +83,6 @@ sparc64/pci/ofw_pcib.c optional pci sparc64/pci/ofw_pcib_subr.c optional pci sparc64/pci/ofw_pcibus.c optional pci -sparc64/pci/ofw_pci_if.m optional pci sparc64/pci/psycho.c optional pci sparc64/sbus/dma_sbus.c optional sbus sparc64/sbus/sbus.c optional sbus ==== //depot/projects/dtrace7/src/sys/conf/files.sun4v#4 (text+ko) ==== @@ -1,7 +1,7 @@ # This file tells config what files go into building a kernel, # files marked standard are always included. # -# $FreeBSD: src/sys/conf/files.sun4v,v 1.11.2.2 2008/05/07 21:19:34 marius Exp $ +# $FreeBSD: src/sys/conf/files.sun4v,v 1.11.2.3 2008/05/30 22:24:34 marius Exp $ # # The long compile-with and dependency lines are required because of # limitations in config: backslash-newline doesn't work in strings, and @@ -48,7 +48,6 @@ sparc64/pci/ofw_pcib.c optional pci sparc64/pci/ofw_pcib_subr.c optional pci sparc64/pci/ofw_pcibus.c optional pci -sparc64/pci/ofw_pci_if.m optional pci # XXX hvcons should be optional sun4v/sun4v/hvcons.c standard ==== //depot/projects/dtrace7/src/sys/dev/sym/sym_defs.h#2 (text+ko) ==== @@ -55,7 +55,7 @@ * SUCH DAMAGE. */ -/* $FreeBSD: src/sys/dev/sym/sym_defs.h,v 1.11 2005/01/06 01:43:24 imp Exp $ */ +/* $FreeBSD: src/sys/dev/sym/sym_defs.h,v 1.11.10.1 2008/05/30 22:00:02 marius Exp $ */ #ifndef SYM_DEFS_H #define SYM_DEFS_H @@ -90,7 +90,7 @@ struct sym_pci_chip { u_short device_id; unsigned short revision_id; - char *name; + const char *name; u_char burst_max; /* log-base-2 of max burst */ u_char offset_max; u_char nr_divisor; ==== //depot/projects/dtrace7/src/sys/dev/sym/sym_fw.h#2 (text+ko) ==== @@ -55,7 +55,7 @@ * SUCH DAMAGE. */ -/* $FreeBSD: src/sys/dev/sym/sym_fw.h,v 1.5 2005/01/06 01:43:24 imp Exp $ */ +/* $FreeBSD: src/sys/dev/sym/sym_fw.h,v 1.5.10.1 2008/05/30 22:00:02 marius Exp $ */ #ifndef SYM_FW_H #define SYM_FW_H @@ -135,17 +135,17 @@ * Generic structure that defines a firmware. */ struct sym_fw { - char *name; /* Name we want to print out */ - u32 *a_base; /* Pointer to script A template */ + const char *name; /* Name we want to print out */ + const u32 *a_base;/* Pointer to script A template */ int a_size; /* Size of script A */ - struct sym_fwa_ofs + const struct sym_fwa_ofs *a_ofs; /* Useful offsets in script A */ - u32 *b_base; /* Pointer to script B template */ + const u32 *b_base;/* Pointer to script B template */ int b_size; /* Size of script B */ - struct sym_fwb_ofs + const struct sym_fwb_ofs *b_ofs; /* Useful offsets in script B */ /* Setup and patch methods for this firmware */ - void (*setup)(struct sym_hcb *, struct sym_fw *); + void (*setup)(struct sym_hcb *, const struct sym_fw *); void (*patch)(struct sym_hcb *); }; @@ -155,8 +155,8 @@ #define SYM_FW_ENTRY(fw, name) \ { \ name, \ - (u32 *) &fw##a_scr, sizeof(fw##a_scr), &fw##a_ofs, \ - (u32 *) &fw##b_scr, sizeof(fw##b_scr), &fw##b_ofs, \ + (const u32 *) &fw##a_scr, sizeof(fw##a_scr), &fw##a_ofs,\ + (const u32 *) &fw##b_scr, sizeof(fw##b_scr), &fw##b_ofs,\ fw##_setup, fw##_patch \ } ==== //depot/projects/dtrace7/src/sys/dev/sym/sym_fw1.h#2 (text+ko) ==== @@ -55,7 +55,7 @@ * SUCH DAMAGE. */ -/* $FreeBSD: src/sys/dev/sym/sym_fw1.h,v 1.8 2006/08/04 07:56:34 yar Exp $ */ +/* $FreeBSD: src/sys/dev/sym/sym_fw1.h,v 1.8.2.1 2008/05/30 22:00:02 marius Exp $ */ /* * Scripts for SYMBIOS-Processor @@ -219,7 +219,7 @@ u32 snoopend [ 2]; }; -static struct SYM_FWA_SCR SYM_FWA_SCR = { +static const struct SYM_FWA_SCR SYM_FWA_SCR = { /*--------------------------< START >----------------------------*/ { /* * Switch the LED on. @@ -1342,7 +1342,7 @@ }/*--------------------------<>----------------------------------*/ }; -static struct SYM_FWB_SCR SYM_FWB_SCR = { +static const struct SYM_FWB_SCR SYM_FWB_SCR = { /*-------------------------< NO_DATA >--------------------------*/ { SCR_JUMP, PADDR_B (data_ovrun), ==== //depot/projects/dtrace7/src/sys/dev/sym/sym_fw2.h#2 (text+ko) ==== @@ -55,7 +55,7 @@ * SUCH DAMAGE. */ -/* $FreeBSD: src/sys/dev/sym/sym_fw2.h,v 1.9 2006/08/04 07:56:34 yar Exp $ */ +/* $FreeBSD: src/sys/dev/sym/sym_fw2.h,v 1.9.2.1 2008/05/30 22:00:02 marius Exp $ */ /* * Scripts for SYMBIOS-Processor @@ -210,7 +210,7 @@ u32 snoopend [ 2]; }; -static struct SYM_FWA_SCR SYM_FWA_SCR = { +static const struct SYM_FWA_SCR SYM_FWA_SCR = { /*--------------------------< START >----------------------------*/ { /* * Switch the LED on. @@ -1195,7 +1195,7 @@ }/*-------------------------<>-----------------------------------*/ }; -static struct SYM_FWB_SCR SYM_FWB_SCR = { +static const struct SYM_FWB_SCR SYM_FWB_SCR = { /*--------------------------< START64 >--------------------------*/ { /* * SCRIPT entry point for the 895A, 896 and 1010. ==== //depot/projects/dtrace7/src/sys/dev/sym/sym_hipd.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Device driver optimized for the Symbios/LSI 53C896/53C895A/53C1010 + * Device driver optimized for the Symbios/LSI 53C896/53C895A/53C1010 * PCI-SCSI controllers. * * Copyright (C) 1999-2001 Gerard Roudier @@ -8,11 +8,11 @@ * 53C810A, 53C825A, 53C860, 53C875, 53C876, 53C885, 53C895, * 53C810, 53C815, 53C825 and the 53C1510D is 53C8XX mode. * - * + * * This driver for FreeBSD-CAM is derived from the Linux sym53c8xx driver. * Copyright (C) 1998-1999 Gerard Roudier * - * The sym53c8xx driver is derived from the ncr53c8xx driver that had been + * The sym53c8xx driver is derived from the ncr53c8xx driver that had been * a port of the FreeBSD ncr driver to Linux-1.2.13. * * The original ncr driver has been written for 386bsd and FreeBSD by @@ -20,8 +20,8 @@ * Stefan Esser * Copyright (C) 1994 Wolfgang Stanglmeier * - * The initialisation code, and part of the code that addresses - * FreeBSD-CAM services is based on the aic7xxx driver for FreeBSD-CAM + * The initialisation code, and part of the code that addresses + * FreeBSD-CAM services is based on the aic7xxx driver for FreeBSD-CAM * written by Justin T. Gibbs. * * Other major contributions: @@ -56,7 +56,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/sym/sym_hipd.c,v 1.67 2007/07/20 23:02:01 se Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/sym/sym_hipd.c,v 1.67.2.3 2008/05/30 22:00:02 marius Exp $"); #define SYM_DRIVER_NAME "sym-1.6.5-20000902" @@ -118,12 +118,12 @@ /* * IA32 architecture does not reorder STORES and prevents - * LOADS from passing STORES. It is called `program order' - * by Intel and allows device drivers to deal with memory - * ordering by only ensuring that the code is not reordered + * LOADS from passing STORES. It is called `program order' + * by Intel and allows device drivers to deal with memory + * ordering by only ensuring that the code is not reordered * by the compiler when ordering is required. - * Other architectures implement a weaker ordering that - * requires memory barriers (and also IO barriers when they + * Other architectures implement a weaker ordering that + * requires memory barriers (and also IO barriers when they * make sense) to be used. */ @@ -154,12 +154,12 @@ static __inline struct sym_quehead *sym_que_first(struct sym_quehead *head) { - return (head->flink == head) ? 0 : head->flink; + return (head->flink == head) ? NULL : head->flink; } static __inline struct sym_quehead *sym_que_last(struct sym_quehead *head) { - return (head->blink == head) ? 0 : head->blink; + return (head->blink == head) ? NULL : head->blink; } static __inline void __sym_que_add(struct sym_quehead * new, @@ -218,7 +218,7 @@ if (elem != head) __sym_que_del(head, elem->flink); else - elem = 0; + elem = NULL; return elem; } @@ -231,7 +231,7 @@ if (elem != head) __sym_que_del(elem->blink, head); else - elem = 0; + elem = NULL; return elem; } @@ -248,7 +248,7 @@ /* * Simple bitmap operations. - */ + */ #define sym_set_bit(p, n) (((u32 *)(p))[(n)>>5] |= (1<<((n)&0x1f))) #define sym_clr_bit(p, n) (((u32 *)(p))[(n)>>5] &= ~(1<<((n)&0x1f))) #define sym_is_bit(p, n) (((u32 *)(p))[(n)>>5] & (1<<((n)&0x1f))) @@ -292,7 +292,7 @@ #endif /* - * Asynchronous pre-scaler (ns). Shall be 40 for + * Asynchronous pre-scaler (ns). Shall be 40 for * the SCSI timings to be compliant. */ #define SYM_CONF_MIN_ASYNC (40) @@ -300,7 +300,7 @@ /* * Number of entries in the START and DONE queues. * - * We limit to 1 PAGE in order to succeed allocation of + * We limit to 1 PAGE in order to succeed allocation of * these queues. Each entry is 8 bytes long (2 DWORDS). */ #ifdef SYM_CONF_MAX_START @@ -357,18 +357,18 @@ /* * Simple power of two buddy-like allocator. * - * This simple code is not intended to be fast, but to + * This simple code is not intended to be fast, but to * provide power of 2 aligned memory allocations. - * Since the SCRIPTS processor only supplies 8 bit arithmetic, - * this allocator allows simple and fast address calculations - * from the SCRIPTS code. In addition, cache line alignment + * Since the SCRIPTS processor only supplies 8 bit arithmetic, + * this allocator allows simple and fast address calculations + * from the SCRIPTS code. In addition, cache line alignment * is guaranteed for power of 2 cache line size. * - * This allocator has been developped for the Linux sym53c8xx - * driver, since this O/S does not provide naturally aligned + * This allocator has been developped for the Linux sym53c8xx + * driver, since this O/S does not provide naturally aligned * allocations. - * It has the advantage of allowing the driver to use private - * pages of memory that will be useful if we ever need to deal + * It has the advantage of allowing the driver to use private + * pages of memory that will be useful if we ever need to deal * with IO MMUs for PCI. */ @@ -428,7 +428,7 @@ m_link_s *h = mp->h; if (size > MEMO_CLUSTER_SIZE) - return 0; + return NULL; while (size > s) { s <<= 1; @@ -440,7 +440,7 @@ if (s == MEMO_CLUSTER_SIZE) { h[j].next = (m_link_s *) M_GETP(); if (h[j].next) - h[j].next->next = 0; + h[j].next->next = NULL; break; } ++j; @@ -453,7 +453,7 @@ j -= 1; s >>= 1; h[j].next = (m_link_s *) (a+s); - h[j].next->next = 0; + h[j].next->next = NULL; } } #ifdef DEBUG @@ -540,7 +540,7 @@ * Default memory pool we donnot need to involve in DMA. */ /* - * With the `bus dma abstraction', we use a separate pool for + * With the `bus dma abstraction', we use a separate pool for * memory we donnot need to involve in DMA. */ static m_addr_t ___mp0_getp(m_pool_s *mp) @@ -592,11 +592,11 @@ * DMAable pools. */ /* - * With `bus dma abstraction', we use a separate pool per parent - * BUS handle. A reverse table (hashed) is maintained for virtual + * With `bus dma abstraction', we use a separate pool per parent + * BUS handle. A reverse table (hashed) is maintained for virtual * to BUS address translation. */ -static void getbaddrcb(void *arg, bus_dma_segment_t *segs, int nseg, int error) +static void getbaddrcb(void *arg, bus_dma_segment_t *segs, int nseg, int error) { bus_addr_t *baddr; baddr = (bus_addr_t *)arg; @@ -606,7 +606,7 @@ static m_addr_t ___dma_getp(m_pool_s *mp) { m_vtob_s *vbp; - void *vaddr = 0; + void *vaddr = NULL; bus_addr_t baddr = 0; vbp = __sym_calloc(&mp0, sizeof(*vbp), "VTOB"); @@ -614,7 +614,7 @@ goto out_err; if (bus_dmamem_alloc(mp->dmat, &vaddr, - BUS_DMA_NOWAIT, &vbp->dmamap)) + BUS_DMA_COHERENT | BUS_DMA_WAITOK, &vbp->dmamap)) goto out_err; bus_dmamap_load(mp->dmat, vbp->dmamap, vaddr, MEMO_CLUSTER_SIZE, getbaddrcb, &baddr, BUS_DMA_NOWAIT); @@ -670,7 +670,7 @@ static m_pool_s *___cre_dma_pool(bus_dma_tag_t dev_dmat) { - m_pool_s *mp = 0; + m_pool_s *mp = NULL; mp = __sym_calloc(&mp0, sizeof(*mp), "MPOOL"); if (mp) { @@ -680,7 +680,7 @@ BUS_SPACE_MAXADDR, NULL, NULL, MEMO_CLUSTER_SIZE, 1, MEMO_CLUSTER_SIZE, 0, - busdma_lock_mutex, &Giant, &mp->dmat)) { + NULL, NULL, &mp->dmat)) { mp->getp = ___dma_getp; #ifdef MEMO_FREE_UNUSED mp->freep = ___dma_freep; @@ -692,7 +692,7 @@ } if (mp) __sym_mfree(&mp0, mp, sizeof(*mp), "MPOOL"); - return 0; + return NULL; } #ifdef MEMO_FREE_UNUSED @@ -713,7 +713,7 @@ static void *__sym_calloc_dma(bus_dma_tag_t dev_dmat, int size, char *name) { struct m_pool *mp; - void *m = 0; + void *m = NULL; /* Lock */ mp = ___get_dma_pool(dev_dmat); @@ -730,7 +730,7 @@ return m; } -static void +static void __sym_mfree_dma(bus_dma_tag_t dev_dmat, void *m, int size, char *name) { struct m_pool *mp; @@ -750,7 +750,7 @@ { m_pool_s *mp; int hc = VTOB_HASH_CODE(m); - m_vtob_s *vp = 0; + m_vtob_s *vp = NULL; m_addr_t a = ((m_addr_t) m) & ~MEMO_CLUSTER_MASK; /* Lock */ @@ -769,7 +769,7 @@ /* * Verbs for DMAable memory handling. - * The _uvptv_ macro avoids a nasty warning about pointer to volatile + * The _uvptv_ macro avoids a nasty warning about pointer to volatile * being discarded. */ #define _uvptv_(p) ((void *)((vm_offset_t)(p))) @@ -804,7 +804,7 @@ /* * Return a string for SCSI BUS mode. */ -static char *sym_scsi_bus_mode(int mode) +static const char *sym_scsi_bus_mode(int mode) { switch(mode) { case SMODE_HVD: return "HVD"; @@ -818,7 +818,7 @@ * Some poor and bogus sync table that refers to Tekram NVRAM layout. */ #ifdef SYM_CONF_NVRAM_SUPPORT -static u_char Tekram_sync[16] = +static const u_char Tekram_sync[16] = {25,31,37,43, 50,62,75,125, 12,15,18,21, 6,7,9,10}; #endif @@ -852,7 +852,7 @@ #endif /* - * Some provision for a possible big endian mode supported by + * Some provision for a possible big endian mode supported by * Symbios chips (never seen, by the way). * For now, this stuff does not deserve any comments. :) */ @@ -869,35 +869,35 @@ /* * Access to the chip IO registers and on-chip RAM. - * We use the `bus space' interface under FreeBSD-4 and + * We use the `bus space' interface under FreeBSD-4 and * later kernel versions. */ #if defined(SYM_CONF_IOMAPPED) -#define INB_OFF(o) bus_space_read_1(np->io_tag, np->io_bsh, o) -#define INW_OFF(o) bus_space_read_2(np->io_tag, np->io_bsh, o) -#define INL_OFF(o) bus_space_read_4(np->io_tag, np->io_bsh, o) +#define INB_OFF(o) bus_read_1(np->io_res, (o)) +#define INW_OFF(o) bus_read_2(np->io_res, (o)) +#define INL_OFF(o) bus_read_4(np->io_res, (o)) -#define OUTB_OFF(o, v) bus_space_write_1(np->io_tag, np->io_bsh, o, (v)) -#define OUTW_OFF(o, v) bus_space_write_2(np->io_tag, np->io_bsh, o, (v)) -#define OUTL_OFF(o, v) bus_space_write_4(np->io_tag, np->io_bsh, o, (v)) +#define OUTB_OFF(o, v) bus_write_1(np->io_res, (o), (v)) +#define OUTW_OFF(o, v) bus_write_2(np->io_res, (o), (v)) +#define OUTL_OFF(o, v) bus_write_4(np->io_res, (o), (v)) #else /* Memory mapped IO */ -#define INB_OFF(o) bus_space_read_1(np->mmio_tag, np->mmio_bsh, o) -#define INW_OFF(o) bus_space_read_2(np->mmio_tag, np->mmio_bsh, o) -#define INL_OFF(o) bus_space_read_4(np->mmio_tag, np->mmio_bsh, o) +#define INB_OFF(o) bus_read_1(np->mmio_res, (o)) +#define INW_OFF(o) bus_read_2(np->mmio_res, (o)) +#define INL_OFF(o) bus_read_4(np->mmio_res, (o)) -#define OUTB_OFF(o, v) bus_space_write_1(np->mmio_tag, np->mmio_bsh, o, (v)) -#define OUTW_OFF(o, v) bus_space_write_2(np->mmio_tag, np->mmio_bsh, o, (v)) -#define OUTL_OFF(o, v) bus_space_write_4(np->mmio_tag, np->mmio_bsh, o, (v)) +#define OUTB_OFF(o, v) bus_write_1(np->mmio_res, (o), (v)) +#define OUTW_OFF(o, v) bus_write_2(np->mmio_res, (o), (v)) +#define OUTL_OFF(o, v) bus_write_4(np->mmio_res, (o), (v)) #endif /* SYM_CONF_IOMAPPED */ #define OUTRAM_OFF(o, a, l) \ - bus_space_write_region_1(np->ram_tag, np->ram_bsh, o, (a), (l)) + bus_write_region_1(np->ram_res, (o), (a), (l)) /* @@ -996,7 +996,7 @@ #define NS_PPR (3) /* - * A CCB hashed table is used to retrieve CCB address + * A CCB hashed table is used to retrieve CCB address * from DSA value. */ #define CCB_HASH_SHIFT 8 @@ -1020,12 +1020,12 @@ /* * Device quirks. - * Some devices, for example the CHEETAH 2 LVD, disconnects without + * Some devices, for example the CHEETAH 2 LVD, disconnects without * saving the DATA POINTER then reselects and terminates the IO. - * On reselection, the automatic RESTORE DATA POINTER makes the + * On reselection, the automatic RESTORE DATA POINTER makes the * CURRENT DATA POINTER not point at the end of the IO. * This behaviour just breaks our calculation of the residual. - * For now, we just force an AUTO SAVE on disconnection and will + * For now, we just force an AUTO SAVE on disconnection and will * fix that in a further driver version. */ #define SYM_QUIRK_AUTOSAVE 1 @@ -1033,6 +1033,13 @@ /* * Misc. */ +#define SYM_LOCK() mtx_lock(&np->mtx) +#define SYM_LOCK_ASSERT(_what) mtx_assert(&np->mtx, (_what)) +#define SYM_LOCK_DESTROY() mtx_destroy(&np->mtx) +#define SYM_LOCK_INIT() mtx_init(&np->mtx, "sym_lock", NULL, MTX_DEF) +#define SYM_LOCK_INITIALIZED() mtx_initialized(&np->mtx) +#define SYM_UNLOCK() mtx_unlock(&np->mtx) + #define SYM_SNOOP_TIMEOUT (10000000) #define SYM_PCI_IO PCIR_BAR(0) #define SYM_PCI_MMIO PCIR_BAR(1) @@ -1079,23 +1086,23 @@ * Global TCB HEADER. * * Due to lack of indirect addressing on earlier NCR chips, - * this substructure is copied from the TCB to a global + * this substructure is copied from the TCB to a global * address after selection. - * For SYMBIOS chips that support LOAD/STORE this copy is + * For SYMBIOS chips that support LOAD/STORE this copy is * not needed and thus not performed. */ struct sym_tcbh { /* * Scripts bus addresses of LUN table accessed from scripts. - * LUN #0 is a special case, since multi-lun devices are rare, - * and we we want to speed-up the general case and not waste + * LUN #0 is a special case, since multi-lun devices are rare, + * and we we want to speed-up the general case and not waste * resources. */ u32 luntbl_sa; /* bus address of this table */ u32 lun0_sa; /* bus address of LCB #0 */ /* * Actual SYNC/WIDE IO registers value for this target. - * 'sval', 'wval' and 'uval' are read from SCRIPTS and + * 'sval', 'wval' and 'uval' are read from SCRIPTS and * so have alignment constraints. */ /*0*/ u_char uval; /* -> SCNTL4 register */ @@ -1129,14 +1136,14 @@ #endif /* - * Bitmap that tells about LUNs that succeeded at least + * Bitmap that tells about LUNs that succeeded at least * 1 IO and therefore assumed to be a real device. * Avoid useless allocation of the LCB structure. */ u32 lun_map[(SYM_CONF_MAX_LUN+31)/32]; /* - * Bitmap that tells about LUNs that haven't yet an LCB + * Bitmap that tells about LUNs that haven't yet an LCB * allocated (not discovered or LCB allocation failed). */ u32 busy0_map[(SYM_CONF_MAX_LUN+31)/32]; @@ -1169,22 +1176,22 @@ * Global LCB HEADER. * * Due to lack of indirect addressing on earlier NCR chips, - * this substructure is copied from the LCB to a global + * this substructure is copied from the LCB to a global * address after selection. - * For SYMBIOS chips that support LOAD/STORE this copy is + * For SYMBIOS chips that support LOAD/STORE this copy is * not needed and thus not performed. */ struct sym_lcbh { /* * SCRIPTS address jumped by SCRIPTS on reselection. - * For not probed logical units, this address points to - * SCRIPTS that deal with bad LU handling (must be at + * For not probed logical units, this address points to + * SCRIPTS that deal with bad LU handling (must be at * offset zero of the LCB for that reason). */ /*0*/ u32 resel_sa; /* - * Task (bus address of a CCB) read from SCRIPTS that points + * Task (bus address of a CCB) read from SCRIPTS that points * to the unique ITL nexus allowed to be disconnected. */ u32 itl_task_sa; @@ -1206,8 +1213,8 @@ /*0*/ struct sym_lcbh head; /* - * Task table read from SCRIPTS that contains pointers to - * ITLQ nexuses. The bus address read from SCRIPTS is + * Task table read from SCRIPTS that contains pointers to + * ITLQ nexuses. The bus address read from SCRIPTS is * inside the header. */ u32 *itlq_tbl; /* Kernel virtual address */ @@ -1239,7 +1246,7 @@ /* * Action from SCRIPTS on a task. - * Is part of the CCB, but is also used separately to plug + * Is part of the CCB, but is also used separately to plug * error handling action to perform from SCRIPTS. */ struct sym_actscr { @@ -1250,8 +1257,8 @@ /* * Phase mismatch context. * - * It is part of the CCB and is used as parameters for the - * DATA pointer. We need two contexts to handle correctly the + * It is part of the CCB and is used as parameters for the + * DATA pointer. We need two contexts to handle correctly the * SAVED DATA POINTER. */ struct sym_pmc { @@ -1261,8 +1268,8 @@ /* * LUN control block lookup. - * We use a direct pointer for LUN #0, and a table of - * pointers which is only allocated for devices that support + * We use a direct pointer for LUN #0, and a table of + * pointers which is only allocated for devices that support * LUN(s) > 0. */ #if SYM_CONF_MAX_LUN <= 1 @@ -1275,8 +1282,8 @@ /* * Status are used by the host and the script processor. * - * The last four bytes (status[4]) are copied to the - * scratchb register (declared as scr0..scr3) just after the + * The last four bytes (status[4]) are copied to the + * scratchb register (declared as scr0..scr3) just after the * select/reselect, and copied back just after disconnecting. * Inside the script the XX_REG are used. */ @@ -1318,10 +1325,10 @@ * Global CCB HEADER. * * Due to lack of indirect addressing on earlier NCR chips, - * this substructure is copied from the ccb to a global - * address after selection (or reselection) and copied back + * this substructure is copied from the ccb to a global + * address after selection (or reselection) and copied back * before disconnect. - * For SYMBIOS chips that support LOAD/STORE this copy is + * For SYMBIOS chips that support LOAD/STORE this copy is * not needed and thus not performed. */ @@ -1333,7 +1340,7 @@ /* * SCRIPTS jump address that deal with data pointers. - * 'savep' points to the position in the script responsible + * 'savep' points to the position in the script responsible * for the actual transfer of data. * It's written on reception of a SAVE_DATA_POINTER message. */ @@ -1350,8 +1357,8 @@ /* * Data Structure Block * - * During execution of a ccb by the script processor, the - * DSA (data structure address) register points to this + * During execution of a ccb by the script processor, the + * DSA (data structure address) register points to this * substructure of the ccb. */ struct sym_dsb { @@ -1364,7 +1371,7 @@ /* * Phase mismatch contexts. * We need two to handle correctly the SAVED DATA POINTER. - * MUST BOTH BE AT OFFSET < 256, due to using 8 bit arithmetic + * MUST BOTH BE AT OFFSET < 256, due to using 8 bit arithmetic * for address calculation from SCRIPTS. */ struct sym_pmc pm0; @@ -1387,7 +1394,7 @@ */ struct sym_ccb { /* - * This is the data structure which is pointed by the DSA + * This is the data structure which is pointed by the DSA * register when it is executed by the script processor. * It must be the first entry. */ @@ -1396,6 +1403,7 @@ /* * Pointer to CAM ccb and related stuff. */ + struct callout ch; /* callout handle */ union ccb *cam_ccb; /* CAM scsiio ccb */ u8 cdb_buf[16]; /* Copy of CDB */ u8 *sns_bbuf; /* Bounce buffer for sense data */ @@ -1413,7 +1421,7 @@ /* * Message areas. * We prepare a message to be sent after selection. - * We may use a second one if the command is rescheduled + * We may use a second one if the command is rescheduled * due to CHECK_CONDITION or COMMAND TERMINATED. * Contents are IDENTIFY and SIMPLE_TAG. * While negotiating sync or wide transfer, @@ -1462,10 +1470,12 @@ * Host Control Block */ struct sym_hcb { + struct mtx mtx; + /* * Global headers. - * Due to poorness of addressing capabilities, earlier - * chips (810, 815, 825) copy part of the data structures + * Due to poorness of addressing capabilities, earlier + * chips (810, 815, 825) copy part of the data structures * (CCB, TCB and LCB) in fixed areas. */ #ifdef SYM_CONF_GENERIC_SUPPORT @@ -1474,14 +1484,14 @@ struct sym_lcbh lcb_head; #endif /* - * Idle task and invalid task actions and + * Idle task and invalid task actions and * their bus addresses. */ struct sym_actscr idletask, notask, bad_itl, bad_itlq; vm_offset_t idletask_ba, notask_ba, bad_itl_ba, bad_itlq_ba; /* - * Dummy lun table to protect us against target + * Dummy lun table to protect us against target * returning bad lun number on reselection. */ u32 *badluntbl; /* Table physical address */ @@ -1494,7 +1504,7 @@ /* * Bit 32-63 of the on-chip RAM bus address in LE format. - * The START_RAM64 script loads the MMRS and MMWS from this + * The START_RAM64 script loads the MMRS and MMWS from this * field. */ u32 scr_ram_seg; @@ -1503,12 +1513,10 @@ * Chip and controller indentification. */ device_t device; - int unit; - char inst_name[8]; /* * Initial value of some IO register bits. - * These values are assumed to have been set by BIOS, and may + * These values are assumed to have been set by BIOS, and may * be used to probe adapter implementation differences. */ u_char sv_scntl0, sv_scntl3, sv_dmode, sv_dcntl, sv_ctest3, sv_ctest4, @@ -1516,11 +1524,11 @@ sv_stest1; /* - * Actual initial value of IO register bits used by the - * driver. They are loaded at initialisation according to + * Actual initial value of IO register bits used by the + * driver. They are loaded at initialisation according to * features that are to be enabled/disabled. */ - u_char rv_scntl0, rv_scntl3, rv_dmode, rv_dcntl, rv_ctest3, rv_ctest4, + u_char rv_scntl0, rv_scntl3, rv_dmode, rv_dcntl, rv_ctest3, rv_ctest4, rv_ctest5, rv_stest2, rv_ccntl0, rv_ccntl1, rv_scntl4; /* @@ -1533,7 +1541,7 @@ #endif /* - * Target control block bus address array used by the SCRIPT + * Target control block bus address array used by the SCRIPT * on reselection. */ u32 *targtbl; @@ -1558,20 +1566,14 @@ /* * Bus stuff. * - * My understanding of PCI is that all agents must share the + * My understanding of PCI is that all agents must share the * same addressing range and model. - * But some hardware architecture guys provide complex and + * But some hardware architecture guys provide complex and * brain-deaded stuff that makes shit. - * This driver only support PCI compliant implementations and - * deals with part of the BUS stuff complexity only to fit O/S + * This driver only support PCI compliant implementations and + * deals with part of the BUS stuff complexity only to fit O/S * requirements. */ - bus_space_handle_t io_bsh; - bus_space_tag_t io_tag; - bus_space_handle_t mmio_bsh; - bus_space_tag_t mmio_tag; - bus_space_handle_t ram_bsh; - bus_space_tag_t ram_tag; /* * DMA stuff. @@ -1579,23 +1581,18 @@ bus_dma_tag_t bus_dmat; /* DMA tag from parent BUS */ bus_dma_tag_t data_dmat; /* DMA tag for user data */ /* - * Virtual and physical bus addresses of the chip. + * BUS addresses of the chip */ - vm_offset_t mmio_va; /* MMIO kernel virtual address */ - vm_offset_t mmio_pa; /* MMIO CPU physical address */ vm_offset_t mmio_ba; /* MMIO BUS address */ int mmio_ws; /* MMIO Window size */ - vm_offset_t ram_va; /* RAM kernel virtual address */ - vm_offset_t ram_pa; /* RAM CPU physical address */ vm_offset_t ram_ba; /* RAM BUS address */ int ram_ws; /* RAM window size */ - u32 io_port; /* IO port address */ /* * SCRIPTS virtual and physical bus addresses. * 'script' is loaded in the on-chip RAM if present. - * 'scripth' stays in main memory for all chips except the + * 'scripth' stays in main memory for all chips except the * 53C895A, 53C896 and 53C1010 that provide 8K on-chip RAM. */ u_char *scripta0; /* Copies of script and scripth */ @@ -1607,14 +1604,14 @@ u_short scriptb_sz; /* Actual size of script B */ /* - * Bus addresses, setup and patch methods for + * Bus addresses, setup and patch methods for * the selected firmware. */ struct sym_fwa_ba fwa_bas; /* Useful SCRIPTA bus addresses */ struct sym_fwb_ba fwb_bas; /* Useful SCRIPTB bus addresses */ - void (*fw_setup)(hcb_p np, struct sym_fw *fw); + void (*fw_setup)(hcb_p np, const struct sym_fw *fw); void (*fw_patch)(hcb_p np); - char *fw_name; + const char *fw_name; /* * General controller parameters and configuration. @@ -1637,7 +1634,7 @@ u32 pciclk_khz; /* Estimated PCI clock in KHz */ /* * Start queue management. - * It is filled up by the host processor and accessed by the + * It is filled up by the host processor and accessed by the * SCRIPTS processor in order to start SCSI commands. */ volatile /* Prevent code optimizations */ @@ -1657,7 +1654,7 @@ /* * Miscellaneous buffers accessed by the scripts-processor. - * They shall be DWORD aligned, because they may be read or + * They shall be DWORD aligned, because they may be read or * written with a script command. */ u_char msgout[8]; /* Buffer for MESSAGE OUT */ @@ -1682,7 +1679,7 @@ /* * During error handling and/or recovery, - * active CCBs that are to be completed with + * active CCBs that are to be completed with * error or requeued are moved from the busy_ccbq * to the comp_ccbq prior to completion. */ @@ -1696,12 +1693,12 @@ /* * IMMEDIATE ARBITRATION (IARB) control. * - * We keep track in 'last_cp' of the last CCB that has been - * queued to the SCRIPTS processor and clear 'last_cp' when - * this CCB completes. If last_cp is not zero at the moment - * we queue a new CCB, we set a flag in 'last_cp' that is + * We keep track in 'last_cp' of the last CCB that has been + * queued to the SCRIPTS processor and clear 'last_cp' when + * this CCB completes. If last_cp is not zero at the moment + * we queue a new CCB, we set a flag in 'last_cp' that is * used by the SCRIPTS as a hint for setting IARB. - * We donnot set more than 'iarb_max' consecutive hints for >>> TRUNCATED FOR MAIL (1000 lines) <<< From jb at FreeBSD.org Sun Jun 1 23:55:39 2008 From: jb at FreeBSD.org (John Birrell) Date: Sun Jun 1 23:55:43 2008 Subject: PERFORCE change 142726 for review Message-ID: <200806012355.m51NtcUe026586@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142726 Change 142726 by jb@freebsd3 on 2008/06/01 23:54:53 IF6 Affected files ... .. //depot/projects/dtrace6/src/MAINTAINERS#2 integrate .. //depot/projects/dtrace6/src/sys/dev/sym/sym_defs.h#2 integrate .. //depot/projects/dtrace6/src/sys/dev/sym/sym_fw.h#2 integrate .. //depot/projects/dtrace6/src/sys/dev/sym/sym_fw1.h#2 integrate .. //depot/projects/dtrace6/src/sys/dev/sym/sym_fw2.h#2 integrate .. //depot/projects/dtrace6/src/sys/dev/sym/sym_hipd.c#2 integrate Differences ... ==== //depot/projects/dtrace6/src/MAINTAINERS#2 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.121.2.3 2006/07/09 22:06:27 markm Exp $ +$FreeBSD: src/MAINTAINERS,v 1.121.2.4 2008/05/31 22:32:51 peter Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -73,7 +73,6 @@ ps gad I am working on a number of changes to this. Would like advance notice of major changes planned to it. cvs peter Heads-up appreciated, try not to break it. -ncurses peter Heads-up appreciated, try not to break it. nvi peter Try not to break it. libz peter Try not to break it. pppd/chat peter Try not to break it. ==== //depot/projects/dtrace6/src/sys/dev/sym/sym_defs.h#2 (text+ko) ==== @@ -55,7 +55,7 @@ * SUCH DAMAGE. */ -/* $FreeBSD: src/sys/dev/sym/sym_defs.h,v 1.11 2005/01/06 01:43:24 imp Exp $ */ +/* $FreeBSD: src/sys/dev/sym/sym_defs.h,v 1.11.2.1 2008/05/30 22:00:45 marius Exp $ */ #ifndef SYM_DEFS_H #define SYM_DEFS_H @@ -90,7 +90,7 @@ struct sym_pci_chip { u_short device_id; unsigned short revision_id; - char *name; + const char *name; u_char burst_max; /* log-base-2 of max burst */ u_char offset_max; u_char nr_divisor; ==== //depot/projects/dtrace6/src/sys/dev/sym/sym_fw.h#2 (text+ko) ==== @@ -55,7 +55,7 @@ * SUCH DAMAGE. */ -/* $FreeBSD: src/sys/dev/sym/sym_fw.h,v 1.5 2005/01/06 01:43:24 imp Exp $ */ +/* $FreeBSD: src/sys/dev/sym/sym_fw.h,v 1.5.2.1 2008/05/30 22:00:45 marius Exp $ */ #ifndef SYM_FW_H #define SYM_FW_H @@ -135,17 +135,17 @@ * Generic structure that defines a firmware. */ struct sym_fw { - char *name; /* Name we want to print out */ - u32 *a_base; /* Pointer to script A template */ + const char *name; /* Name we want to print out */ + const u32 *a_base;/* Pointer to script A template */ int a_size; /* Size of script A */ - struct sym_fwa_ofs + const struct sym_fwa_ofs *a_ofs; /* Useful offsets in script A */ - u32 *b_base; /* Pointer to script B template */ + const u32 *b_base;/* Pointer to script B template */ int b_size; /* Size of script B */ - struct sym_fwb_ofs + const struct sym_fwb_ofs *b_ofs; /* Useful offsets in script B */ /* Setup and patch methods for this firmware */ - void (*setup)(struct sym_hcb *, struct sym_fw *); + void (*setup)(struct sym_hcb *, const struct sym_fw *); void (*patch)(struct sym_hcb *); }; @@ -155,8 +155,8 @@ #define SYM_FW_ENTRY(fw, name) \ { \ name, \ - (u32 *) &fw##a_scr, sizeof(fw##a_scr), &fw##a_ofs, \ - (u32 *) &fw##b_scr, sizeof(fw##b_scr), &fw##b_ofs, \ + (const u32 *) &fw##a_scr, sizeof(fw##a_scr), &fw##a_ofs,\ + (const u32 *) &fw##b_scr, sizeof(fw##b_scr), &fw##b_ofs,\ fw##_setup, fw##_patch \ } ==== //depot/projects/dtrace6/src/sys/dev/sym/sym_fw1.h#2 (text+ko) ==== @@ -55,7 +55,7 @@ * SUCH DAMAGE. */ -/* $FreeBSD: src/sys/dev/sym/sym_fw1.h,v 1.7 2005/01/06 01:43:24 imp Exp $ */ +/* $FreeBSD: src/sys/dev/sym/sym_fw1.h,v 1.7.2.1 2008/05/30 22:00:45 marius Exp $ */ /* * Scripts for SYMBIOS-Processor @@ -219,7 +219,7 @@ u32 snoopend [ 2]; }; -static struct SYM_FWA_SCR SYM_FWA_SCR = { +static const struct SYM_FWA_SCR SYM_FWA_SCR = { /*--------------------------< START >----------------------------*/ { /* * Switch the LED on. @@ -1342,7 +1342,7 @@ }/*--------------------------<>----------------------------------*/ }; -static struct SYM_FWB_SCR SYM_FWB_SCR = { +static const struct SYM_FWB_SCR SYM_FWB_SCR = { /*-------------------------< NO_DATA >--------------------------*/ { SCR_JUMP, PADDR_B (data_ovrun), ==== //depot/projects/dtrace6/src/sys/dev/sym/sym_fw2.h#2 (text+ko) ==== @@ -55,7 +55,7 @@ * SUCH DAMAGE. */ -/* $FreeBSD: src/sys/dev/sym/sym_fw2.h,v 1.8 2005/01/06 01:43:24 imp Exp $ */ +/* $FreeBSD: src/sys/dev/sym/sym_fw2.h,v 1.8.2.1 2008/05/30 22:00:45 marius Exp $ */ /* * Scripts for SYMBIOS-Processor @@ -210,7 +210,7 @@ u32 snoopend [ 2]; }; -static struct SYM_FWA_SCR SYM_FWA_SCR = { +static const struct SYM_FWA_SCR SYM_FWA_SCR = { /*--------------------------< START >----------------------------*/ { /* * Switch the LED on. @@ -1195,7 +1195,7 @@ }/*-------------------------<>-----------------------------------*/ }; -static struct SYM_FWB_SCR SYM_FWB_SCR = { +static const struct SYM_FWB_SCR SYM_FWB_SCR = { /*--------------------------< START64 >--------------------------*/ { /* * SCRIPT entry point for the 895A, 896 and 1010. ==== //depot/projects/dtrace6/src/sys/dev/sym/sym_hipd.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /*- - * Device driver optimized for the Symbios/LSI 53C896/53C895A/53C1010 + * Device driver optimized for the Symbios/LSI 53C896/53C895A/53C1010 * PCI-SCSI controllers. * * Copyright (C) 1999-2001 Gerard Roudier @@ -8,11 +8,11 @@ * 53C810A, 53C825A, 53C860, 53C875, 53C876, 53C885, 53C895, * 53C810, 53C815, 53C825 and the 53C1510D is 53C8XX mode. * - * + * * This driver for FreeBSD-CAM is derived from the Linux sym53c8xx driver. * Copyright (C) 1998-1999 Gerard Roudier * - * The sym53c8xx driver is derived from the ncr53c8xx driver that had been + * The sym53c8xx driver is derived from the ncr53c8xx driver that had been * a port of the FreeBSD ncr driver to Linux-1.2.13. * * The original ncr driver has been written for 386bsd and FreeBSD by @@ -20,8 +20,8 @@ * Stefan Esser * Copyright (C) 1994 Wolfgang Stanglmeier * - * The initialisation code, and part of the code that addresses - * FreeBSD-CAM services is based on the aic7xxx driver for FreeBSD-CAM + * The initialisation code, and part of the code that addresses + * FreeBSD-CAM services is based on the aic7xxx driver for FreeBSD-CAM * written by Justin T. Gibbs. * * Other major contributions: @@ -56,7 +56,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/sym/sym_hipd.c,v 1.55.2.1 2007/08/19 10:51:03 se Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/sym/sym_hipd.c,v 1.55.2.3 2008/05/30 22:00:45 marius Exp $"); #define SYM_DRIVER_NAME "sym-1.6.5-20000902" @@ -126,12 +126,12 @@ /* * IA32 architecture does not reorder STORES and prevents - * LOADS from passing STORES. It is called `program order' - * by Intel and allows device drivers to deal with memory - * ordering by only ensuring that the code is not reordered + * LOADS from passing STORES. It is called `program order' + * by Intel and allows device drivers to deal with memory + * ordering by only ensuring that the code is not reordered * by the compiler when ordering is required. - * Other architectures implement a weaker ordering that - * requires memory barriers (and also IO barriers when they + * Other architectures implement a weaker ordering that + * requires memory barriers (and also IO barriers when they * make sense) to be used. */ @@ -150,44 +150,6 @@ #endif /* - * Portable but silly implemented byte order primitives. - * We define the primitives we need, since FreeBSD doesn't - * seem to have them yet. - */ -#if BYTE_ORDER == BIG_ENDIAN - -#define __revb16(x) ( (((u16)(x) & (u16)0x00ffU) << 8) | \ - (((u16)(x) & (u16)0xff00U) >> 8) ) -#define __revb32(x) ( (((u32)(x) & 0x000000ffU) << 24) | \ - (((u32)(x) & 0x0000ff00U) << 8) | \ - (((u32)(x) & 0x00ff0000U) >> 8) | \ - (((u32)(x) & 0xff000000U) >> 24) ) - -#define __htole16(v) __revb16(v) -#define __htole32(v) __revb32(v) -#define __le16toh(v) __htole16(v) -#define __le32toh(v) __htole32(v) - -static __inline u16 _htole16(u16 v) { return __htole16(v); } -static __inline u32 _htole32(u32 v) { return __htole32(v); } -#define _le16toh _htole16 -#define _le32toh _htole32 - -#else /* LITTLE ENDIAN */ - -#define __htole16(v) (v) -#define __htole32(v) (v) -#define __le16toh(v) (v) -#define __le32toh(v) (v) - -#define _htole16(v) (v) -#define _htole32(v) (v) -#define _le16toh(v) (v) -#define _le32toh(v) (v) - -#endif /* BYTE_ORDER */ - -/* * A la VMS/CAM-3 queue management. */ @@ -202,12 +164,12 @@ static __inline struct sym_quehead *sym_que_first(struct sym_quehead *head) { - return (head->flink == head) ? 0 : head->flink; + return (head->flink == head) ? NULL : head->flink; } static __inline struct sym_quehead *sym_que_last(struct sym_quehead *head) { - return (head->blink == head) ? 0 : head->blink; + return (head->blink == head) ? NULL : head->blink; } static __inline void __sym_que_add(struct sym_quehead * new, @@ -250,7 +212,7 @@ } #define sym_que_entry(ptr, type, member) \ - ((type *)((char *)(ptr)-(unsigned int)(&((type *)0)->member))) + ((type *)((char *)(ptr)-(size_t)(&((type *)0)->member))) #define sym_insque(new, pos) __sym_que_add(new, pos, (pos)->flink) @@ -266,7 +228,7 @@ if (elem != head) __sym_que_del(head, elem->flink); else - elem = 0; + elem = NULL; return elem; } @@ -279,7 +241,7 @@ if (elem != head) __sym_que_del(elem->blink, head); else - elem = 0; + elem = NULL; return elem; } @@ -296,7 +258,7 @@ /* * Simple bitmap operations. - */ + */ #define sym_set_bit(p, n) (((u32 *)(p))[(n)>>5] |= (1<<((n)&0x1f))) #define sym_clr_bit(p, n) (((u32 *)(p))[(n)>>5] &= ~(1<<((n)&0x1f))) #define sym_is_bit(p, n) (((u32 *)(p))[(n)>>5] & (1<<((n)&0x1f))) @@ -340,7 +302,7 @@ #endif /* - * Asynchronous pre-scaler (ns). Shall be 40 for + * Asynchronous pre-scaler (ns). Shall be 40 for * the SCSI timings to be compliant. */ #define SYM_CONF_MIN_ASYNC (40) @@ -348,7 +310,7 @@ /* * Number of entries in the START and DONE queues. * - * We limit to 1 PAGE in order to succeed allocation of + * We limit to 1 PAGE in order to succeed allocation of * these queues. Each entry is 8 bytes long (2 DWORDS). */ #ifdef SYM_CONF_MAX_START @@ -405,18 +367,18 @@ /* * Simple power of two buddy-like allocator. * - * This simple code is not intended to be fast, but to + * This simple code is not intended to be fast, but to * provide power of 2 aligned memory allocations. - * Since the SCRIPTS processor only supplies 8 bit arithmetic, - * this allocator allows simple and fast address calculations - * from the SCRIPTS code. In addition, cache line alignment + * Since the SCRIPTS processor only supplies 8 bit arithmetic, + * this allocator allows simple and fast address calculations + * from the SCRIPTS code. In addition, cache line alignment * is guaranteed for power of 2 cache line size. * - * This allocator has been developped for the Linux sym53c8xx - * driver, since this O/S does not provide naturally aligned + * This allocator has been developped for the Linux sym53c8xx + * driver, since this O/S does not provide naturally aligned * allocations. - * It has the advantage of allowing the driver to use private - * pages of memory that will be useful if we ever need to deal + * It has the advantage of allowing the driver to use private + * pages of memory that will be useful if we ever need to deal * with IO MMUs for PCI. */ @@ -476,7 +438,7 @@ m_link_s *h = mp->h; if (size > MEMO_CLUSTER_SIZE) - return 0; + return NULL; while (size > s) { s <<= 1; @@ -488,7 +450,7 @@ if (s == MEMO_CLUSTER_SIZE) { h[j].next = (m_link_s *) M_GETP(); if (h[j].next) - h[j].next->next = 0; + h[j].next->next = NULL; break; } ++j; @@ -501,7 +463,7 @@ j -= 1; s >>= 1; h[j].next = (m_link_s *) (a+s); - h[j].next->next = 0; + h[j].next->next = NULL; } } #ifdef DEBUG @@ -588,7 +550,7 @@ * Default memory pool we donnot need to involve in DMA. */ /* - * With the `bus dma abstraction', we use a separate pool for + * With the `bus dma abstraction', we use a separate pool for * memory we donnot need to involve in DMA. */ static m_addr_t ___mp0_getp(m_pool_s *mp) @@ -640,11 +602,11 @@ * DMAable pools. */ /* - * With `bus dma abstraction', we use a separate pool per parent - * BUS handle. A reverse table (hashed) is maintained for virtual + * With `bus dma abstraction', we use a separate pool per parent + * BUS handle. A reverse table (hashed) is maintained for virtual * to BUS address translation. */ -static void getbaddrcb(void *arg, bus_dma_segment_t *segs, int nseg, int error) +static void getbaddrcb(void *arg, bus_dma_segment_t *segs, int nseg, int error) { bus_addr_t *baddr; baddr = (bus_addr_t *)arg; @@ -654,7 +616,7 @@ static m_addr_t ___dma_getp(m_pool_s *mp) { m_vtob_s *vbp; - void *vaddr = 0; + void *vaddr = NULL; bus_addr_t baddr = 0; vbp = __sym_calloc(&mp0, sizeof(*vbp), "VTOB"); @@ -718,7 +680,7 @@ static m_pool_s *___cre_dma_pool(bus_dma_tag_t dev_dmat) { - m_pool_s *mp = 0; + m_pool_s *mp = NULL; mp = __sym_calloc(&mp0, sizeof(*mp), "MPOOL"); if (mp) { @@ -740,7 +702,7 @@ } if (mp) __sym_mfree(&mp0, mp, sizeof(*mp), "MPOOL"); - return 0; + return NULL; } #ifdef MEMO_FREE_UNUSED @@ -761,7 +723,7 @@ static void *__sym_calloc_dma(bus_dma_tag_t dev_dmat, int size, char *name) { struct m_pool *mp; - void *m = 0; + void *m = NULL; /* Lock */ mp = ___get_dma_pool(dev_dmat); @@ -778,7 +740,7 @@ return m; } -static void +static void __sym_mfree_dma(bus_dma_tag_t dev_dmat, void *m, int size, char *name) { struct m_pool *mp; @@ -798,7 +760,7 @@ { m_pool_s *mp; int hc = VTOB_HASH_CODE(m); - m_vtob_s *vp = 0; + m_vtob_s *vp = NULL; m_addr_t a = ((m_addr_t) m) & ~MEMO_CLUSTER_MASK; /* Lock */ @@ -817,7 +779,7 @@ /* * Verbs for DMAable memory handling. - * The _uvptv_ macro avoids a nasty warning about pointer to volatile + * The _uvptv_ macro avoids a nasty warning about pointer to volatile * being discarded. */ #define _uvptv_(p) ((void *)((vm_offset_t)(p))) @@ -852,7 +814,7 @@ /* * Return a string for SCSI BUS mode. */ -static char *sym_scsi_bus_mode(int mode) +static const char *sym_scsi_bus_mode(int mode) { switch(mode) { case SMODE_HVD: return "HVD"; @@ -866,7 +828,7 @@ * Some poor and bogus sync table that refers to Tekram NVRAM layout. */ #ifdef SYM_CONF_NVRAM_SUPPORT -static u_char Tekram_sync[16] = +static const u_char Tekram_sync[16] = {25,31,37,43, 50,62,75,125, 12,15,18,21, 6,7,9,10}; #endif @@ -900,7 +862,7 @@ #endif /* - * Some provision for a possible big endian mode supported by + * Some provision for a possible big endian mode supported by * Symbios chips (never seen, by the way). * For now, this stuff does not deserve any comments. :) */ @@ -910,20 +872,14 @@ /* * Some provision for support for BIG ENDIAN CPU. - * Btw, FreeBSD does not seem to be ready yet for big endian. */ -#if BYTE_ORDER == BIG_ENDIAN -#define cpu_to_scr(dw) _htole32(dw) -#define scr_to_cpu(dw) _le32toh(dw) -#else -#define cpu_to_scr(dw) (dw) -#define scr_to_cpu(dw) (dw) -#endif +#define cpu_to_scr(dw) htole32(dw) +#define scr_to_cpu(dw) le32toh(dw) /* * Access to the chip IO registers and on-chip RAM. - * We use the `bus space' interface under FreeBSD-4 and + * We use the `bus space' interface under FreeBSD-4 and * later kernel versions. */ @@ -1050,7 +1006,7 @@ #define NS_PPR (3) /* - * A CCB hashed table is used to retrieve CCB address + * A CCB hashed table is used to retrieve CCB address * from DSA value. */ #define CCB_HASH_SHIFT 8 @@ -1074,12 +1030,12 @@ /* * Device quirks. - * Some devices, for example the CHEETAH 2 LVD, disconnects without + * Some devices, for example the CHEETAH 2 LVD, disconnects without * saving the DATA POINTER then reselects and terminates the IO. - * On reselection, the automatic RESTORE DATA POINTER makes the + * On reselection, the automatic RESTORE DATA POINTER makes the * CURRENT DATA POINTER not point at the end of the IO. * This behaviour just breaks our calculation of the residual. - * For now, we just force an AUTO SAVE on disconnection and will + * For now, we just force an AUTO SAVE on disconnection and will * fix that in a further driver version. */ #define SYM_QUIRK_AUTOSAVE 1 @@ -1135,23 +1091,23 @@ * Global TCB HEADER. * * Due to lack of indirect addressing on earlier NCR chips, - * this substructure is copied from the TCB to a global + * this substructure is copied from the TCB to a global * address after selection. - * For SYMBIOS chips that support LOAD/STORE this copy is + * For SYMBIOS chips that support LOAD/STORE this copy is * not needed and thus not performed. */ struct sym_tcbh { /* * Scripts bus addresses of LUN table accessed from scripts. - * LUN #0 is a special case, since multi-lun devices are rare, - * and we we want to speed-up the general case and not waste + * LUN #0 is a special case, since multi-lun devices are rare, + * and we we want to speed-up the general case and not waste * resources. */ u32 luntbl_sa; /* bus address of this table */ u32 lun0_sa; /* bus address of LCB #0 */ /* * Actual SYNC/WIDE IO registers value for this target. - * 'sval', 'wval' and 'uval' are read from SCRIPTS and + * 'sval', 'wval' and 'uval' are read from SCRIPTS and * so have alignment constraints. */ /*0*/ u_char uval; /* -> SCNTL4 register */ @@ -1185,14 +1141,14 @@ #endif /* - * Bitmap that tells about LUNs that succeeded at least + * Bitmap that tells about LUNs that succeeded at least * 1 IO and therefore assumed to be a real device. * Avoid useless allocation of the LCB structure. */ u32 lun_map[(SYM_CONF_MAX_LUN+31)/32]; /* - * Bitmap that tells about LUNs that haven't yet an LCB + * Bitmap that tells about LUNs that haven't yet an LCB * allocated (not discovered or LCB allocation failed). */ u32 busy0_map[(SYM_CONF_MAX_LUN+31)/32]; @@ -1225,22 +1181,22 @@ * Global LCB HEADER. * * Due to lack of indirect addressing on earlier NCR chips, - * this substructure is copied from the LCB to a global + * this substructure is copied from the LCB to a global * address after selection. - * For SYMBIOS chips that support LOAD/STORE this copy is + * For SYMBIOS chips that support LOAD/STORE this copy is * not needed and thus not performed. */ struct sym_lcbh { /* * SCRIPTS address jumped by SCRIPTS on reselection. - * For not probed logical units, this address points to - * SCRIPTS that deal with bad LU handling (must be at + * For not probed logical units, this address points to + * SCRIPTS that deal with bad LU handling (must be at * offset zero of the LCB for that reason). */ /*0*/ u32 resel_sa; /* - * Task (bus address of a CCB) read from SCRIPTS that points + * Task (bus address of a CCB) read from SCRIPTS that points * to the unique ITL nexus allowed to be disconnected. */ u32 itl_task_sa; @@ -1262,8 +1218,8 @@ /*0*/ struct sym_lcbh head; /* - * Task table read from SCRIPTS that contains pointers to - * ITLQ nexuses. The bus address read from SCRIPTS is + * Task table read from SCRIPTS that contains pointers to + * ITLQ nexuses. The bus address read from SCRIPTS is * inside the header. */ u32 *itlq_tbl; /* Kernel virtual address */ @@ -1295,7 +1251,7 @@ /* * Action from SCRIPTS on a task. - * Is part of the CCB, but is also used separately to plug + * Is part of the CCB, but is also used separately to plug * error handling action to perform from SCRIPTS. */ struct sym_actscr { @@ -1306,8 +1262,8 @@ /* * Phase mismatch context. * - * It is part of the CCB and is used as parameters for the - * DATA pointer. We need two contexts to handle correctly the + * It is part of the CCB and is used as parameters for the + * DATA pointer. We need two contexts to handle correctly the * SAVED DATA POINTER. */ struct sym_pmc { @@ -1317,8 +1273,8 @@ /* * LUN control block lookup. - * We use a direct pointer for LUN #0, and a table of - * pointers which is only allocated for devices that support + * We use a direct pointer for LUN #0, and a table of + * pointers which is only allocated for devices that support * LUN(s) > 0. */ #if SYM_CONF_MAX_LUN <= 1 @@ -1331,8 +1287,8 @@ /* * Status are used by the host and the script processor. * - * The last four bytes (status[4]) are copied to the - * scratchb register (declared as scr0..scr3) just after the + * The last four bytes (status[4]) are copied to the + * scratchb register (declared as scr0..scr3) just after the * select/reselect, and copied back just after disconnecting. * Inside the script the XX_REG are used. */ @@ -1374,10 +1330,10 @@ * Global CCB HEADER. * * Due to lack of indirect addressing on earlier NCR chips, - * this substructure is copied from the ccb to a global - * address after selection (or reselection) and copied back + * this substructure is copied from the ccb to a global + * address after selection (or reselection) and copied back * before disconnect. - * For SYMBIOS chips that support LOAD/STORE this copy is + * For SYMBIOS chips that support LOAD/STORE this copy is * not needed and thus not performed. */ @@ -1389,7 +1345,7 @@ /* * SCRIPTS jump address that deal with data pointers. - * 'savep' points to the position in the script responsible + * 'savep' points to the position in the script responsible * for the actual transfer of data. * It's written on reception of a SAVE_DATA_POINTER message. */ @@ -1406,8 +1362,8 @@ /* * Data Structure Block * - * During execution of a ccb by the script processor, the - * DSA (data structure address) register points to this + * During execution of a ccb by the script processor, the + * DSA (data structure address) register points to this * substructure of the ccb. */ struct sym_dsb { @@ -1420,7 +1376,7 @@ /* * Phase mismatch contexts. * We need two to handle correctly the SAVED DATA POINTER. - * MUST BOTH BE AT OFFSET < 256, due to using 8 bit arithmetic + * MUST BOTH BE AT OFFSET < 256, due to using 8 bit arithmetic * for address calculation from SCRIPTS. */ struct sym_pmc pm0; @@ -1443,7 +1399,7 @@ */ struct sym_ccb { /* - * This is the data structure which is pointed by the DSA + * This is the data structure which is pointed by the DSA * register when it is executed by the script processor. * It must be the first entry. */ @@ -1469,7 +1425,7 @@ /* * Message areas. * We prepare a message to be sent after selection. - * We may use a second one if the command is rescheduled + * We may use a second one if the command is rescheduled * due to CHECK_CONDITION or COMMAND TERMINATED. * Contents are IDENTIFY and SIMPLE_TAG. * While negotiating sync or wide transfer, @@ -1520,8 +1476,8 @@ struct sym_hcb { /* * Global headers. - * Due to poorness of addressing capabilities, earlier - * chips (810, 815, 825) copy part of the data structures + * Due to poorness of addressing capabilities, earlier + * chips (810, 815, 825) copy part of the data structures * (CCB, TCB and LCB) in fixed areas. */ #ifdef SYM_CONF_GENERIC_SUPPORT @@ -1530,14 +1486,14 @@ struct sym_lcbh lcb_head; #endif /* - * Idle task and invalid task actions and + * Idle task and invalid task actions and * their bus addresses. */ struct sym_actscr idletask, notask, bad_itl, bad_itlq; vm_offset_t idletask_ba, notask_ba, bad_itl_ba, bad_itlq_ba; /* - * Dummy lun table to protect us against target + * Dummy lun table to protect us against target * returning bad lun number on reselection. */ u32 *badluntbl; /* Table physical address */ @@ -1550,7 +1506,7 @@ /* * Bit 32-63 of the on-chip RAM bus address in LE format. - * The START_RAM64 script loads the MMRS and MMWS from this + * The START_RAM64 script loads the MMRS and MMWS from this * field. */ u32 scr_ram_seg; @@ -1559,12 +1515,10 @@ * Chip and controller indentification. */ device_t device; - int unit; - char inst_name[8]; /* * Initial value of some IO register bits. - * These values are assumed to have been set by BIOS, and may + * These values are assumed to have been set by BIOS, and may * be used to probe adapter implementation differences. */ u_char sv_scntl0, sv_scntl3, sv_dmode, sv_dcntl, sv_ctest3, sv_ctest4, @@ -1572,11 +1526,11 @@ sv_stest1; /* - * Actual initial value of IO register bits used by the - * driver. They are loaded at initialisation according to + * Actual initial value of IO register bits used by the + * driver. They are loaded at initialisation according to * features that are to be enabled/disabled. */ - u_char rv_scntl0, rv_scntl3, rv_dmode, rv_dcntl, rv_ctest3, rv_ctest4, + u_char rv_scntl0, rv_scntl3, rv_dmode, rv_dcntl, rv_ctest3, rv_ctest4, rv_ctest5, rv_stest2, rv_ccntl0, rv_ccntl1, rv_scntl4; /* @@ -1589,7 +1543,7 @@ #endif /* - * Target control block bus address array used by the SCRIPT + * Target control block bus address array used by the SCRIPT * on reselection. */ u32 *targtbl; @@ -1614,12 +1568,12 @@ /* * Bus stuff. * - * My understanding of PCI is that all agents must share the + * My understanding of PCI is that all agents must share the * same addressing range and model. - * But some hardware architecture guys provide complex and + * But some hardware architecture guys provide complex and * brain-deaded stuff that makes shit. - * This driver only support PCI compliant implementations and - * deals with part of the BUS stuff complexity only to fit O/S + * This driver only support PCI compliant implementations and + * deals with part of the BUS stuff complexity only to fit O/S * requirements. */ bus_space_handle_t io_bsh; @@ -1635,23 +1589,18 @@ bus_dma_tag_t bus_dmat; /* DMA tag from parent BUS */ bus_dma_tag_t data_dmat; /* DMA tag for user data */ /* - * Virtual and physical bus addresses of the chip. + * BUS addresses of the chip */ - vm_offset_t mmio_va; /* MMIO kernel virtual address */ - vm_offset_t mmio_pa; /* MMIO CPU physical address */ vm_offset_t mmio_ba; /* MMIO BUS address */ int mmio_ws; /* MMIO Window size */ - vm_offset_t ram_va; /* RAM kernel virtual address */ - vm_offset_t ram_pa; /* RAM CPU physical address */ vm_offset_t ram_ba; /* RAM BUS address */ int ram_ws; /* RAM window size */ - u32 io_port; /* IO port address */ /* * SCRIPTS virtual and physical bus addresses. * 'script' is loaded in the on-chip RAM if present. - * 'scripth' stays in main memory for all chips except the + * 'scripth' stays in main memory for all chips except the * 53C895A, 53C896 and 53C1010 that provide 8K on-chip RAM. */ u_char *scripta0; /* Copies of script and scripth */ @@ -1663,14 +1612,14 @@ u_short scriptb_sz; /* Actual size of script B */ /* - * Bus addresses, setup and patch methods for + * Bus addresses, setup and patch methods for * the selected firmware. */ struct sym_fwa_ba fwa_bas; /* Useful SCRIPTA bus addresses */ struct sym_fwb_ba fwb_bas; /* Useful SCRIPTB bus addresses */ - void (*fw_setup)(hcb_p np, struct sym_fw *fw); + void (*fw_setup)(hcb_p np, const struct sym_fw *fw); void (*fw_patch)(hcb_p np); - char *fw_name; + const char *fw_name; /* * General controller parameters and configuration. @@ -1693,7 +1642,7 @@ u32 pciclk_khz; /* Estimated PCI clock in KHz */ /* * Start queue management. - * It is filled up by the host processor and accessed by the + * It is filled up by the host processor and accessed by the * SCRIPTS processor in order to start SCSI commands. */ volatile /* Prevent code optimizations */ @@ -1713,7 +1662,7 @@ /* * Miscellaneous buffers accessed by the scripts-processor. - * They shall be DWORD aligned, because they may be read or + * They shall be DWORD aligned, because they may be read or * written with a script command. */ u_char msgout[8]; /* Buffer for MESSAGE OUT */ @@ -1738,7 +1687,7 @@ /* * During error handling and/or recovery, - * active CCBs that are to be completed with + * active CCBs that are to be completed with * error or requeued are moved from the busy_ccbq * to the comp_ccbq prior to completion. */ @@ -1752,12 +1701,12 @@ /* * IMMEDIATE ARBITRATION (IARB) control. * - * We keep track in 'last_cp' of the last CCB that has been - * queued to the SCRIPTS processor and clear 'last_cp' when - * this CCB completes. If last_cp is not zero at the moment - * we queue a new CCB, we set a flag in 'last_cp' that is + * We keep track in 'last_cp' of the last CCB that has been + * queued to the SCRIPTS processor and clear 'last_cp' when + * this CCB completes. If last_cp is not zero at the moment + * we queue a new CCB, we set a flag in 'last_cp' that is * used by the SCRIPTS as a hint for setting IARB. - * We donnot set more than 'iarb_max' consecutive hints for + * We donnot set more than 'iarb_max' consecutive hints for * IARB in order to leave devices a chance to reselect. * By the way, any non zero value of 'iarb_max' is unfair. :) */ @@ -1769,7 +1718,7 @@ /* * Command abort handling. - * We need to synchronize tightly with the SCRIPTS + * We need to synchronize tightly with the SCRIPTS * processor in order to handle things correctly. */ u_char abrt_msg[4]; /* Message to send buffer */ @@ -1783,9 +1732,9 @@ /* * Return the name of the controller. */ -static __inline char *sym_name(hcb_p np) +static __inline const char *sym_name(hcb_p np) { - return np->inst_name; + return device_get_nameunit(np->device); } /*--------------------------------------------------------------------------*/ @@ -1813,10 +1762,10 @@ #define SYM_FWA_SCR sym_fw1a_scr #define SYM_FWB_SCR sym_fw1b_scr #include -struct sym_fwa_ofs sym_fw1a_ofs = { +static const struct sym_fwa_ofs sym_fw1a_ofs = { SYM_GEN_FW_A(struct SYM_FWA_SCR) }; -struct sym_fwb_ofs sym_fw1b_ofs = { +static const struct sym_fwb_ofs sym_fw1b_ofs = { SYM_GEN_FW_B(struct SYM_FWB_SCR) }; #undef SYM_FWA_SCR @@ -1829,10 +1778,10 @@ #define SYM_FWA_SCR sym_fw2a_scr #define SYM_FWB_SCR sym_fw2b_scr #include -struct sym_fwa_ofs sym_fw2a_ofs = { +static const struct sym_fwa_ofs sym_fw2a_ofs = { SYM_GEN_FW_A(struct SYM_FWA_SCR) }; -struct sym_fwb_ofs sym_fw2b_ofs = { +static const struct sym_fwb_ofs sym_fw2b_ofs = { SYM_GEN_FW_B(struct SYM_FWB_SCR) SYM_GEN_B(struct SYM_FWB_SCR, start64) SYM_GEN_B(struct SYM_FWB_SCR, pm_handle) @@ -1935,7 +1884,7 @@ } /* - * Remove a couple of work-arounds specific to C1010 if + * Remove a couple of work-arounds specific to C1010 if * they are not desirable. See `sym_fw2.h' for more details. */ if (!(np->device_id == PCI_ID_LSI53C1010_2 && @@ -1955,10 +1904,10 @@ * These ones are loaded by the SCRIPTS processor. */ scriptb0->pm0_data_addr[0] = - cpu_to_scr(np->scripta_ba + + cpu_to_scr(np->scripta_ba + offsetof(struct sym_fw2a_scr, pm0_data)); scriptb0->pm1_data_addr[0] = - cpu_to_scr(np->scripta_ba + + cpu_to_scr(np->scripta_ba + offsetof(struct sym_fw2a_scr, pm1_data)); } @@ -1983,18 +1932,18 @@ * Setup useful script bus addresses. * To be done for all firmwares. */ -static void -sym_fw_setup_bus_addresses(hcb_p np, struct sym_fw *fw) +static void +sym_fw_setup_bus_addresses(hcb_p np, const struct sym_fw *fw) { u32 *pa; >>> TRUNCATED FOR MAIL (1000 lines) <<< From sam at FreeBSD.org Mon Jun 2 01:31:16 2008 From: sam at FreeBSD.org (Sam Leffler) Date: Mon Jun 2 01:31:18 2008 Subject: PERFORCE change 142727 for review Message-ID: <200806020131.m521VFOU048043@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142727 Change 142727 by sam@sam_ebb on 2008/06/02 01:31:13 IFC Affected files ... .. //depot/projects/vap/sys/dev/ath/if_ath.c#82 integrate Differences ... ==== //depot/projects/vap/sys/dev/ath/if_ath.c#82 (text+ko) ==== @@ -28,7 +28,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.186 2008/05/12 00:15:27 sam Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ath/if_ath.c,v 1.190 2008/05/29 00:14:35 sam Exp $"); /* * Driver for the Atheros Wireless LAN controller. @@ -3860,7 +3860,10 @@ ath_rx_tap(struct ifnet *ifp, struct mbuf *m, const struct ath_rx_status *rs, u_int64_t tsf, int16_t nf) { -#define CHANNEL_HT (CHANNEL_HT20|CHANNEL_HT40PLUS|CHANNEL_HT40MINUS) +#define CHAN_HT htole32(CHANNEL_HT20|CHANNEL_HT40PLUS|CHANNEL_HT40MINUS) +#define CHAN_HT20 htole32(IEEE80211_CHAN_HT20) +#define CHAN_HT40U htole32(IEEE80211_CHAN_HT40U) +#define CHAN_HT40D htole32(IEEE80211_CHAN_HT40D) struct ath_softc *sc = ifp->if_softc; uint8_t rxrate; @@ -3877,23 +3880,16 @@ sc->sc_rx_th.wr_rate = sc->sc_hwmap[rxrate].ieeerate; sc->sc_rx_th.wr_flags = sc->sc_hwmap[rxrate].rxflags; #if HAL_ABI_VERSION >= 0x07050400 - if (sc->sc_curchan.channelFlags & CHANNEL_HT) { - /* - * For HT operation we must specify the channel - * attributes for each packet since they vary. - * We deduce this by from HT40 bit in the rx - * status and the MCS/legacy rate bit. - */ - sc->sc_rx_th.wr_chan_flags &= ~IEEE80211_CHAN_HT; - if (sc->sc_rx_th.wr_rate & 0x80) { /* HT rate */ - /* XXX 40U/40D */ - sc->sc_rx_th.wr_chan_flags |= - (rs->rs_flags & HAL_RX_2040) ? - IEEE80211_CHAN_HT40U : IEEE80211_CHAN_HT20; - if ((rs->rs_flags & HAL_RX_GI) == 0) - sc->sc_rx_th.wr_flags |= - IEEE80211_RADIOTAP_F_SHORTGI; - } + sc->sc_rx_th.wr_chan_flags &= ~CHAN_HT; + if (sc->sc_rx_th.wr_rate & 0x80) { /* HT rate */ + if ((rs->rs_flags & HAL_RX_2040) == 0) + sc->sc_rx_th.wr_chan_flags |= CHAN_HT20; + else if (sc->sc_curchan.channelFlags & CHANNEL_HT40PLUS) + sc->sc_rx_th.wr_chan_flags |= CHAN_HT40U; + else + sc->sc_rx_th.wr_chan_flags |= CHAN_HT40D; + if ((rs->rs_flags & HAL_RX_GI) == 0) + sc->sc_rx_th.wr_flags |= IEEE80211_RADIOTAP_F_SHORTGI; } #endif sc->sc_rx_th.wr_tsf = htole64(ath_extend_tsf(rs->rs_tstamp, tsf)); @@ -3907,7 +3903,10 @@ bpf_mtap2(ifp->if_bpf, &sc->sc_rx_th, sc->sc_rx_th_len, m); return 1; -#undef CHANNEL_HT +#undef CHAN_HT20 +#undef CHAN_HT40U +#undef CHAN_HT40D +#undef CHAN_HT } static void From sam at FreeBSD.org Mon Jun 2 04:18:03 2008 From: sam at FreeBSD.org (Sam Leffler) Date: Mon Jun 2 04:18:05 2008 Subject: PERFORCE change 142729 for review Message-ID: <200806020418.m524I2qo064534@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142729 Change 142729 by sam@sam_ebb on 2008/06/02 04:17:52 prepare for ani change Affected files ... .. //depot/projects/vap/sys/dev/ath/if_ath.c#83 edit Differences ... ==== //depot/projects/vap/sys/dev/ath/if_ath.c#83 (text+ko) ==== @@ -2519,10 +2519,10 @@ * * o always accept unicast, broadcast, and multicast traffic * o accept PHY error frames when hardware doesn't have MIB support - * to count and we need them for ANI (sta mode only at the moment) + * to count and we need them for ANI (sta mode only until recently) * and we are not scanning (ANI is disabled) - * NB: only with recent hal's; older hal's add rx filter bits out - * of sight and we need to blindly preserve them + * NB: older hal's add rx filter bits out of sight and we need to + * blindly preserve them * o probe request frames are accepted only when operating in * hostap, adhoc, or monitor modes * o enable promiscuous mode @@ -2549,15 +2549,17 @@ struct ieee80211com *ic = ifp->if_l2com; u_int32_t rfilt; + rfilt = HAL_RX_FILTER_UCAST | HAL_RX_FILTER_BCAST | HAL_RX_FILTER_MCAST; #if HAL_ABI_VERSION < 0x08011600 - rfilt = (ath_hal_getrxfilter(sc->sc_ah) & - (HAL_RX_FILTER_PHYRADAR | HAL_RX_FILTER_PHYERR)) - | HAL_RX_FILTER_UCAST | HAL_RX_FILTER_BCAST | HAL_RX_FILTER_MCAST; -#else - rfilt = HAL_RX_FILTER_UCAST | HAL_RX_FILTER_BCAST | HAL_RX_FILTER_MCAST; + rfilt |= (ath_hal_getrxfilter(sc->sc_ah) & + (HAL_RX_FILTER_PHYRADAR | HAL_RX_FILTER_PHYERR)); +#elsif HAL_ABI_VERSION < 0x08060100 if (ic->ic_opmode == IEEE80211_M_STA && !sc->sc_needmib && !sc->sc_scanning) rfilt |= HAL_RX_FILTER_PHYERR; +#else + if (!sc->sc_needmib && !sc->sc_scanning) + rfilt |= HAL_RX_FILTER_PHYERR; #endif if (ic->ic_opmode != IEEE80211_M_STA) rfilt |= HAL_RX_FILTER_PROBEREQ; From bilouro at FreeBSD.org Mon Jun 2 05:20:06 2008 From: bilouro at FreeBSD.org (Victor Hugo Bilouro) Date: Mon Jun 2 05:20:07 2008 Subject: PERFORCE change 142730 for review Message-ID: <200806020520.m525K5OH079623@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142730 Change 142730 by bilouro@bilouro_tcptest on 2008/06/02 05:19:30 pointed to discard removed tcp source port. It's now a random number between 50000 and 60000 Affected files ... .. //depot/projects/soc2008/bilouro_tcptest/src/scripts/fasteners/tcpconnect.sh#3 edit Differences ... ==== //depot/projects/soc2008/bilouro_tcptest/src/scripts/fasteners/tcpconnect.sh#3 (text+ko) ==== @@ -1,2 +1,2 @@ #!/bin/sh - python ../tcpconnect.py -i ed0 -s "192.168.1.10" -t "192.168.1.20" -e "00:1c:42:47:3f:cd" -d "00:1c:42:db:c5:22" -o 53639 -x 22022 + python ../tcpconnect.py -i ed0 -s "192.168.1.10" -t "192.168.1.20" -e "00:1c:42:47:3f:cd" -d "00:1c:42:db:c5:22" -x 9 From bilouro at FreeBSD.org Mon Jun 2 05:25:11 2008 From: bilouro at FreeBSD.org (Victor Hugo Bilouro) Date: Mon Jun 2 05:28:26 2008 Subject: PERFORCE change 142731 for review Message-ID: <200806020525.m525PAJw080103@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142731 Change 142731 by bilouro@bilouro_tcptest on 2008/06/02 05:24:27 added copyright this version do complete connection establishment and finalization completelly reorganized Especial thanks for Anre Oppermann (andre at freebsd dot org) Affected files ... .. //depot/projects/soc2008/bilouro_tcptest/src/scripts/tcpconnect.py#4 edit Differences ... ==== //depot/projects/soc2008/bilouro_tcptest/src/scripts/tcpconnect.py#4 (text+ko) ==== @@ -1,3 +1,38 @@ +# Copyright (c) 2008, Victor Hugo Bilouro +# All rights reserved. +# +# Redistribution and use in source and binary forms, with or without +# modification, are permitted provided that the following conditions are +# met: +# +# Redistributions of source code must retain the above copyright notice, +# this list of conditions and the following disclaimer. +# +# Redistributions in binary form must reproduce the above copyright +# notice, this list of conditions and the following disclaimer in the +# documentation and/or other materials provided with the distribution. +# +# Neither the name of Victor Hugo Bilouro nor the names of its +# contributors may be used to endorse or promote products derived from +# this software without specific prior written permission. +# +# THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS +# "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT +# LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR +# A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT +# OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, +# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT +# LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, +# DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY +# THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT +# (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE +# OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. +# +# Author: Victor Hugo Bilouro +# +# Description: A simple test of three way handshake +# + from pcs.packets import ipv4 from pcs.packets import tcp from pcs.packets import ethernet @@ -38,172 +73,304 @@ (options, args) = parser.parse_args() - ##todo: create syn. test exately equals a tcp dump. DONE - ##todo: wait with timer the answer possibilities (in this a simple ack-syn) DONE - ##todo: send an acknoledgment establishing the connection + import random + + ipid = random.randrange(1,(1<<16)-1) + tcpsport = random.randrange(50000,60000) #int(options.source_port ) + tcpsequence = random.randrange(1,(1<<32)-1) + output = pcs.PcapConnector(options.interface) + + replyip = None + replytcp = None + reply = None + packet = None - # - # creating a durty-code ether-ip-tcp-syn packet - # - import random + # SYN + what = "SYN" - ip = ipv4.ipv4() + ip1 = ipv4.ipv4() - ip.version = 4 # 0100 max 1111 15 *caution* :) - ip.hlen = 5 # 0101 0 -> min 0101 (20 bytes) - ip.tos = 0 - ip.id = random.randrange(1,(1<<16)-1) - ip.flags = 0 #study on book - ip.offset = 0 - ip.ttl = 64 - ip.protocol = pcs.IPPROTO_TCP #1 ICMP #6 TCP - ip.src = pcs.inet_atol(options.ip_source) - ip.dst = pcs.inet_atol(options.ip_target) + ip1.version = 4 + ip1.hlen = 5 + ip1.tos = 0 + ip1.id = ++ipid + ip1.flags = 0 + ip1.offset = 0 + ip1.ttl = 64 + ip1.protocol = pcs.IPPROTO_TCP + ip1.src = pcs.inet_atol(options.ip_source) + ip1.dst = pcs.inet_atol(options.ip_target) + tcp1 = tcp.tcp() - tcppkt = tcp.tcp() + tcp1.sport = tcpsport + tcp1.dport = int(options.destination_port) + tcp1.sequence = tcpsequence + tcpsequence = tcpsequence + 1 # SYN consumes the sequence + tcp1.ack_number = 0 + tcp1.offset = 5 + tcp1.urgent = 0 + tcp1.ack = 0 + tcp1.push = 0 + tcp1.reset = 0 + tcp1.syn = 1 + tcp1.fin = 0 + tcp1.window = (1<<16)-1 + tcp1.urg_point = 0 + #tcp1.options - tcppkt.sport = int(options.source_port ) - tcppkt.dport = int(options.destination_port) - tcppkt.sequence = random.randrange(1,(1<<32)-1) - tcppkt.ack_number = 0 - tcppkt.offset = 5 #header length - tcppkt.urgent = 0 - tcppkt.ack = 0 - tcppkt.push = 0 - tcppkt.reset = 0 - tcppkt.syn = 1 - tcppkt.fin = 0 - tcppkt.window = (1<<16)-1 - tcppkt.urg_point = 0 - #tcppkt.options + tcp1.checksum = tcp_cksum(tcp1 , ip1) - tcppkt.checksum = tcp_cksum(tcppkt , ip) + ip1.length = len(ip1.bytes) + len(tcp1.bytes) - ip.length = len(ip.bytes) + len(tcppkt.bytes) - # important, only calcs the ip checksum after fill length field - ip.checksum = ip_cksum(ip) + ip1.checksum = ip_cksum(ip1) - ether = ethernet.ethernet() - ether.src = ethernet.ether_atob(options.ether_source) - ether.dst = ethernet.ether_atob(options.ether_destination) - ether.type = 0x800 + ether1 = ethernet.ethernet() + ether1.src = ethernet.ether_atob(options.ether_source) + ether1.dst = ethernet.ether_atob(options.ether_destination) + ether1.type = 0x800 - print "\n syn---------------------------------" - print tcppkt + packet = pcs.Chain([ether1, ip1, tcp1]) + + print "\n%s---------------------------------" % what + print tcp1 print "---------------------------------" - packet = pcs.Chain([ether, ip, tcppkt]) - - output = pcs.PcapConnector(options.interface) - - # SYN SENT out = output.write(packet.bytes, len(packet.bytes)) +## SYN + # SYN+ACK + what = "SYN+ACK" + while 1: + reply = output.read() + packet = ethernet.ethernet(reply) + try: + replyip = packet.data + replytcp = replyip.data + if (ip1.src==replyip.dst and \ + ip1.dst==replyip.src and \ + tcp1.sport==replytcp.dport and \ + tcp1.dport==replytcp.sport): + break + except: #it cannot be a tcp packet (without sport:) + pass + print "\n%s---------------------------------" % what + print packet.data.data + print "---------------------------------" +## SYN+ACK + # ACK 134,187 + what = "ACK (SYN)" - reply = output.read() - reply = output.read() + ip3 = ipv4.ipv4() + + ip3.version = 4 + ip3.hlen = 5 + ip3.tos = 0 + ip3.id = ++ipid + ip3.flags = 0 + ip3.offset = 0 + ip3.ttl = 64 + ip3.protocol = pcs.IPPROTO_TCP + ip3.src = pcs.inet_atol(options.ip_source) + ip3.dst = pcs.inet_atol(options.ip_target) + + tcp3 = tcp.tcp() - packet = ethernet.ethernet(reply) - print "\n syn+ack-----------------------------" - print packet.data.data - print "---------------------------------" + tcp3.sport = tcpsport + tcp3.dport = int(options.destination_port) + tcp3.sequence = tcpsequence + ##tcpsequence = tcpsequence + 1 # SYN DOES NOT consumes the sequence + tcp3.ack_number = replytcp.sequence + 1 + tcp3.offset = 5 + tcp3.urgent = 0 + tcp3.ack = 1 + tcp3.push = 0 + tcp3.reset = 0 + tcp3.syn = 0 + tcp3.fin = 0 + tcp3.window = (1<<16)-1 + tcp3.urg_point = 0 + #tcp3.options - # - # this commented piece dont work.. don't ask me why. (now) - # + tcp3.checksum = tcp_cksum(tcp3 , ip3) - #tcpreply = packet.data.data + ip3.length = len(ip3.bytes) + len(tcp3.bytes) - #import copy - #ipack = copy.deepcopy(ip) - #ipack.id = ip.id + 1 + # important, only calcs the ip checksum after fill length field + ip3.checksum = ip_cksum(ip3) - #tcpack = copy.deepcopy(tcppkt) + ether3 = ethernet.ethernet() + ether3.src = ethernet.ether_atob(options.ether_source) + ether3.dst = ethernet.ether_atob(options.ether_destination) + ether3.type = 0x800 - #tcpack.sequence = 0 - #tcpack.ack_number = tcpreply.sequence + 1 - #tcpack.ack = 1 - #tcpack.syn = 0 - #tcpack.checksum = tcp_cksum(tcpack , ipack) + packet = pcs.Chain([ether3, ip3, tcp3]) - # important, only calcs the ip checksum after fill length field - #ipack.checksum = ip_cksum(ipack) - - #packetreply = pcs.Chain([ether, ipack, tcpack]) - #out = output.write(packetreply.bytes, len(packetreply.bytes)) + print "\n%s---------------------------------" % what + print tcp3 + print "---------------------------------" - # - # ANOTHER. this worked! (please don't pay attention in how it was wrote, it's a very durty test, ok?) - # + out = output.write(packet.bytes, len(packet.bytes)) - ipack = ipv4.ipv4() +## ACK + # FIN 188,241 + what = "FIN" - ipack.version = 4 # 0100 max 1111 15 *caution* :) - ipack.hlen = 5 # 0101 0 -> min 0101 (20 bytes) - ipack.tos = 0 - ipack.id = ip.id + 1 - ipack.flags = 0 #study on book - ipack.offset = 0 - ipack.ttl = 64 - ipack.protocol = pcs.IPPROTO_TCP #1 ICMP #6 TCP - ipack.src = pcs.inet_atol(options.ip_source) - ipack.dst = pcs.inet_atol(options.ip_target) + ip4 = ipv4.ipv4() - tcpreply = packet.data.data - tcpack = tcp.tcp() + ip4.version = 4 + ip4.hlen = 5 + ip4.tos = 0 + ip4.id = ++ipid + ip4.flags = 0 + ip4.offset = 0 + ip4.ttl = 64 + ip4.protocol = pcs.IPPROTO_TCP + ip4.src = pcs.inet_atol(options.ip_source) + ip4.dst = pcs.inet_atol(options.ip_target) + + tcp4 = tcp.tcp() - tcpack.sport = int(options.source_port ) - tcpack.dport = int(options.destination_port) - tcpack.sequence = 0 - tcpack.ack_number = tcpreply.sequence + 1 - tcpack.offset = 5 #header length - tcpack.urgent = 0 - tcpack.ack = 1 - tcpack.push = 0 - tcpack.reset = 0 - tcpack.syn = 0 - tcpack.fin = 0 - tcpack.window = (1<<16)-1 - tcpack.urg_point = 0 - #tcpack.options + tcp4.sport = tcpsport + tcp4.dport = int(options.destination_port) + tcp4.sequence = tcpsequence + tcpsequence = tcpsequence + 1 # FIN consumes the sequence + tcp4.ack_number = replytcp.sequence + 1 + tcp4.offset = 5 + tcp4.urgent = 0 + tcp4.ack = 1 + tcp4.push = 0 + tcp4.reset = 0 + tcp4.syn = 0 + tcp4.fin = 1 + tcp4.window = (1<<16)-1 + tcp4.urg_point = 0 + #tcp4.options - tcpack.checksum = tcp_cksum(tcpack , ipack) + tcp4.checksum = tcp_cksum(tcp4 , ip4) - ipack.length = len(ipack.bytes) + len(tcpack.bytes) + ip4.length = len(ip4.bytes) + len(tcp4.bytes) # important, only calcs the ip checksum after fill length field - ipack.checksum = ip_cksum(ipack) + ip4.checksum = ip_cksum(ip4) + + ether4 = ethernet.ethernet() + ether4.src = ethernet.ether_atob(options.ether_source) + ether4.dst = ethernet.ether_atob(options.ether_destination) + ether4.type = 0x800 + + packet = pcs.Chain([ether4, ip4, tcp4]) + + print "\n%s---------------------------------" % what + print tcp4 + print "---------------------------------" + + out = output.write(packet.bytes, len(packet.bytes)) - etherack = ethernet.ethernet() - etherack.src = ethernet.ether_atob(options.ether_source) - etherack.dst = ethernet.ether_atob(options.ether_destination) - etherack.type = 0x800 +## FIN + # ACK (FIN) + what = "ACK (FIN)" - packetack = pcs.Chain([etherack, ipack, tcpack]) - out = output.write(packetack.bytes, len(packetack.bytes)) + while 1: + reply = output.read() + packet = ethernet.ethernet(reply) + try: + replyip = packet.data + replytcp = replyip.data + if (ip1.src==replyip.dst and \ + ip1.dst==replyip.src and \ + tcp1.sport==replytcp.dport and \ + tcp1.dport==replytcp.sport): + break + except: #it cannot be a tcp packet (without sport:) + pass - print "\n ack---------------------------------" - print tcpack + print "\n%s---------------------------------" % what + print packet.data.data print "---------------------------------" - # /ANOTHER + +## ACK (FIN) + # FIN + what = "FIN" - reply = output.read() while 1: - try: - reply = output.read() - packet = ethernet.ethernet(reply) - if packet.data.data.sport == 22022: - print "\n-----------------------------" - print packet.data.data - print "---------------------------------" - except: + reply = output.read() + packet = ethernet.ethernet(reply) + try: + replyip = packet.data + replytcp = replyip.data + if (ip1.src==replyip.dst and \ + ip1.dst==replyip.src and \ + tcp1.sport==replytcp.dport and \ + tcp1.dport==replytcp.sport): + break + except: #it cannot be a tcp packet (without sport:) pass + print "\n%s---------------------------------" % what + print packet.data.data + print "---------------------------------" + +## FIN + # ACK (FIN) 288,341 + what = "ACK (FIN)" + + ip7 = ipv4.ipv4() + + ip7.version = 4 + ip7.hlen = 5 + ip7.tos = 0 + ip7.id = ++ipid + ip7.flags = 0 + ip7.offset = 0 + ip7.ttl = 64 + ip7.protocol = pcs.IPPROTO_TCP + ip7.src = pcs.inet_atol(options.ip_source) + ip7.dst = pcs.inet_atol(options.ip_target) + + tcp7 = tcp.tcp() + + tcp7.sport = tcpsport + tcp7.dport = int(options.destination_port) + tcp7.sequence = tcpsequence + ##tcpsequence = tcpsequence + 1 # SYN DOES NOT consumes the sequence + tcp7.ack_number = replytcp.sequence + 1 + tcp7.offset = 5 + tcp7.urgent = 0 + tcp7.ack = 1 + tcp7.push = 0 + tcp7.reset = 0 + tcp7.syn = 0 + tcp7.fin = 0 + tcp7.window = (1<<16)-1 + tcp7.urg_point = 0 + #tcp7.options + + tcp7.checksum = tcp_cksum(tcp7 , ip7) + + ip7.length = len(ip7.bytes) + len(tcp7.bytes) + + # important, only calcs the ip checksum after fill length field + ip7.checksum = ip_cksum(ip7) + + ether7 = ethernet.ethernet() + ether7.src = ethernet.ether_atob(options.ether_source) + ether7.dst = ethernet.ether_atob(options.ether_destination) + ether7.type = 0x800 + + packet = pcs.Chain([ether7, ip7, tcp7]) + + print "\n%s---------------------------------" % what + print tcp7 + print "---------------------------------" + + out = output.write(packet.bytes, len(packet.bytes)) + +## ACK (FIN) def tcp_cksum(self, ip, data = ""): #TODO: add this method to pcs tcp.py """return tcpv4 checksum""" From bilouro at FreeBSD.org Mon Jun 2 07:15:02 2008 From: bilouro at FreeBSD.org (Victor Hugo Bilouro) Date: Mon Jun 2 07:15:04 2008 Subject: PERFORCE change 142736 for review Message-ID: <200806020715.m527F16Y091718@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142736 Change 142736 by bilouro@bilouro_tcptest on 2008/06/02 07:14:17 added some reminders Affected files ... .. //depot/projects/soc2008/bilouro_tcptest/TODO#2 edit Differences ... ==== //depot/projects/soc2008/bilouro_tcptest/TODO#2 (text+ko) ==== @@ -1,1 +1,11 @@ -(1) manually establish a tcp connection using pcs +use the last version of pcs +rewrite connection establishment and finalization pcb-like oriented +elicit with net@ some regression test suggested +create connection establishment options test +create some regression test scripts +create some conformance test scripts +choose the better method to create tests, programmatically or parsing +oriented + +done: +-manually establish a tcp connection using pcs From andre at freebsd.org Mon Jun 2 08:11:32 2008 From: andre at freebsd.org (Andre Oppermann) Date: Mon Jun 2 08:11:34 2008 Subject: PERFORCE change 142736 for review In-Reply-To: <200806020715.m527F16Y091718@repoman.freebsd.org> References: <200806020715.m527F16Y091718@repoman.freebsd.org> Message-ID: <4843A49F.1050306@freebsd.org> Victor Hugo Bilouro wrote: > http://perforce.freebsd.org/chv.cgi?CH=142736 > > Change 142736 by bilouro@bilouro_tcptest on 2008/06/02 07:14:17 > > added some reminders > > Affected files ... > > .. //depot/projects/soc2008/bilouro_tcptest/TODO#2 edit > > Differences ... > > ==== //depot/projects/soc2008/bilouro_tcptest/TODO#2 (text+ko) ==== > > @@ -1,1 +1,11 @@ > -(1) manually establish a tcp connection using pcs > +use the last version of pcs > +rewrite connection establishment and finalization pcb-like oriented > +elicit with net@ some regression test suggested This is a good start to test the basic working of TCP: ftp://ftp.iol.unh.edu/pub/tcp/Core_TCP_Test_Suite_v0.3.pdf It describes a number of tests you could implement. We can certainly expand on it but so far it should keep you busy for a bit. ;-) -- Andre > +create connection establishment options test > +create some regression test scripts > +create some conformance test scripts > +choose the better method to create tests, programmatically or parsing > +oriented > + > +done: > +-manually establish a tcp connection using pcs > > From andrew at FreeBSD.org Mon Jun 2 08:19:07 2008 From: andrew at FreeBSD.org (Andrew Turner) Date: Mon Jun 2 08:19:09 2008 Subject: PERFORCE change 142741 for review Message-ID: <200806020819.m528J6rZ098018@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142741 Change 142741 by andrew@andrew_bender on 2008/06/02 08:18:59 Add uart as a child of the s3c2410 cpu bus Improve the bus code to allow IRQ's to be specified with bus_set_resource Affected files ... .. //depot/projects/arm/src/sys/arm/s3c2xx0/s3c2410.c#9 edit Differences ... ==== //depot/projects/arm/src/sys/arm/s3c2xx0/s3c2410.c#9 (text+ko) ==== @@ -36,6 +36,7 @@ #include #include #include +#include #include #include @@ -54,25 +55,29 @@ u_int irqmasks[IPL_LEVELS]; /* prototypes */ +static device_t s3c2410_add_child(device_t, int, const char *, int); + static int s3c2410_probe(device_t); static int s3c2410_attach(device_t); static void s3c2410_identify(driver_t *, device_t); - +static int s3c2410_setup_intr(device_t, device_t, struct resource *, int, + driver_filter_t *, driver_intr_t *, void *, void **); static struct resource *s3c2410_alloc_resource(device_t, device_t, int, int *, u_long, u_long, u_long, u_int); - static int s3c2410_activate_resource(device_t, device_t, int, int, struct resource *); -static int s3c2410_setup_intr(device_t, device_t, struct resource *, int, - driver_filter_t *, driver_intr_t *, void *, void **); +static struct resource_list *s3c2410_get_resource_list(device_t, device_t); static device_method_t s3c2410_methods[] = { DEVMETHOD(device_probe, s3c2410_probe), DEVMETHOD(device_attach, s3c2410_attach), DEVMETHOD(device_identify, s3c2410_identify), + DEVMETHOD(bus_setup_intr, s3c2410_setup_intr), DEVMETHOD(bus_alloc_resource, s3c2410_alloc_resource), DEVMETHOD(bus_activate_resource, s3c2410_activate_resource), - DEVMETHOD(bus_setup_intr, s3c2410_setup_intr), + DEVMETHOD(bus_get_resource_list,s3c2410_get_resource_list), + DEVMETHOD(bus_set_resource, bus_generic_rl_set_resource), + DEVMETHOD(bus_get_resource, bus_generic_rl_get_resource), {0, 0}, }; @@ -87,35 +92,76 @@ struct s3c2xx0_softc *s3c2xx0_softc = NULL; +static device_t +s3c2410_add_child(device_t bus, int prio, const char *name, int unit) +{ + device_t child; + struct s3c2xx0_ivar *ivar; + + child = device_add_child_ordered(bus, prio, name, unit); + if (child == NULL) + return (NULL); + + ivar = malloc(sizeof(*ivar), M_DEVBUF, M_NOWAIT | M_ZERO); + if (ivar == NULL) { + device_delete_child(bus, child); + printf("Can't add alloc ivar\n"); + return (NULL); + } + device_set_ivars(child, ivar); + resource_list_init(&ivar->resources); + + return (child); +} + static int s3c2410_setup_intr(device_t dev, device_t child, struct resource *ires, int flags, driver_filter_t *filt, driver_intr_t *intr, void *arg, void **cookiep) { int saved_cpsr; + int error; - if (flags & INTR_TYPE_TTY) - rman_set_start(ires, 15); - else if (flags & INTR_TYPE_CLK) { + if (flags & INTR_TYPE_CLK) { if (rman_get_start(ires) == 0) rman_set_start(ires, 26); else rman_set_start(ires, 27); } saved_cpsr = SetCPSR(I32_bit, I32_bit); + SetCPSR(I32_bit, saved_cpsr & I32_bit); - SetCPSR(I32_bit, saved_cpsr & I32_bit); - BUS_SETUP_INTR(device_get_parent(dev), child, ires, flags, filt, + error = BUS_SETUP_INTR(device_get_parent(dev), child, ires, flags, filt, intr, arg, cookiep); - return (0); + return (error); } static struct resource * s3c2410_alloc_resource(device_t bus, device_t child, int type, int *rid, u_long start, u_long end, u_long count, u_int flags) { + struct resource_list_entry *rle; + struct s3c2xx0_ivar *ivar = device_get_ivars(child); + struct resource_list *rl = &ivar->resources; struct resource *res = NULL; + if (device_get_parent(child) != bus) + return (BUS_ALLOC_RESOURCE(device_get_parent(bus), child, + type, rid, start, end, count, flags)); + + rle = resource_list_find(rl, type, *rid); + if (rle != NULL) { + /* There is a resource list. Use it */ + if (rle->res) + panic("Resource rid %d type %d already in use", *rid, + type); + if (start == 0UL && end == ~0UL) { + start = rle->start; + count = ulmax(count, rle->count); + end = ulmax(rle->end, start + count - 1); + } + } + switch (type) { case SYS_RES_IRQ: res = rman_reserve_resource( @@ -124,12 +170,31 @@ break; } - if (res != NULL) + if (res != NULL) { rman_set_rid(res, *rid); + if (rle != NULL) + rle->res = res; + } return (res); } +static int +s3c2410_activate_resource(device_t bus, device_t child, int type, int rid, + struct resource *r) +{ + return (0); +} + +static struct resource_list * +s3c2410_get_resource_list(device_t dev, device_t child) +{ + struct s3c2xx0_ivar *ivar; + + ivar = device_get_ivars(child); + return (&(ivar->resources)); +} + void s3c2410_identify(driver_t *driver, device_t parent) { @@ -137,13 +202,6 @@ BUS_ADD_CHILD(parent, 0, "s3c2410", 0); } -static int -s3c2410_activate_resource(device_t bus, device_t child, int type, int rid, - struct resource *r) -{ - return (0); -} - int s3c2410_probe(device_t dev) { @@ -155,6 +213,7 @@ { struct s3c24x0_softc *sc = device_get_softc(dev); bus_space_tag_t iot; + device_t child; s3c2xx0_softc = &(sc->sc_sx); sc->sc_sx.sc_iot = iot = &s3c2xx0_bs_tag; @@ -207,6 +266,9 @@ panic("s3c2410_attach: failed to set up IRQ rman"); device_add_child(dev, "timer", 0); device_add_child(dev, "nand", 0); + + child = s3c2410_add_child(dev, 0, "uart", 0); + bus_generic_probe(dev); bus_generic_attach(dev); From andrew at FreeBSD.org Mon Jun 2 09:45:34 2008 From: andrew at FreeBSD.org (Andrew Turner) Date: Mon Jun 2 09:45:36 2008 Subject: PERFORCE change 142745 for review Message-ID: <200806020945.m529jXAr018676@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142745 Change 142745 by andrew@andrew_bender on 2008/06/02 09:45:32 First cut at implementing arm_get_next_irq, arm_mask_irq and arm_unmask_irq Affected files ... .. //depot/projects/arm/src/sys/arm/s3c2xx0/s3c2410.c#10 edit Differences ... ==== //depot/projects/arm/src/sys/arm/s3c2xx0/s3c2410.c#10 (text+ko) ==== @@ -332,15 +332,108 @@ int arm_get_next_irq(void) { + int irq; + + if ((irq = bus_space_read_4(&s3c2xx0_bs_tag, + s3c2xx0_softc->sc_intctl_ioh, INTCTL_INTOFFSET)) != 0) { + + /* Clear the pending bit */ + bus_space_write_4(&s3c2xx0_bs_tag, s3c2xx0_softc->sc_intctl_ioh, + INTCTL_SRCPND, (1 << irq)); + bus_space_write_4(&s3c2xx0_bs_tag, s3c2xx0_softc->sc_intctl_ioh, + INTCTL_INTPND, (1 << irq)); + + switch (irq) { + case S3C24X0_INT_ADCTC: + case S3C2410_INT_UART0: + case S3C2410_INT_UART1: + case S3C2410_INT_UART2: + /* Find the sub IRQ */ + irq = 0x7ff; + irq &= bus_space_read_4(&s3c2xx0_bs_tag, + s3c2xx0_softc->sc_intctl_ioh, INTCTL_SUBSRCPND); + irq &= bus_space_read_4(&s3c2xx0_bs_tag, + s3c2xx0_softc->sc_intctl_ioh, INTCTL_INTSUBMSK); + if (irq == 0) + return (-1); + + irq = ffs(irq); + + /* Clear the sub irq pending bit */ + bus_space_write_4(&s3c2xx0_bs_tag, + s3c2xx0_softc->sc_intctl_ioh, INTCTL_SUBSRCPND, + (1 << irq)); + + return (S3C2410_SUBIRQ_MIN + irq); + } + + return (irq); + } return (-1); } void arm_mask_irq(uintptr_t irq) { + u_int32_t mask; + + if (irq < S3C2410_SUBIRQ_MIN) { + mask = bus_space_read_4(&s3c2xx0_bs_tag, + s3c2xx0_softc->sc_intctl_ioh, INTCTL_INTMSK); + mask |= (1 << irq); + bus_space_write_4(&s3c2xx0_bs_tag, + s3c2xx0_softc->sc_intctl_ioh, INTCTL_INTMSK, mask); + } else { + mask = bus_space_read_4(&s3c2xx0_bs_tag, + s3c2xx0_softc->sc_intctl_ioh, INTCTL_INTSUBMSK); + mask |= (1 << (irq - S3C2410_SUBIRQ_MIN)); + bus_space_write_4(&s3c2xx0_bs_tag, + s3c2xx0_softc->sc_intctl_ioh, INTCTL_INTSUBMSK, mask); + } } void arm_unmask_irq(uintptr_t irq) { + u_int32_t mask; + + if (irq >= S3C2410_SUBIRQ_MIN) { + mask = bus_space_read_4(&s3c2xx0_bs_tag, + s3c2xx0_softc->sc_intctl_ioh, INTCTL_INTSUBMSK); + mask &= ~(1 << (irq - S3C2410_SUBIRQ_MIN)); + bus_space_write_4(&s3c2xx0_bs_tag, + s3c2xx0_softc->sc_intctl_ioh, INTCTL_INTSUBMSK, mask); + + /* Find the other irq to unmask */ + switch (irq) { + case S3C2410_INT_ADC: + case S3C2410_INT_TC: + irq = S3C24X0_INT_ADCTC; + break; + case S3C2410_INT_RXD0: + case S3C2410_INT_TXD0: + case S3C2410_INT_ERR0: + irq = S3C2410_INT_UART0; + break; + case S3C2410_INT_RXD1: + case S3C2410_INT_TXD1: + case S3C2410_INT_ERR1: + irq = S3C2410_INT_UART1; + break; + + case S3C2410_INT_RXD2: + case S3C2410_INT_TXD2: + case S3C2410_INT_ERR2: + irq = S3C2410_INT_UART2; + break; + default: + /* We don't know which other IRQ to unmask */ + return; + } + } + mask = bus_space_read_4(&s3c2xx0_bs_tag, s3c2xx0_softc->sc_intctl_ioh, + INTCTL_INTMSK); + mask &= ~(1 << irq); + bus_space_write_4(&s3c2xx0_bs_tag, s3c2xx0_softc->sc_intctl_ioh, + INTCTL_INTMSK, mask); } From andrew at FreeBSD.org Mon Jun 2 10:41:30 2008 From: andrew at FreeBSD.org (Andrew Turner) Date: Mon Jun 2 10:41:32 2008 Subject: PERFORCE change 142746 for review Message-ID: <200806021041.m52AfTxu025021@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142746 Change 142746 by andrew@andrew_bender on 2008/06/02 10:40:58 Fix an off by 1 error. The value returned by ffs starts at 1 not 0. Affected files ... .. //depot/projects/arm/src/sys/arm/s3c2xx0/s3c2410.c#11 edit Differences ... ==== //depot/projects/arm/src/sys/arm/s3c2xx0/s3c2410.c#11 (text+ko) ==== @@ -357,7 +357,7 @@ if (irq == 0) return (-1); - irq = ffs(irq); + irq = ffs(irq) - 1; /* Clear the sub irq pending bit */ bus_space_write_4(&s3c2xx0_bs_tag, From zec at FreeBSD.org Mon Jun 2 12:51:42 2008 From: zec at FreeBSD.org (Marko Zec) Date: Mon Jun 2 12:51:47 2008 Subject: PERFORCE change 142751 for review Message-ID: <200806021251.m52CpftR046637@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142751 Change 142751 by zec@zec_tca51 on 2008/06/02 12:51:04 Unbreak netgraph compilation. Affected files ... .. //depot/projects/vimage/src/sys/netgraph/ng_base.c#27 edit .. //depot/projects/vimage/src/sys/netgraph/vnetgraph.h#7 edit Differences ... ==== //depot/projects/vimage/src/sys/netgraph/ng_base.c#27 (text+ko) ==== @@ -170,11 +170,12 @@ /* Hash related definitions */ /* XXX Don't need to initialise them because it's a LIST */ -#define NG_ID_HASH_SIZE 128 /* most systems wont need even this many */ #ifndef VIMAGE static LIST_HEAD(, ng_node) ng_ID_hash[NG_ID_HASH_SIZE]; +static LIST_HEAD(, ng_node) ng_name_hash[NG_NAME_HASH_SIZE]; #endif static struct mtx ng_idhash_mtx; +static struct mtx ng_namehash_mtx; /* Method to find a node.. used twice so do it here */ #define NG_IDHASH_FN(ID) ((ID) % (NG_ID_HASH_SIZE)) #define NG_IDHASH_FIND(ID, node) \ @@ -189,9 +190,6 @@ } \ } while (0) -#define NG_NAME_HASH_SIZE 128 /* most systems wont need even this many */ -static LIST_HEAD(, ng_node) ng_name_hash[NG_NAME_HASH_SIZE]; -static struct mtx ng_namehash_mtx; #define NG_NAMEHASH(NAME, HASH) \ do { \ u_char h = 0; \ @@ -838,6 +836,7 @@ int ng_name_node(node_p node, const char *name) { + INIT_VNET_NETGRAPH(curvnet); int i, hash; node_p node2; @@ -869,7 +868,7 @@ NG_NAMEHASH(name, hash); mtx_lock(&ng_namehash_mtx); LIST_REMOVE(node, nd_nodes); - LIST_INSERT_HEAD(&ng_name_hash[hash], node, nd_nodes); + LIST_INSERT_HEAD(&V_ng_name_hash[hash], node, nd_nodes); mtx_unlock(&ng_namehash_mtx); return (0); @@ -3113,7 +3112,7 @@ { INIT_VNET_NETGRAPH(curvnet); - LIST_INIT(&V_ng_nodelist); + LIST_INIT(&V_ng_nodelist); /* XXX should go away */ V_nextID = 1; return 0; ==== //depot/projects/vimage/src/sys/netgraph/vnetgraph.h#7 (text+ko) ==== @@ -42,10 +42,12 @@ #define VNET_NETGRAPH(sym) VSYM(vnet_netgraph, sym) #define NG_ID_HASH_SIZE 32 /* most systems wont need even this many */ +#define NG_NAME_HASH_SIZE 128 /* most systems wont need even this many */ #ifdef VIMAGE struct vnet_netgraph { LIST_HEAD(, ng_node) _ng_ID_hash[NG_ID_HASH_SIZE]; + LIST_HEAD(, ng_node) _ng_name_hash[NG_ID_HASH_SIZE]; LIST_HEAD(, ng_node) _ng_nodelist; ng_ID_t _nextID; struct unrhdr *_ng_iface_unit; @@ -56,6 +58,7 @@ /* Symbol translation macros */ #define V_ng_ID_hash VNET_NETGRAPH(ng_ID_hash) +#define V_ng_name_hash VNET_NETGRAPH(ng_name_hash) #define V_ng_nodelist VNET_NETGRAPH(ng_nodelist) #define V_nextID VNET_NETGRAPH(nextID) #define V_ng_iface_unit VNET_NETGRAPH(ng_iface_unit) From snagg at FreeBSD.org Mon Jun 2 13:21:12 2008 From: snagg at FreeBSD.org (Vincenzo Iozzo) Date: Mon Jun 2 13:21:13 2008 Subject: PERFORCE change 142753 for review Message-ID: <200806021321.m52DLBh6050139@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142753 Change 142753 by snagg@snagg_macosx on 2008/06/02 13:20:53 A memory leak, an integer overflow and another bug are now fixed Affected files ... .. //depot/projects/soc2008/snagg-audit/sys/security/audit/audit_pipe.c#24 edit Differences ... ==== //depot/projects/soc2008/snagg-audit/sys/security/audit/audit_pipe.c#24 (text) ==== @@ -270,7 +270,7 @@ audit_pipe_compare_preselect_event); if(event != NULL) { if(event_flag != -1) - if (event->app_flag != event_flag) + if (!(event->app_flag & event_flag)) app = NULL; } else app = NULL; @@ -356,7 +356,11 @@ * Pessimistically assume that the entry for this pid doesn't * exist, and allocate. We will free it if it is unneeded. */ - KASSERT(num >= 0, ("Number of events is out of range")); + KASSERT(num >= 0, ("Number of events is out of range")); + + /* Max number allowed */ + KASSERT(num <= AUDIT_NEVENTS, ("Number of events is out of range")); + app_new = malloc(sizeof(*app_new), M_AUDIT_PIPE_PRESELECT, M_WAITOK); if(num) app_new->app_auevents= malloc(sizeof(struct audit_pipe_preselect_event) * @@ -370,6 +374,8 @@ app = audit_pipe_preselect_find_event(ap, -1, app_pid, -1); found = (app != NULL) ? 1: 0; if(found) { + if(app->app_event_len) + free(app->app_auevents, M_AUDIT_PIPE_PRESELECT_EVENT); app->app_auevents = app_new->app_auevents; app_new = NULL; app->app_event_len = num; From snagg at FreeBSD.org Mon Jun 2 13:23:19 2008 From: snagg at FreeBSD.org (Vincenzo Iozzo) Date: Mon Jun 2 13:23:25 2008 Subject: PERFORCE change 142754 for review Message-ID: <200806021323.m52DNDU7050287@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142754 Change 142754 by snagg@snagg_macosx on 2008/06/02 13:22:21 IFC Affected files ... .. //depot/projects/soc2008/snagg-audit/sys/compat/linux/linux_stats.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/compat/linux/linux_util.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/dev/pccard/pccard_cis.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/netgraph/ng_nat.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/netinet/libalias/alias.c#4 integrate .. //depot/projects/soc2008/snagg-audit/sys/netinet/libalias/alias_db.c#2 integrate .. //depot/projects/soc2008/snagg-audit/sys/netinet/libalias/alias_local.h#2 integrate Differences ... ==== //depot/projects/soc2008/snagg-audit/sys/compat/linux/linux_stats.c#2 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.91 2008/04/08 09:45:47 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.92 2008/06/02 08:40:06 ed Exp $"); #include "opt_compat.h" #include "opt_mac.h" @@ -178,19 +178,8 @@ #endif error = kern_stat(td, path, UIO_SYSSPACE, &buf); - if (!error) { - if (strlen(path) > strlen("/dev/pts/") && - !strncmp(path, "/dev/pts/", strlen("/dev/pts/")) && - path[9] >= '0' && path[9] <= '9') { - /* - * Linux checks major and minors of the slave device - * to make sure it's a pty device, so let's make him - * believe it is. - */ - buf.st_rdev = (136 << 8); - } else - translate_path_major_minor(td, path, &buf); - } + if (!error) + translate_path_major_minor(td, path, &buf); LFREEPATH(path); if (error) return (error); @@ -528,19 +517,8 @@ #endif error = kern_stat(td, filename, UIO_SYSSPACE, &buf); - if (!error) { - if (strlen(filename) > strlen("/dev/pts/") && - !strncmp(filename, "/dev/pts/", strlen("/dev/pts/")) && - filename[9] >= '0' && filename[9] <= '9') { - /* - * Linux checks major and minors of the slave device - * to make sure it's a pty deivce, so let's make him - * believe it is. - */ - buf.st_rdev = (136 << 8); - } else - translate_path_major_minor(td, filename, &buf); - } + if (!error) + translate_path_major_minor(td, filename, &buf); LFREEPATH(filename); if (error) return (error); ==== //depot/projects/soc2008/snagg-audit/sys/compat/linux/linux_util.c#2 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_util.c,v 1.34 2008/04/08 09:45:47 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_util.c,v 1.35 2008/06/02 08:40:06 ed Exp $"); #include "opt_compat.h" @@ -130,6 +130,22 @@ if (node == NULL || major == NULL || minor == NULL) return 1; + + if (strlen(node) > strlen("pts/") && + strncmp(node, "pts/", strlen("pts/")) == 0) { + unsigned long devno; + + /* + * Linux checks major and minors of the slave device + * to make sure it's a pty device, so let's make him + * believe it is. + */ + devno = strtoul(node + strlen("pts/"), NULL, 10); + *major = 136 + (devno / 256); + *minor = devno % 256; + return 0; + } + TAILQ_FOREACH(de, &devices, list) { if (strcmp(node, de->entry.bsd_device_name) == 0) { *major = de->entry.linux_major; ==== //depot/projects/soc2008/snagg-audit/sys/dev/pccard/pccard_cis.c#2 (text+ko) ==== @@ -1,5 +1,5 @@ /* $NetBSD: pcmcia_cis.c,v 1.17 2000/02/10 09:01:52 chopps Exp $ */ -/* $FreeBSD: src/sys/dev/pccard/pccard_cis.c,v 1.40 2007/02/27 17:23:28 jhb Exp $ */ +/* $FreeBSD: src/sys/dev/pccard/pccard_cis.c,v 1.41 2008/06/01 20:55:34 imp Exp $ */ /*- * Copyright (c) 1997 Marc Horowitz. All rights reserved. @@ -898,7 +898,7 @@ break; case CISTPL_CFTABLE_ENTRY: { - int idx, i, j; + int idx, i; u_int reg, reg2; u_int intface, def, num; u_int power, timing, iospace, irq, memspace, misc; @@ -906,8 +906,7 @@ idx = 0; - reg = pccard_tuple_read_1(tuple, idx); - idx++; + reg = pccard_tuple_read_1(tuple, idx++); intface = reg & PCCARD_TPCE_INDX_INTFACE; def = reg & PCCARD_TPCE_INDX_DEFAULT; num = reg & PCCARD_TPCE_INDX_NUM_MASK; @@ -983,8 +982,7 @@ } if (intface) { - reg = pccard_tuple_read_1(tuple, idx); - idx++; + reg = pccard_tuple_read_1(tuple, idx++); cfe->flags &= ~(PCCARD_CFE_MWAIT_REQUIRED | PCCARD_CFE_RDYBSY_ACTIVE | PCCARD_CFE_WP_ACTIVE @@ -999,8 +997,7 @@ cfe->flags |= PCCARD_CFE_BVD_ACTIVE; cfe->iftype = reg & PCCARD_TPCE_IF_IFTYPE; } - reg = pccard_tuple_read_1(tuple, idx); - idx++; + reg = pccard_tuple_read_1(tuple, idx++); power = reg & PCCARD_TPCE_FS_POWER_MASK; timing = reg & PCCARD_TPCE_FS_TIMING; @@ -1013,30 +1010,26 @@ /* skip over power, don't save */ /* for each parameter selection byte */ for (i = 0; i < power; i++) { - reg = pccard_tuple_read_1(tuple, idx); - idx++; - /* for each bit */ - for (j = 0; j < 7; j++) { - /* if the bit is set */ - if ((reg >> j) & 0x01) { - /* skip over bytes */ - do { - reg2 = pccard_tuple_read_1(tuple, idx); - idx++; - /* - * until - * non-extensi - * on byte - */ - } while (reg2 & 0x80); - } + reg = pccard_tuple_read_1(tuple, idx++); + for (; reg; reg >>= 1) + { + /* set bit -> read */ + if ((reg & 1) == 0) + continue; + /* skip over bytes */ + do { + reg2 = pccard_tuple_read_1(tuple, idx++); + /* + * until non-extension + * byte + */ + } while (reg2 & 0x80); } } } if (timing) { /* skip over timing, don't save */ - reg = pccard_tuple_read_1(tuple, idx); - idx++; + reg = pccard_tuple_read_1(tuple, idx++); if ((reg & PCCARD_TPCE_TD_RESERVED_MASK) != PCCARD_TPCE_TD_RESERVED_MASK) @@ -1054,8 +1047,7 @@ goto abort_cfe; } - reg = pccard_tuple_read_1(tuple, idx); - idx++; + reg = pccard_tuple_read_1(tuple, idx++); cfe->flags &= ~(PCCARD_CFE_IO8 | PCCARD_CFE_IO16); if (reg & PCCARD_TPCE_IO_BUSWIDTH_8BIT) @@ -1066,9 +1058,7 @@ reg & PCCARD_TPCE_IO_IOADDRLINES_MASK; if (reg & PCCARD_TPCE_IO_HASRANGE) { - reg = pccard_tuple_read_1(tuple, idx); - idx++; - + reg = pccard_tuple_read_1(tuple, idx++); cfe->num_iospace = 1 + (reg & PCCARD_TPCE_IO_RANGE_COUNT); @@ -1085,8 +1075,7 @@ switch (reg & PCCARD_TPCE_IO_RANGE_ADDRSIZE_MASK) { case PCCARD_TPCE_IO_RANGE_ADDRSIZE_ONE: cfe->iospace[i].start = - pccard_tuple_read_1(tuple, idx); - idx++; + pccard_tuple_read_1(tuple, idx++); break; case PCCARD_TPCE_IO_RANGE_ADDRSIZE_TWO: cfe->iospace[i].start = @@ -1103,8 +1092,7 @@ PCCARD_TPCE_IO_RANGE_LENGTHSIZE_MASK) { case PCCARD_TPCE_IO_RANGE_LENGTHSIZE_ONE: cfe->iospace[i].length = - pccard_tuple_read_1(tuple, idx); - idx++; + pccard_tuple_read_1(tuple, idx++); break; case PCCARD_TPCE_IO_RANGE_LENGTHSIZE_TWO: cfe->iospace[i].length = @@ -1132,8 +1120,7 @@ goto abort_cfe; } - reg = pccard_tuple_read_1(tuple, idx); - idx++; + reg = pccard_tuple_read_1(tuple, idx++); cfe->flags &= ~(PCCARD_CFE_IRQSHARE | PCCARD_CFE_IRQPULSE | PCCARD_CFE_IRQLEVEL); @@ -1186,12 +1173,9 @@ int cardaddrsize; int hostaddrsize; - reg = pccard_tuple_read_1(tuple, idx); - idx++; - + reg = pccard_tuple_read_1(tuple, idx++); cfe->num_memspace = (reg & PCCARD_TPCE_MS_COUNT) + 1; - if (cfe->num_memspace > (sizeof(cfe->memspace) / sizeof(cfe->memspace[0]))) { @@ -1255,8 +1239,7 @@ goto abort_cfe; } - reg = pccard_tuple_read_1(tuple, idx); - idx++; + reg = pccard_tuple_read_1(tuple, idx++); cfe->flags &= ~(PCCARD_CFE_POWERDOWN | PCCARD_CFE_READONLY | PCCARD_CFE_AUDIO); @@ -1269,8 +1252,7 @@ cfe->maxtwins = reg & PCCARD_TPCE_MI_MAXTWINS; while (reg & PCCARD_TPCE_MI_EXT) { - reg = pccard_tuple_read_1(tuple, idx); - idx++; + reg = pccard_tuple_read_1(tuple, idx++); } } /* skip all the subtuples */ ==== //depot/projects/soc2008/snagg-audit/sys/netgraph/ng_nat.c#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/netgraph/ng_nat.c,v 1.11 2008/03/01 17:14:02 mav Exp $ + * $FreeBSD: src/sys/netgraph/ng_nat.c,v 1.12 2008/06/01 15:13:32 mav Exp $ */ #include @@ -704,14 +704,14 @@ ("ng_nat: ip_len != m_pkthdr.len")); if (hook == priv->in) { - rval = LibAliasIn(priv->lib, c, MCLBYTES); + rval = LibAliasIn(priv->lib, c, m->m_len + M_TRAILINGSPACE(m)); if (rval != PKT_ALIAS_OK && rval != PKT_ALIAS_FOUND_HEADER_FRAGMENT) { NG_FREE_ITEM(item); return (EINVAL); } } else if (hook == priv->out) { - rval = LibAliasOut(priv->lib, c, MCLBYTES); + rval = LibAliasOut(priv->lib, c, m->m_len + M_TRAILINGSPACE(m)); if (rval != PKT_ALIAS_OK) { NG_FREE_ITEM(item); return (EINVAL); ==== //depot/projects/soc2008/snagg-audit/sys/netinet/libalias/alias.c#4 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/netinet/libalias/alias.c,v 1.62 2008/06/01 11:47:04 mav Exp $"); +__FBSDID("$FreeBSD: src/sys/netinet/libalias/alias.c,v 1.63 2008/06/01 17:52:40 mav Exp $"); /* Alias.c provides supervisory control for the functions of the @@ -1656,29 +1656,49 @@ * m_megapullup() - this function is a big hack. * Thankfully, it's only used in ng_nat and ipfw+nat. * - * It allocates an mbuf with cluster and copies the whole chain into cluster, - * so that it is all contiguous and the whole packet can be accessed via a - * plain (char *) pointer. This is required, because libalias doesn't know - * how to handle mbuf chains. + * It allocates an mbuf with cluster and copies the specified part of the chain + * into cluster, so that it is all contiguous and can be accessed via a plain + * (char *) pointer. This is required, because libalias doesn't know how to + * handle mbuf chains. * - * On success, m_megapullup returns an mbuf with cluster containing the input - * packet, on failure NULL. In both cases, the input packet is consumed. + * On success, m_megapullup returns an mbuf (possibly with cluster) containing + * the input packet, on failure NULL. The input packet is always consumed. */ struct mbuf * m_megapullup(struct mbuf *m, int len) { struct mbuf *mcl; - caddr_t cp; - if (len > MCLBYTES) + if (len > m->m_pkthdr.len) goto bad; - if ((mcl = m_getcl(M_DONTWAIT, MT_DATA, M_PKTHDR)) == NULL) + /* Do not reallocate packet if it is sequentional, + * writable and has some extra space for expansion. + * XXX: Constant 100bytes is completely empirical. */ +#define RESERVE 100 + if (m->m_next == NULL && M_WRITABLE(m) && M_TRAILINGSPACE(m) >= RESERVE) + return (m); + + if (len <= MCLBYTES - RESERVE) { + mcl = m_getcl(M_DONTWAIT, MT_DATA, M_PKTHDR); + } else if (len < MJUM16BYTES) { + int size; + if (len <= MJUMPAGESIZE - RESERVE) { + size = MJUMPAGESIZE; + } else if (len <= MJUM9BYTES - RESERVE) { + size = MJUM9BYTES; + } else { + size = MJUM16BYTES; + }; + mcl = m_getjcl(M_DONTWAIT, MT_DATA, M_PKTHDR, size); + } else { + goto bad; + } + if (mcl == NULL) goto bad; - cp = mtod(mcl, caddr_t); - m_copydata(m, 0, len, cp); m_move_pkthdr(mcl, m); - mcl->m_len = mcl->m_pkthdr.len; + m_copydata(m, 0, len, mtod(mcl, caddr_t)); + mcl->m_len = mcl->m_pkthdr.len = len; m_freem(m); return (mcl); ==== //depot/projects/soc2008/snagg-audit/sys/netinet/libalias/alias_db.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/netinet/libalias/alias_db.c,v 1.72 2008/03/06 21:50:40 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/netinet/libalias/alias_db.c,v 1.73 2008/06/01 18:34:58 mav Exp $"); /* Alias_db.c encapsulates all data structures used for storing @@ -180,8 +180,9 @@ */ /* Parameters used for cleanup of expired links */ -#define ALIAS_CLEANUP_INTERVAL_SECS 60 -#define ALIAS_CLEANUP_MAX_SPOKES 30 +/* NOTE: ALIAS_CLEANUP_INTERVAL_SECS must be less then LINK_TABLE_OUT_SIZE */ +#define ALIAS_CLEANUP_INTERVAL_SECS 64 +#define ALIAS_CLEANUP_MAX_SPOKES (LINK_TABLE_OUT_SIZE/5) /* Timeouts (in seconds) for different link types */ #define ICMP_EXPIRE_TIME 60 @@ -814,20 +815,12 @@ CleanupAliasData(struct libalias *la) { struct alias_link *lnk; - int i, icount; + int i; LIBALIAS_LOCK_ASSERT(la); - icount = 0; for (i = 0; i < LINK_TABLE_OUT_SIZE; i++) { - lnk = LIST_FIRST(&la->linkTableOut[i]); - while (lnk != NULL) { - struct alias_link *link_next; - - link_next = LIST_NEXT(lnk, list_out); - icount++; + while ((lnk = LIST_FIRST(&la->linkTableOut[i])) != NULL) DeleteLink(lnk); - lnk = link_next; - } } la->cleanupIndex = 0; @@ -837,39 +830,13 @@ static void IncrementalCleanup(struct libalias *la) { - int icount; - struct alias_link *lnk; + struct alias_link *lnk, *lnk_tmp; LIBALIAS_LOCK_ASSERT(la); - icount = 0; - lnk = LIST_FIRST(&la->linkTableOut[la->cleanupIndex++]); - while (lnk != NULL) { - int idelta; - struct alias_link *link_next; - - link_next = LIST_NEXT(lnk, list_out); - idelta = la->timeStamp - lnk->timestamp; - switch (lnk->link_type) { - case LINK_TCP: - if (idelta > lnk->expire_time) { - struct tcp_dat *tcp_aux; - - tcp_aux = lnk->data.tcp; - if (tcp_aux->state.in != ALIAS_TCP_STATE_CONNECTED - || tcp_aux->state.out != ALIAS_TCP_STATE_CONNECTED) { - DeleteLink(lnk); - icount++; - } - } - break; - default: - if (idelta > lnk->expire_time) { - DeleteLink(lnk); - icount++; - } - break; - } - lnk = link_next; + LIST_FOREACH_SAFE(lnk, &la->linkTableOut[la->cleanupIndex++], + list_out, lnk_tmp) { + if (la->timeStamp - lnk->timestamp > lnk->expire_time) + DeleteLink(lnk); } if (la->cleanupIndex == LINK_TABLE_OUT_SIZE) @@ -1137,12 +1104,12 @@ LIBALIAS_LOCK_ASSERT(la); i = StartPointOut(src_addr, dst_addr, src_port, dst_port, link_type); LIST_FOREACH(lnk, &la->linkTableOut[i], list_out) { - if (lnk->src_addr.s_addr == src_addr.s_addr - && lnk->server == NULL - && lnk->dst_addr.s_addr == dst_addr.s_addr - && lnk->dst_port == dst_port - && lnk->src_port == src_port - && lnk->link_type == link_type) { + if (lnk->dst_addr.s_addr == dst_addr.s_addr && + lnk->src_addr.s_addr == src_addr.s_addr && + lnk->src_port == src_port && + lnk->dst_port == dst_port && + lnk->link_type == link_type && + lnk->server == NULL) { lnk->timestamp = la->timeStamp; break; } @@ -2189,7 +2156,7 @@ void HouseKeeping(struct libalias *la) { - int i, n, n100; + int i, n; #ifndef _KERNEL struct timeval tv; struct timezone tz; @@ -2209,33 +2176,22 @@ #endif /* Compute number of spokes (output table link chains) to cover */ - n100 = LINK_TABLE_OUT_SIZE * 100 + la->houseKeepingResidual; - n100 *= la->timeStamp - la->lastCleanupTime; - n100 /= ALIAS_CLEANUP_INTERVAL_SECS; + n = LINK_TABLE_OUT_SIZE * (la->timeStamp - la->lastCleanupTime); + n /= ALIAS_CLEANUP_INTERVAL_SECS; - n = n100 / 100; - /* Handle different cases */ - if (n > ALIAS_CLEANUP_MAX_SPOKES) { - n = ALIAS_CLEANUP_MAX_SPOKES; + if (n > 0) { + if (n > ALIAS_CLEANUP_MAX_SPOKES) + n = ALIAS_CLEANUP_MAX_SPOKES; la->lastCleanupTime = la->timeStamp; - la->houseKeepingResidual = 0; - for (i = 0; i < n; i++) IncrementalCleanup(la); - } else if (n > 0) { - la->lastCleanupTime = la->timeStamp; - la->houseKeepingResidual = n100 - 100 * n; - - for (i = 0; i < n; i++) - IncrementalCleanup(la); } else if (n < 0) { #ifdef LIBALIAS_DEBUG fprintf(stderr, "PacketAlias/HouseKeeping(): "); fprintf(stderr, "something unexpected in time values\n"); #endif la->lastCleanupTime = la->timeStamp; - la->houseKeepingResidual = 0; } } @@ -2529,7 +2485,6 @@ la->timeStamp = tv.tv_sec; la->lastCleanupTime = tv.tv_sec; #endif - la->houseKeepingResidual = 0; for (i = 0; i < LINK_TABLE_OUT_SIZE; i++) LIST_INIT(&la->linkTableOut[i]); ==== //depot/projects/soc2008/snagg-audit/sys/netinet/libalias/alias_local.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/netinet/libalias/alias_local.h,v 1.35 2008/03/06 21:50:40 piso Exp $ + * $FreeBSD: src/sys/netinet/libalias/alias_local.h,v 1.36 2008/06/01 18:34:58 mav Exp $ */ /* @@ -60,7 +60,7 @@ #endif /* Sizes of input and output link tables */ -#define LINK_TABLE_OUT_SIZE 101 +#define LINK_TABLE_OUT_SIZE 4001 #define LINK_TABLE_IN_SIZE 4001 struct proxy_entry; @@ -110,8 +110,6 @@ * IncrementalCleanup() */ /* was called */ - int houseKeepingResidual; /* used by HouseKeeping() */ - int deleteAllLinks; /* If equal to zero, DeleteLink() */ /* will not remove permanent links */ From peter at FreeBSD.org Mon Jun 2 18:39:33 2008 From: peter at FreeBSD.org (Peter Wemm) Date: Mon Jun 2 18:39:35 2008 Subject: PERFORCE change 142764 for review Message-ID: <200806021839.m52IdWxP093239@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142764 Change 142764 by peter@peter_overcee on 2008/06/02 18:39:25 Grrr. HACK ALERT! Affected files ... .. //depot/projects/hammer/gnu/usr.bin/grep/savedir.c#4 edit Differences ... ==== //depot/projects/hammer/gnu/usr.bin/grep/savedir.c#4 (text+ko) ==== @@ -133,6 +133,14 @@ { off_t size_needed = (namep - name_space) + NAMLEN (dp) + 2; + /* Exclude SCM control files and other known junk */ + if ((strcmp(dp->d_name, ".svn") == 0 || + strcmp(dp->d_name, "CVS") == 0 || + strcmp(dp->d_name, "RCS") == 0 || + strcmp(dp->d_name, "obj") == 0 || + strcmp(dp->d_name, "compile") == 0) && isdir1 (dir, dp->d_name)) + continue; + if ((included_patterns || excluded_patterns) && !isdir1 (dir, dp->d_name)) { From sam at freebsd.org Mon Jun 2 20:59:39 2008 From: sam at freebsd.org (Sam Leffler) Date: Mon Jun 2 20:59:45 2008 Subject: PERFORCE change 142736 for review In-Reply-To: <4843A49F.1050306@freebsd.org> References: <200806020715.m527F16Y091718@repoman.freebsd.org> <4843A49F.1050306@freebsd.org> Message-ID: <4844581A.2040008@freebsd.org> Andre Oppermann wrote: > Victor Hugo Bilouro wrote: >> http://perforce.freebsd.org/chv.cgi?CH=142736 >> >> Change 142736 by bilouro@bilouro_tcptest on 2008/06/02 07:14:17 >> >> added some reminders >> >> Affected files ... >> >> .. //depot/projects/soc2008/bilouro_tcptest/TODO#2 edit >> >> Differences ... >> >> ==== //depot/projects/soc2008/bilouro_tcptest/TODO#2 (text+ko) ==== >> >> @@ -1,1 +1,11 @@ >> -(1) manually establish a tcp connection using pcs >> +use the last version of pcs >> +rewrite connection establishment and finalization pcb-like oriented >> +elicit with net@ some regression test suggested > > This is a good start to test the basic working of TCP: > ftp://ftp.iol.unh.edu/pub/tcp/Core_TCP_Test_Suite_v0.3.pdf > > It describes a number of tests you could implement. We can certainly > expand on it but so far it should keep you busy for a bit. ;-) > Here's a commercial product: http://www.iwl.com/maxwell-emulation/tcp-ip.html?Itemid=187 From jb at FreeBSD.org Mon Jun 2 23:13:09 2008 From: jb at FreeBSD.org (John Birrell) Date: Mon Jun 2 23:13:11 2008 Subject: PERFORCE change 142774 for review Message-ID: <200806022313.m52ND8tF026587@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142774 Change 142774 by jb@freebsd3 on 2008/06/02 23:12:31 Merging this file from current wasn't a good idea. Affected files ... .. //depot/projects/dtrace7/src/share/mk/bsd.own.mk#8 edit Differences ... ==== //depot/projects/dtrace7/src/share/mk/bsd.own.mk#8 (text+ko) ==== @@ -1,4 +1,4 @@ -# $FreeBSD: src/share/mk/bsd.own.mk,v 1.75 2008/05/26 10:39:52 bz Exp $ +# $FreeBSD: src/share/mk/bsd.own.mk,v 1.67.2.4 2008/01/28 08:42:15 dougb Exp $ # # The include file set common variables for owner, # group, mode, and directories. Defaults are in brackets. @@ -162,6 +162,8 @@ NLSGRP?= ${SHAREGRP} NLSMODE?= ${NOBINMODE} +DEFAULT_THREAD_LIB?= libthr + INCLUDEDIR?= /usr/include # Common variables @@ -229,6 +231,7 @@ GPIB \ GROFF \ HTML \ + I4B \ INET6 \ INFO \ IPFILTER \ @@ -315,6 +318,7 @@ GPIB \ GROFF \ HTML \ + I4B \ INET6 \ INFO \ INSTALLLIB \ @@ -324,6 +328,7 @@ KVM \ LIB32 \ LIBPTHREAD \ + LIBKSE \ LIBTHR \ LOCALES \ LPR \ @@ -354,8 +359,8 @@ TOOLCHAIN \ USB \ WPA_SUPPLICANT_EAPOL \ - ZFS \ - ZONEINFO + ZONEINFO \ + ZFS .if defined(WITH_${var}) && defined(WITHOUT_${var}) .error WITH_${var} and WITHOUT_${var} can't both be set. .endif @@ -394,10 +399,11 @@ # Order is somewhat important. # .if ${MK_LIBPTHREAD} == "no" +MK_LIBKSE:= no MK_LIBTHR:= no .endif -.if ${MK_LIBTHR} == "no" +.if ${MK_LIBKSE} == "no" && ${MK_LIBTHR} == "no" MK_BIND:= no .endif From jb at FreeBSD.org Mon Jun 2 23:14:10 2008 From: jb at FreeBSD.org (John Birrell) Date: Mon Jun 2 23:14:12 2008 Subject: PERFORCE change 142775 for review Message-ID: <200806022314.m52NE9JK026605@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142775 Change 142775 by jb@freebsd3 on 2008/06/02 23:13:17 Adjust for the kdb differences. Affected files ... .. //depot/projects/dtrace7/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#5 edit Differences ... ==== //depot/projects/dtrace7/src/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#5 (text) ==== @@ -5594,7 +5594,7 @@ #if defined(sun) debug_enter(c); #else - kdb_enter(KDB_WHY_DTRACE, "breakpoint action"); + kdb_enter_why(KDB_WHY_DTRACE, "breakpoint action"); #endif } From jb at FreeBSD.org Mon Jun 2 23:14:13 2008 From: jb at FreeBSD.org (John Birrell) Date: Mon Jun 2 23:14:15 2008 Subject: PERFORCE change 142776 for review Message-ID: <200806022314.m52NEANV026610@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142776 Change 142776 by jb@freebsd3 on 2008/06/02 23:13:46 Merging this file from current wasn't a good idea. Affected files ... .. //depot/projects/dtrace7/src/sys/modules/Makefile#14 edit Differences ... ==== //depot/projects/dtrace7/src/sys/modules/Makefile#14 (text+ko) ==== @@ -8,7 +8,6 @@ accf_data \ accf_http \ ${_acpi} \ - age \ ${_agp} \ aha \ ${_ahb} \ @@ -24,7 +23,6 @@ ${_arcmsr} \ ${_arcnet} \ ${_arl} \ - ${_asmc} \ ${_asr} \ ata \ ${_ath} \ @@ -53,7 +51,6 @@ ${_ciss} \ ${_cm} \ ${_cmx} \ - ${_cnw} \ coda \ coda5 \ ${_coff} \ @@ -68,7 +65,6 @@ ${_cx} \ cxgb \ ${_cyclic} \ - ${_cyclic_test} \ dc \ dcons \ dcons_crom \ @@ -139,12 +135,8 @@ ispfw \ ${_iwi} \ ${_iwifw} \ - ${_iwn} \ - ${_iwnfw} \ ${_ixgb} \ - jme \ joy \ - ${_k8temp} \ kbdmux \ krpc \ kue \ @@ -230,7 +222,6 @@ ${_ray} \ rc \ rc4 \ - ${_rdma} \ re \ reiserfs \ rl \ @@ -318,7 +309,6 @@ wlan_acl \ wlan_amrr \ wlan_ccmp \ - wlan_rssadapt \ wlan_tkip \ wlan_wep \ wlan_xauth \ @@ -387,7 +377,6 @@ _cs= cs .if ${MK_CDDL} != "no" || defined(ALL_MODULES) _cyclic= cyclic -_cyclic_test= cyclic_test .endif _digi= digi _drm= drm @@ -429,7 +418,6 @@ _pecoff= pecoff _pst= pst _ray= ray -_rdma= rdma _safe= safe _sbni= sbni _scsi_low= scsi_low @@ -454,13 +442,11 @@ _ahb= ahb _arcmsr= arcmsr _arl= arl -_asmc= asmc _asr= asr _bios= bios _ciss= ciss _cm= cm _cmx= cmx -_cnw= cnw _coretemp= coretemp _ctau= ctau _cx= cx @@ -478,8 +464,6 @@ _ipwfw= ipwfw _iwi= iwi _iwifw= iwifw -_iwn= iwn -_iwnfw= iwnfw _ixgb= ixgb _mly= mly _nfe= nfe @@ -510,7 +494,6 @@ _agp= agp _an= an _arcmsr= arcmsr -_asmc= asmc _ath= ath _ath_hal= ath_hal _ath_rate_amrr= ath_rate_amrr @@ -524,7 +507,6 @@ _cpufreq= cpufreq .if ${MK_CDDL} != "no" || defined(ALL_MODULES) _cyclic= cyclic -_cyclic_test= cyclic_test .endif _digi= digi _drm= drm @@ -549,10 +531,7 @@ _ips= ips _ipw= ipw _ipwfw= ipwfw -_iwn= iwn -_iwnfw= iwnfw _ixgb= ixgb -_k8temp= k8temp _linprocfs= linprocfs _linsysfs= linsysfs _linux= linux @@ -566,7 +545,6 @@ _opensolaris= opensolaris .endif _pccard= pccard -_rdma= rdma _safe= safe _scsi_low= scsi_low _smbfs= smbfs From julian at FreeBSD.org Tue Jun 3 00:16:13 2008 From: julian at FreeBSD.org (Julian Elischer) Date: Tue Jun 3 00:16:18 2008 Subject: PERFORCE change 142778 for review Message-ID: <200806030016.m530GCI0031900@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142778 Change 142778 by julian@julian_trafmon1 on 2008/06/03 00:15:36 Make a new branch for vimage commit preparation. Affected files ... .. //depot/projects/vimage-commit/src/sys/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/acpica/OsdEnvironment.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/acpica/acpi_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/acpica/acpi_wakeup.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/acpica/madt.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/amd64_mem.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/apic_vector.S#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/atomic.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/autoconf.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/bios.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/bpf_jit_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/bpf_jit_machdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/busdma_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/cpu_switch.S#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/db_disasm.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/db_interface.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/db_trace.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/dump_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/elf_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/exception.S#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/fpu.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/gdb_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/genassym.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/identcpu.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/in_cksum.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/initcpu.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/intr_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/io.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/io_apic.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/legacy.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/local_apic.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/locore.S#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/mem.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/minidump_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/mp_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/mp_watchdog.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/mpboot.S#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/mptable.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/mptable_pci.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/msi.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/nexus.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/pmap.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/prof_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/sigtramp.S#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/stack_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/support.S#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/sys_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/trap.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/tsc.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/uio_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/uma_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/amd64/vm_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/compile/.cvsignore#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/conf/.cvsignore#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/conf/DEFAULTS#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/conf/GENERIC#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/conf/GENERIC.hints#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/conf/MAC#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/conf/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/conf/NOTES#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/ia32/ia32_exception.S#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/ia32/ia32_reg.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/ia32/ia32_signal.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/ia32/ia32_sigtramp.S#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/ia32/ia32_syscall.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/_bus.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/_inttypes.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/_limits.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/_stdint.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/_types.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/acpica_machdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/apicreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/apicvar.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/asm.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/asmacros.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/atomic.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/bus.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/bus_dma.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/clock.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/cpu.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/cpufunc.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/cputypes.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/db_machdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/elf.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/endian.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/exec.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/float.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/floatingpoint.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/fpu.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/frame.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/gdb_machdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/ieeefp.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/in_cksum.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/intr_machdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/iodev.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/kdb.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/legacyvar.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/limits.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/md_var.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/memdev.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/metadata.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/minidump.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/mp_watchdog.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/mptable.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/mutex.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/nexusvar.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/param.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/pc/bios.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/pc/display.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/pcb.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/pci_cfgreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/pcpu.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/pmap.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/pmc_mdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/ppireg.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/proc.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/profile.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/psl.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/ptrace.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/reg.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/reloc.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/resource.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/runq.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/segments.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/setjmp.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/sf_buf.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/sigframe.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/signal.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/smp.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/specialreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/stack.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/stdarg.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/sysarch.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/timerreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/trap.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/tss.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/ucontext.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/varargs.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/include/vmparam.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/isa/atpic.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/isa/atpic_vector.S#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/isa/clock.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/isa/elcr.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/isa/icu.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/isa/isa.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/isa/isa.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/isa/isa_dma.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/isa/nmi.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/linux32/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/linux32/linux.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/linux32/linux32_dummy.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/linux32/linux32_genassym.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/linux32/linux32_ipc64.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/linux32/linux32_locore.s#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/linux32/linux32_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/linux32/linux32_proto.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/linux32/linux32_support.s#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/linux32/linux32_syscall.h#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/linux32/linux32_sysent.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/linux32/linux32_sysvec.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/linux32/syscalls.conf#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/linux32/syscalls.master#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/pci/pci_bus.c#1 branch .. //depot/projects/vimage-commit/src/sys/amd64/pci/pci_cfgreg.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/autoconf.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/bcopy_page.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/bcopyinout.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/bcopyinout_xscale.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/blockio.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/bootconfig.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/bus_space_asm_generic.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/bus_space_generic.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/busdma_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/copystr.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc_asm.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc_asm_arm10.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc_asm_arm11.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc_asm_arm7tdmi.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc_asm_arm8.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc_asm_arm9.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc_asm_armv4.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc_asm_armv5.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc_asm_armv5_ec.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc_asm_ixp12x0.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc_asm_sa1.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc_asm_sa11x0.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc_asm_xscale.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/cpufunc_asm_xscale_c3.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/db_disasm.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/db_interface.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/db_trace.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/disassem.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/dump_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/elf_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/elf_trampoline.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/exception.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/fiq.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/fiq_subr.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/fusu.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/gdb_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/genassym.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/identcpu.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/in_cksum.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/in_cksum_arm.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/inckern.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/intr.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/irq_dispatch.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/locore.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/mem.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/nexus.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/pmap.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/setcpsr.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/setstack.s#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/stack_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/support.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/swtch.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/sys_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/trap.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/uio_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/undefined.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/vectors.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/arm/vm_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_mci.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_mcireg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_pdcreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_pio.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_pio_rm9200.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_pioreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_piovar.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_pmc.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_pmcreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_pmcvar.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_rtc.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_rtcreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_spi.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_spireg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_ssc.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_sscreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_st.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_streg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_twi.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_twiio.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_twireg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91_usartreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91rm92reg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/at91var.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/files.at91#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/files.kb920x#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/hints.at91rm9200#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/hints.at91sam9261#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/if_ate.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/if_atereg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/kb920x_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/ohci_atmelarm.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/std.at91#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/std.kb920x#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/uart_bus_at91usart.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/uart_cpu_at91rm9200usart.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/at91/uart_dev_at91usart.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/compile/.cvsignore#1 branch .. //depot/projects/vimage-commit/src/sys/arm/conf/.cvsignore#1 branch .. //depot/projects/vimage-commit/src/sys/arm/conf/AVILA#1 branch .. //depot/projects/vimage-commit/src/sys/arm/conf/AVILA.hints#1 branch .. //depot/projects/vimage-commit/src/sys/arm/conf/BWCT#1 branch .. //depot/projects/vimage-commit/src/sys/arm/conf/BWCT.hints#1 branch .. //depot/projects/vimage-commit/src/sys/arm/conf/CRB#1 branch .. //depot/projects/vimage-commit/src/sys/arm/conf/EP80219#1 branch .. //depot/projects/vimage-commit/src/sys/arm/conf/HL200#1 branch .. //depot/projects/vimage-commit/src/sys/arm/conf/IQ31244#1 branch .. //depot/projects/vimage-commit/src/sys/arm/conf/KB920X#1 branch .. //depot/projects/vimage-commit/src/sys/arm/conf/KB920X.hints#1 branch .. //depot/projects/vimage-commit/src/sys/arm/conf/SIMICS#1 branch .. //depot/projects/vimage-commit/src/sys/arm/conf/SKYEYE#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/_bus.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/_inttypes.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/_limits.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/_stdint.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/_types.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/armreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/asm.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/asmacros.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/atomic.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/blockio.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/bootconfig.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/bus.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/bus_dma.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/clock.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/cpu.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/cpuconf.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/cpufunc.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/db_machdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/disassem.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/elf.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/endian.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/exec.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/fiq.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/float.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/floatingpoint.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/fp.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/frame.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/gdb_machdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/ieee.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/ieeefp.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/in_cksum.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/intr.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/katelib.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/kdb.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/limits.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/machdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/md_var.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/memdev.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/metadata.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/mutex.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/param.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/pcb.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/pcpu.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/pmap.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/pmc_mdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/proc.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/profile.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/psl.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/pte.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/ptrace.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/reg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/reloc.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/resource.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/runq.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/setjmp.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/sf_buf.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/sigframe.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/signal.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/smp.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/stack.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/stdarg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/swi.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/sysarch.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/trap.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/ucontext.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/undefined.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/utrap.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/include/vmparam.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/assabet_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/files.sa11x0#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/sa11x0.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/sa11x0_dmacreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/sa11x0_gpioreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/sa11x0_io.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/sa11x0_io_asm.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/sa11x0_irq.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/sa11x0_irqhandler.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/sa11x0_ost.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/sa11x0_ostreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/sa11x0_ppcreg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/sa11x0_reg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/sa11x0_var.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/std.sa11x0#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/uart_bus_sa1110.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/uart_cpu_sa1110.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/uart_dev_sa1110.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/sa11x0/uart_dev_sa1110.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/ep80219_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/files.ep80219#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/files.i80219#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/files.i80321#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/files.iq31244#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/i80321.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/i80321_aau.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/i80321_dma.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/i80321_intr.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/i80321_mcu.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/i80321_pci.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/i80321_space.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/i80321_timer.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/i80321_wdog.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/i80321reg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/i80321var.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/iq31244_7seg.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/iq31244_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/iq80321.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/iq80321reg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/iq80321var.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/obio.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/obio_space.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/obiovar.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/std.ep80219#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/std.i80219#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/std.i80321#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/std.iq31244#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/uart_bus_i80321.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i80321/uart_cpu_i80321.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/crb_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/files.crb#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/files.i81342#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/i81342.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/i81342_mcu.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/i81342_pci.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/i81342_space.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/i81342reg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/i81342var.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/iq81342_7seg.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/iq81342reg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/iq81342var.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/obio.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/obio_space.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/obiovar.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/std.crb#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/std.i81342#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/uart_bus_i81342.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/i8134x/uart_cpu_i81342.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/avila_ata.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/avila_led.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/avila_machdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/files.avila#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/files.ixp425#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/if_npe.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/if_npereg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixdp425_pci.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixdp425reg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_a4x_io.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_a4x_space.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_iic.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_intr.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_mem.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_npe.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_npereg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_npevar.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_pci.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_pci_asm.S#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_pci_space.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_qmgr.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_qmgr.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_space.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_timer.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425_wdog.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425reg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/ixp425var.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/std.avila#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/std.ixp425#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/uart_bus_ixp425.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/ixp425/uart_cpu_ixp425.c#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/std.xscale#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/xscalereg.h#1 branch .. //depot/projects/vimage-commit/src/sys/arm/xscale/xscalevar.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/README#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/Makefile.inc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/boot0/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/boot0/README#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/boot0/linker.cfg#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/boot0/main.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/boot0iic/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/boot0iic/main.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/boot0spi/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/boot0spi/main.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/boot2/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/boot2/board.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/boot2/boot2.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/boot2/bwct_board.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/boot2/centipad_board.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/boot2/kb920x_board.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootiic/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootiic/README#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootiic/env_vars.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootiic/env_vars.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootiic/loader_prompt.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootiic/loader_prompt.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootiic/main.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootspi/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootspi/README#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootspi/ee.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootspi/ee.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootspi/env_vars.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootspi/env_vars.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootspi/loader_prompt.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootspi/loader_prompt.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/bootspi/main.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/arm_init.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/at91rm9200.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/at91rm9200_lowlevel.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/delay.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/eeprom.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/emac.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/emac.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/emac_init.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/getc.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/lib.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/lib_AT91RM9200.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/mci_device.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/memcmp.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/memcpy.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/memset.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/p_string.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/printf.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/putchar.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/reset.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/sd-card.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/sd-card.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/spi_flash.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/spi_flash.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/strcmp.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/strcpy.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/strcvt.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/strlen.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/tag_list.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/tag_list.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/libat91/xmodem.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/arm/at91/linker.cfg#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/Makefile.inc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/bcache.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/boot.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/bootstrap.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/commands.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/console.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/dev_net.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/dev_net.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/devopen.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/help.common#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/interp.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/interp_backslash.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/interp_forth.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/interp_parse.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/isapnp.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/isapnp.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/load.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/load_elf.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/load_elf32.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/load_elf32_obj.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/load_elf64.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/load_elf64_obj.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/load_elf_obj.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/loader.8#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/ls.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/merge_help.awk#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/misc.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/module.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/newvers.sh#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/panic.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/pnp.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/reloc_elf.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/reloc_elf32.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/reloc_elf64.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/common/ufsread.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/Makefile.inc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/README#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efi.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efi_nii.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efiapi.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/eficon.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efidebug.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efidef.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efidevp.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efierr.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efifpswa.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efifs.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efilib.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efinet.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efipart.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efiprot.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efipxebc.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efiser.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/efistdarg.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/i386/efibind.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/i386/pe.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/ia64/efibind.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/include/ia64/pe.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/libefi/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/libefi/delay.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/libefi/efi_console.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/libefi/efifs.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/libefi/efinet.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/libefi/errno.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/libefi/handles.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/libefi/libefi.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/efi/libefi/time.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/arm/sysdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/arm/sysdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/dict.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/ficl.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/ficl.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/fileaccess.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/float.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/i386/sysdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/i386/sysdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/ia64/sysdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/ia64/sysdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/loader.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/math64.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/math64.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/powerpc/sysdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/powerpc/sysdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/prefix.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/search.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/softwords/classes.fr#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/softwords/ficlclass.fr#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/softwords/ficllocal.fr#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/softwords/fileaccess.fr#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/softwords/forml.fr#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/softwords/freebsd.fr#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/softwords/ifbrack.fr#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/softwords/jhlocal.fr#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/softwords/marker.fr#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/softwords/oo.fr#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/softwords/prefix.fr#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/softwords/softcore.awk#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/softwords/softcore.fr#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/softwords/string.fr#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/sparc64/sysdep.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/sparc64/sysdep.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/stack.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/testmain.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/tools.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/unix.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/vm.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ficl/words.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/forth/beastie.4th#1 branch .. //depot/projects/vimage-commit/src/sys/boot/forth/frames.4th#1 branch .. //depot/projects/vimage-commit/src/sys/boot/forth/loader.4th#1 branch .. //depot/projects/vimage-commit/src/sys/boot/forth/loader.4th.8#1 branch .. //depot/projects/vimage-commit/src/sys/boot/forth/loader.conf#1 branch .. //depot/projects/vimage-commit/src/sys/boot/forth/loader.conf.5#1 branch .. //depot/projects/vimage-commit/src/sys/boot/forth/loader.rc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/forth/pnp.4th#1 branch .. //depot/projects/vimage-commit/src/sys/boot/forth/screen.4th#1 branch .. //depot/projects/vimage-commit/src/sys/boot/forth/support.4th#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/Makefile.inc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/boot0/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/boot0/boot0.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/boot0/boot0ext.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/boot0ext/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/boot0sio/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/boot2/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/boot2/boot1.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/boot2/boot2.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/boot2/lib.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/boot2/sio.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/btx/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/btx/Makefile.inc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/btx/btx/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/btx/btx/btx.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/btx/btxldr/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/btx/btxldr/btxldr.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/btx/lib/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/btx/lib/btxcsu.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/btx/lib/btxsys.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/btx/lib/btxv86.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/btx/lib/btxv86.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/cdboot/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/cdboot/cdboot.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/gptboot/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/gptboot/gptboot.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/gptboot/gptldr.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/kgzldr/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/kgzldr/boot.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/kgzldr/crt.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/kgzldr/kgzldr.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/kgzldr/lib.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/kgzldr/sio.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/kgzldr/start.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libfirewire/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libfirewire/dconsole.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libfirewire/firewire.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libfirewire/fwohci.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libfirewire/fwohci.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libfirewire/fwohcireg.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/amd64_tramp.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/biosacpi.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/bioscd.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/biosdisk.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/biosmem.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/biospci.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/biospnp.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/biossmap.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/bootinfo.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/bootinfo32.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/bootinfo64.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/comconsole.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/devicename.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/elf32_freebsd.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/elf64_freebsd.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/i386_copy.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/i386_module.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/libi386.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/nullconsole.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/pread.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/pxe.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/pxe.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/pxetramp.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/smbios.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/time.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/libi386/vidconsole.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/loader/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/loader/conf.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/loader/help.i386#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/loader/loader.rc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/loader/main.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/loader/version#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/mbr/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/mbr/mbr.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/pmbr/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/pmbr/pmbr.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/pxeldr/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/pxeldr/pxeboot.8#1 branch .. //depot/projects/vimage-commit/src/sys/boot/i386/pxeldr/pxeldr.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/Makefile.inc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/common/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/common/autoload.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/common/bootinfo.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/common/copy.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/common/devicename.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/common/exec.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/common/libia64.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/efi/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/efi/conf.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/efi/efimd.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/efi/ldscript.ia64#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/efi/main.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/efi/start.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/efi/version#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/acpi_stub.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/conf.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/delay.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/efi_stub.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/exit.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/ldscript.ia64#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/libski.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/main.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/pal_stub.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/sal_stub.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/skiconsole.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/skifs.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/skiload.cmd#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/skimd.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/ssc.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/start.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/time.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ia64/ski/version#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/common/Makefile.inc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/common/main.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/libofw/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/libofw/devicename.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/libofw/elf_freebsd.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/libofw/libofw.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/libofw/ofw_console.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/libofw/ofw_copy.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/libofw/ofw_disk.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/libofw/ofw_memory.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/libofw/ofw_module.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/libofw/ofw_net.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/libofw/ofw_reboot.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/libofw/ofw_time.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/libofw/openfirm.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/ofw/libofw/openfirm.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/Makefile.inc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot0.5/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot0.5/boot.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot0.5/boot0.5.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot0.5/disk.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot0.5/ldscript#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot0.5/putssjis.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot0.5/selector.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot0.5/start.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot0.5/support.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot0.5/syscons.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot0/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot0/boot0.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/README.serial.98#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/asm.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/asm.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/bios.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/boot.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/boot.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/boot2.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/dinode.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/disk.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/fs.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/inode.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/io.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/probe_keyboard.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/quota.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/serial.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/serial_16550.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/serial_8251.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/start.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/sys.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/boot2/table.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/btx/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/btx/Makefile.inc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/btx/btx/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/btx/btx/btx.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/btx/btxldr/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/btx/btxldr/btxldr.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/btx/lib/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/btx/lib/btxcsu.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/btx/lib/btxsys.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/btx/lib/btxv86.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/btx/lib/btxv86.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/cdboot/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/cdboot/cdboot.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/kgzldr/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/kgzldr/crt.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/libpc98/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/libpc98/bioscd.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/libpc98/biosdisk.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/libpc98/biosmem.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/libpc98/biossmap.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/libpc98/comconsole.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/libpc98/i386_module.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/libpc98/time.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/libpc98/vidconsole.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/loader/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/loader/conf.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/loader/help.pc98#1 branch .. //depot/projects/vimage-commit/src/sys/boot/pc98/loader/main.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/ofw/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/ofw/conf.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/ofw/help.ofw#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/ofw/ldscript.powerpc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/ofw/metadata.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/ofw/start.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/ofw/version#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/uboot/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/uboot/conf.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/uboot/help.uboot#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/uboot/ldscript.powerpc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/uboot/metadata.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/uboot/start.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/powerpc/uboot/version#1 branch .. //depot/projects/vimage-commit/src/sys/boot/sparc64/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/sparc64/Makefile.inc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/sparc64/boot1/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/sparc64/boot1/_start.s#1 branch .. //depot/projects/vimage-commit/src/sys/boot/sparc64/boot1/boot1.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/sparc64/loader/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/sparc64/loader/help.sparc64#1 branch .. //depot/projects/vimage-commit/src/sys/boot/sparc64/loader/locore.S#1 branch .. //depot/projects/vimage-commit/src/sys/boot/sparc64/loader/main.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/sparc64/loader/metadata.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/sparc64/loader/version#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/common/Makefile.inc#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/common/main.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/lib/Makefile#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/lib/api_public.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/lib/console.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/lib/copy.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/lib/devicename.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/lib/disk.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/lib/elf_freebsd.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/lib/glue.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/lib/glue.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/lib/libuboot.h#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/lib/module.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/lib/net.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/lib/reboot.c#1 branch .. //depot/projects/vimage-commit/src/sys/boot/uboot/lib/time.c#1 branch .. //depot/projects/vimage-commit/src/sys/bsm/audit.h#1 branch .. //depot/projects/vimage-commit/src/sys/bsm/audit_internal.h#1 branch .. //depot/projects/vimage-commit/src/sys/bsm/audit_kevents.h#1 branch .. //depot/projects/vimage-commit/src/sys/bsm/audit_record.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/README.quirks#1 branch .. //depot/projects/vimage-commit/src/sys/cam/cam.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/cam.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/cam_ccb.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/cam_debug.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/cam_periph.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/cam_periph.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/cam_queue.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/cam_queue.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/cam_sim.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/cam_sim.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/cam_xpt.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/cam_xpt.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/cam_xpt_periph.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/cam_xpt_sim.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_all.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_all.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_cd.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_cd.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_ch.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_ch.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_da.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_da.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_dvcfg.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_iu.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_low.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_low.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_low_pisa.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_low_pisa.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_message.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_pass.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_pass.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_pt.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_pt.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_sa.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_sa.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_ses.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_ses.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_sg.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_sg.h#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_targ_bh.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_target.c#1 branch .. //depot/projects/vimage-commit/src/sys/cam/scsi/scsi_targetio.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/kern/opensolaris.c#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/kern/opensolaris_atomic.c#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/kern/opensolaris_cmn_err.c#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/kern/opensolaris_kmem.c#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/kern/opensolaris_kobj.c#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/kern/opensolaris_kstat.c#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/kern/opensolaris_misc.c#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/kern/opensolaris_policy.c#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/kern/opensolaris_string.c#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/kern/opensolaris_vfs.c#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/kern/opensolaris_zone.c#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/rpc/xdr.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/acl.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/atomic.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/bitmap.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/byteorder.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/callb.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/cmn_err.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/cpupart.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/cpuvar.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/cpuvar_defs.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/cred.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/cyclic.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/cyclic_impl.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/debug.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/dirent.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/dkio.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/dnlc.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/elf.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/feature_tests.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/kcondvar.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/kmem.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/kobj.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/kstat.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/lock.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/misc.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/mman.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/mntent.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/mnttab.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/modctl.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/mount.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/mutex.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/objfs.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/param.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/pcpu.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/policy.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/proc.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/random.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/rwlock.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/sdt.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/sema.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/stat.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/string.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/sunddi.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/sysmacros.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/systm.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/taskq.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/taskq_impl.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/time.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/types.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/uio.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/varargs.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/vfs.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/vnode.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/compat/opensolaris/sys/zone.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/contrib/opensolaris/OPENSOLARIS.LICENSE#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/contrib/opensolaris/common/acl/acl_common.c#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/contrib/opensolaris/common/acl/acl_common.h#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/contrib/opensolaris/common/atomic/amd64/atomic.S#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/contrib/opensolaris/common/atomic/i386/atomic.S#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/contrib/opensolaris/common/atomic/ia64/atomic.S#1 branch .. //depot/projects/vimage-commit/src/sys/cddl/contrib/opensolaris/common/atomic/sparc64/atomic.S#1 branch >>> TRUNCATED FOR MAIL (1000 lines) <<< From julian at FreeBSD.org Tue Jun 3 00:57:55 2008 From: julian at FreeBSD.org (Julian Elischer) Date: Tue Jun 3 00:57:57 2008 Subject: PERFORCE change 142779 for review Message-ID: <200806030057.m530vs79044267@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142779 Change 142779 by julian@julian_trafmon1 on 2008/06/03 00:57:28 IFC@142777 Affected files ... .. //depot/projects/vimage/src/sys/compat/linux/linux_stats.c#8 integrate .. //depot/projects/vimage/src/sys/compat/linux/linux_util.c#4 integrate .. //depot/projects/vimage/src/sys/dev/fe/if_fe.c#3 integrate .. //depot/projects/vimage/src/sys/dev/fe/if_fe_pccard.c#2 integrate .. //depot/projects/vimage/src/sys/dev/fe/if_fevar.h#2 integrate .. //depot/projects/vimage/src/sys/dev/ie/if_ie.c#3 integrate .. //depot/projects/vimage/src/sys/dev/ie/if_ie_isa.c#3 integrate .. //depot/projects/vimage/src/sys/dev/ie/if_ievar.h#3 integrate .. //depot/projects/vimage/src/sys/dev/xe/if_xe.c#3 integrate .. //depot/projects/vimage/src/sys/dev/xe/if_xe_pccard.c#2 integrate .. //depot/projects/vimage/src/sys/dev/xe/if_xevar.h#2 integrate .. //depot/projects/vimage/src/sys/netinet/ip_carp.c#7 integrate .. //depot/projects/vimage/src/sys/netinet/tcp_subr.c#41 integrate .. //depot/projects/vimage/src/sys/netinet/tcp_timer.c#16 integrate .. //depot/projects/vimage/src/sys/nlm/nlm_prot_impl.c#3 integrate Differences ... ==== //depot/projects/vimage/src/sys/compat/linux/linux_stats.c#8 (text+ko) ==== @@ -27,7 +27,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.91 2008/04/08 09:45:47 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_stats.c,v 1.92 2008/06/02 08:40:06 ed Exp $"); #include "opt_compat.h" #include "opt_mac.h" @@ -178,19 +178,8 @@ #endif error = kern_stat(td, path, UIO_SYSSPACE, &buf); - if (!error) { - if (strlen(path) > strlen("/dev/pts/") && - !strncmp(path, "/dev/pts/", strlen("/dev/pts/")) && - path[9] >= '0' && path[9] <= '9') { - /* - * Linux checks major and minors of the slave device - * to make sure it's a pty device, so let's make him - * believe it is. - */ - buf.st_rdev = (136 << 8); - } else - translate_path_major_minor(td, path, &buf); - } + if (!error) + translate_path_major_minor(td, path, &buf); LFREEPATH(path); if (error) return (error); @@ -528,19 +517,8 @@ #endif error = kern_stat(td, filename, UIO_SYSSPACE, &buf); - if (!error) { - if (strlen(filename) > strlen("/dev/pts/") && - !strncmp(filename, "/dev/pts/", strlen("/dev/pts/")) && - filename[9] >= '0' && filename[9] <= '9') { - /* - * Linux checks major and minors of the slave device - * to make sure it's a pty deivce, so let's make him - * believe it is. - */ - buf.st_rdev = (136 << 8); - } else - translate_path_major_minor(td, filename, &buf); - } + if (!error) + translate_path_major_minor(td, filename, &buf); LFREEPATH(filename); if (error) return (error); ==== //depot/projects/vimage/src/sys/compat/linux/linux_util.c#4 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/compat/linux/linux_util.c,v 1.34 2008/04/08 09:45:47 kib Exp $"); +__FBSDID("$FreeBSD: src/sys/compat/linux/linux_util.c,v 1.35 2008/06/02 08:40:06 ed Exp $"); #include "opt_compat.h" @@ -130,6 +130,22 @@ if (node == NULL || major == NULL || minor == NULL) return 1; + + if (strlen(node) > strlen("pts/") && + strncmp(node, "pts/", strlen("pts/")) == 0) { + unsigned long devno; + + /* + * Linux checks major and minors of the slave device + * to make sure it's a pty device, so let's make him + * believe it is. + */ + devno = strtoul(node + strlen("pts/"), NULL, 10); + *major = 136 + (devno / 256); + *minor = devno % 256; + return 0; + } + TAILQ_FOREACH(de, &devices, list) { if (strcmp(node, de->entry.bsd_device_name) == 0) { *major = de->entry.linux_major; ==== //depot/projects/vimage/src/sys/dev/fe/if_fe.c#3 (text+ko) ==== @@ -21,7 +21,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/fe/if_fe.c,v 1.98 2007/02/23 12:18:41 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/fe/if_fe.c,v 1.99 2008/06/02 19:58:48 jhb Exp $"); /* * @@ -71,6 +71,7 @@ */ #include +#include #include #include #include @@ -135,10 +136,12 @@ /* Standard driver entry points. These can be static. */ static void fe_init (void *); +static void fe_init_locked (struct fe_softc *); static driver_intr_t fe_intr; static int fe_ioctl (struct ifnet *, u_long, caddr_t); static void fe_start (struct ifnet *); -static void fe_watchdog (struct ifnet *); +static void fe_start_locked (struct ifnet *); +static void fe_watchdog (void *); static int fe_medchange (struct ifnet *); static void fe_medstat (struct ifnet *, struct ifmediareq *); @@ -737,16 +740,13 @@ ifp = sc->ifp = if_alloc(IFT_ETHER); if (ifp == NULL) { device_printf(dev, "can not ifalloc\n"); + fe_release_resource(dev); return (ENOSPC); } - error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET, - NULL, fe_intr, sc, &sc->irq_handle); - if (error) { - if_free(ifp); - fe_release_resource(dev); - return ENXIO; - } + mtx_init(&sc->lock, device_get_nameunit(dev), MTX_NETWORK_LOCK, + MTX_DEF); + callout_init_mtx(&sc->timer, &sc->lock, 0); /* * Initialize ifnet structure @@ -755,7 +755,6 @@ if_initname(sc->ifp, device_get_name(dev), device_get_unit(dev)); ifp->if_start = fe_start; ifp->if_ioctl = fe_ioctl; - ifp->if_watchdog = fe_watchdog; ifp->if_init = fe_init; ifp->if_linkmib = &sc->mibdata; ifp->if_linkmiblen = sizeof (sc->mibdata); @@ -767,8 +766,7 @@ /* * Set fixed interface flags. */ - ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST | - IFF_NEEDSGIANT; + ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; #if 1 /* @@ -830,9 +828,21 @@ #endif /* Attach and stop the interface. */ + FE_LOCK(sc); + fe_stop(sc); + FE_UNLOCK(sc); ether_ifattach(sc->ifp, sc->enaddr); - fe_stop(sc); - + + error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET | INTR_MPSAFE, + NULL, fe_intr, sc, &sc->irq_handle); + if (error) { + ether_ifdetach(ifp); + mtx_destroy(&sc->lock); + if_free(ifp); + fe_release_resource(dev); + return ENXIO; + } + /* Print additional info when attached. */ device_printf(dev, "type %s%s\n", sc->typestr, (sc->proto_dlcr4 & FE_D4_DSC) ? ", full duplex" : ""); @@ -942,7 +952,7 @@ /* Put the interface into known initial state. */ fe_stop(sc); if (sc->ifp->if_flags & IFF_UP) - fe_init(sc); + fe_init_locked(sc); } /* @@ -954,9 +964,8 @@ void fe_stop (struct fe_softc *sc) { - int s; - s = splimp(); + FE_ASSERT_LOCKED(sc); /* Disable interrupts. */ fe_outb(sc, FE_DLCR2, 0x00); @@ -978,7 +987,7 @@ /* Reset transmitter variables and interface flags. */ sc->ifp->if_drv_flags &= ~(IFF_DRV_OACTIVE | IFF_DRV_RUNNING); - sc->ifp->if_timer = 0; + callout_stop(&sc->timer); sc->txb_free = sc->txb_size; sc->txb_count = 0; sc->txb_sched = 0; @@ -989,8 +998,6 @@ /* Call a device-specific hook. */ if (sc->stop) sc->stop(sc); - - (void) splx(s); } /* @@ -998,16 +1005,18 @@ * generate an interrupt after a transmit has been started on it. */ static void -fe_watchdog ( struct ifnet *ifp ) +fe_watchdog (void *arg) { - struct fe_softc *sc = ifp->if_softc; + struct fe_softc *sc = arg; + + FE_ASSERT_LOCKED(sc); /* A "debug" message. */ - if_printf(ifp, "transmission timeout (%d+%d)%s\n", + if_printf(sc->ifp, "transmission timeout (%d+%d)%s\n", sc->txb_sched, sc->txb_count, - (ifp->if_flags & IFF_UP) ? "" : " when down"); + (sc->ifp->if_flags & IFF_UP) ? "" : " when down"); if (sc->ifp->if_opackets == 0 && sc->ifp->if_ipackets == 0) - if_printf(ifp, "wrong IRQ setting in config?\n"); + if_printf(sc->ifp, "wrong IRQ setting in config?\n"); fe_reset(sc); } @@ -1018,10 +1027,17 @@ fe_init (void * xsc) { struct fe_softc *sc = xsc; - int s; + + FE_LOCK(sc); + fe_init_locked(sc); + FE_UNLOCK(sc); +} + +static void +fe_init_locked (struct fe_softc *sc) +{ /* Start initializing 86960. */ - s = splimp(); /* Call a hook before we start initializing the chip. */ if (sc->init) @@ -1128,10 +1144,8 @@ the interface keeping it idle. The upper layer will soon start the interface anyway, and there are no significant delay. */ - fe_start(sc->ifp); + fe_start_locked(sc->ifp); #endif - - (void) splx(s); } /* @@ -1145,7 +1159,7 @@ * We use longer timeout for multiple packet transmission. * I'm not sure this timer value is appropriate. FIXME. */ - sc->ifp->if_timer = 1 + sc->txb_count; + callout_reset(&sc->timer, (1 + sc->txb_count) * hz, fe_watchdog, sc); /* Update txb variables. */ sc->txb_sched = sc->txb_count; @@ -1159,17 +1173,24 @@ /* * Start output on interface. - * We make two assumptions here: - * 1) that the current priority is set to splimp _before_ this code - * is called *and* is returned to the appropriate priority after - * return - * 2) that the IFF_DRV_OACTIVE flag is checked before this code is called + * We make one assumption here: + * 1) that the IFF_DRV_OACTIVE flag is checked before this code is called * (i.e. that the output part of the interface is idle) */ static void fe_start (struct ifnet *ifp) { struct fe_softc *sc = ifp->if_softc; + + FE_LOCK(sc); + fe_start_locked(ifp); + FE_UNLOCK(sc); +} + +static void +fe_start_locked (struct ifnet *ifp) +{ + struct fe_softc *sc = ifp->if_softc; struct mbuf *m; #ifdef DIAGNOSTIC @@ -1534,7 +1555,7 @@ * Reset output active flag and watchdog timer. */ sc->ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; - sc->ifp->if_timer = 0; + callout_stop(&sc->timer); /* * If more data is ready to transmit in the buffer, start @@ -1685,6 +1706,8 @@ u_char tstat, rstat; int loop_count = FE_MAX_LOOP; + FE_LOCK(sc); + /* Loop until there are no more new interrupt conditions. */ while (loop_count-- > 0) { /* @@ -1692,8 +1715,10 @@ */ tstat = fe_inb(sc, FE_DLCR0) & FE_TMASK; rstat = fe_inb(sc, FE_DLCR1) & FE_RMASK; - if (tstat == 0 && rstat == 0) + if (tstat == 0 && rstat == 0) { + FE_UNLOCK(sc); return; + } /* * Reset the conditions we are acknowledging. @@ -1741,8 +1766,9 @@ * interrupt when the transmission buffer is full. */ if ((sc->ifp->if_drv_flags & IFF_DRV_OACTIVE) == 0) - fe_start(sc->ifp); + fe_start_locked(sc->ifp); } + FE_UNLOCK(sc); if_printf(sc->ifp, "too many loops\n"); } @@ -1756,9 +1782,7 @@ { struct fe_softc *sc = ifp->if_softc; struct ifreq *ifr = (struct ifreq *)data; - int s, error = 0; - - s = splimp(); + int error = 0; switch (command) { @@ -1767,9 +1791,10 @@ * Switch interface state between "running" and * "stopped", reflecting the UP flag. */ + FE_LOCK(sc); if (sc->ifp->if_flags & IFF_UP) { if ((sc->ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) - fe_init(sc); + fe_init_locked(sc); } else { if ((sc->ifp->if_drv_flags & IFF_DRV_RUNNING) != 0) fe_stop(sc); @@ -1780,6 +1805,7 @@ * so reprogram the multicast filter and/or receive mode. */ fe_setmode(sc); + FE_UNLOCK(sc); /* Done. */ break; @@ -1790,7 +1816,9 @@ * Multicast list has changed; set the hardware filter * accordingly. */ + FE_LOCK(sc); fe_setmode(sc); + FE_UNLOCK(sc); break; case SIOCSIFMEDIA: @@ -1805,7 +1833,6 @@ break; } - (void) splx(s); return (error); } @@ -1821,6 +1848,8 @@ struct ether_header *eh; struct mbuf *m; + FE_ASSERT_LOCKED(sc); + /* * NFS wants the data be aligned to the word (4 byte) * boundary. Ethernet header has 14 bytes. There is a @@ -1890,7 +1919,9 @@ } /* Feed the packet to upper layer. */ + FE_UNLOCK(sc); (*ifp->if_input)(ifp, m); + FE_LOCK(sc); return 0; } @@ -2164,7 +2195,7 @@ /* * Load a new multicast address filter into MARs. * - * The caller must have splimp'ed before fe_loadmar. + * The caller must have acquired the softc lock before fe_loadmar. * This function starts the DLC upon return. So it can be called only * when the chip is working, i.e., from the driver's point of view, when * a device is RUNNING. (I mistook the point in previous versions.) @@ -2223,9 +2254,11 @@ until the transmission buffer being empty? Changing the media when we are sending a frame will cause two garbages on wires, one on old media and another on new. FIXME */ + FE_LOCK(sc); if (sc->ifp->if_flags & IFF_UP) { if (sc->msel) sc->msel(sc); } + FE_UNLOCK(sc); return 0; } ==== //depot/projects/vimage/src/sys/dev/fe/if_fe_pccard.c#2 (text+ko) ==== @@ -22,7 +22,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/fe/if_fe_pccard.c,v 1.32 2005/11/19 23:26:57 imp Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/fe/if_fe_pccard.c,v 1.33 2008/06/02 19:58:48 jhb Exp $"); #include #include @@ -175,11 +175,15 @@ struct fe_softc *sc = device_get_softc(dev); struct ifnet *ifp = sc->ifp; + FE_LOCK(sc); fe_stop(sc); + FE_UNLOCK(sc); + callout_drain(&sc->timer); ether_ifdetach(ifp); bus_teardown_intr(dev, sc->irq_res, sc->irq_handle); if_free(ifp); fe_release_resource(dev); + mtx_destroy(&sc->lock); return 0; } ==== //depot/projects/vimage/src/sys/dev/fe/if_fevar.h#2 (text+ko) ==== @@ -19,7 +19,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/dev/fe/if_fevar.h,v 1.6 2005/06/10 16:49:08 brooks Exp $ + * $FreeBSD: src/sys/dev/fe/if_fevar.h,v 1.7 2008/06/02 19:58:48 jhb Exp $ */ /* How many registers does an fe-supported adapter have at maximum? */ @@ -117,6 +117,8 @@ int defmedia; /* default media */ void (* msel)(struct fe_softc *); /* media selector. */ + struct mtx lock; + struct callout timer; }; struct fe_simple_probe_struct { @@ -125,6 +127,9 @@ u_char bits; /* Values to be compared against. */ }; +#define FE_LOCK(sc) mtx_lock(&(sc)->lock) +#define FE_UNLOCK(sc) mtx_unlock(&(sc)->lock) +#define FE_ASSERT_LOCKED(sc) mtx_assert(&(sc)->lock, MA_OWNED) extern devclass_t fe_devclass; ==== //depot/projects/vimage/src/sys/dev/ie/if_ie.c#3 (text+ko) ==== @@ -51,7 +51,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ie/if_ie.c,v 1.108 2008/05/30 16:22:30 jhb Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ie/if_ie.c,v 1.109 2008/06/02 19:17:40 jhb Exp $"); /* * Intel 82586 Ethernet chip @@ -161,9 +161,11 @@ struct ie_softc; static void ieinit (void *); +static void ieinit_locked (struct ie_softc *); static void ie_stop (struct ie_softc *); static int ieioctl (struct ifnet *, u_long, caddr_t); static void iestart (struct ifnet *); +static void iestart_locked (struct ifnet *); static __inline void ee16_interrupt_enable (struct ie_softc *); @@ -179,7 +181,6 @@ static void ie_readframe (struct ie_softc *, int); static void ie_drop_packet_buffer (struct ie_softc *); static void find_ie_mem_size (struct ie_softc *); -static void chan_attn_timeout (void *); static int command_and_wait (struct ie_softc *, int, void volatile *, int); static void run_tdr (struct ie_softc *, @@ -263,7 +264,7 @@ struct ie_softc * sc; struct ifnet * ifp; size_t allocsize; - int factor; + int error, factor; sc = device_get_softc(dev); ifp = sc->ifp = if_alloc(IFT_ETHER); @@ -273,6 +274,8 @@ } sc->dev = dev; + mtx_init(&sc->lock, device_get_nameunit(dev), MTX_NETWORK_LOCK, + MTX_DEF); /* * based on the amount of memory we have, allocate our tx and rx @@ -294,7 +297,7 @@ M_DEVBUF, M_NOWAIT); if (sc->rframes == NULL) { - if_free(ifp); + mtx_destroy(&sc->lock); return (ENXIO); } sc->rbuffs = @@ -313,8 +316,7 @@ ifp->if_softc = sc; if_initname(ifp, device_get_name(dev), device_get_unit(dev)); ifp->if_mtu = ETHERMTU; - ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST | - IFF_NEEDSGIANT; + ifp->if_flags = IFF_BROADCAST | IFF_SIMPLEX | IFF_MULTICAST; ifp->if_start = iestart; ifp->if_ioctl = ieioctl; ifp->if_init = ieinit; @@ -325,6 +327,15 @@ sc, SHUTDOWN_PRI_DEFAULT); ether_ifattach(ifp, sc->enaddr); + + error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET | INTR_MPSAFE, + NULL, ie_intr, sc, &sc->irq_ih); + if (error) { + device_printf(dev, "Unable to register interrupt handler\n"); + mtx_destroy(&sc->lock); + return (error); + } + return (0); } @@ -345,6 +356,8 @@ struct ie_softc *sc = (struct ie_softc *)xsc; u_short status; + IE_LOCK(sc); + /* Clear the interrupt latch on the 3C507. */ if (sc->hard_type == IE_3C507 && (inb(PORT(sc) + IE507_CTRL) & EL_CTRL_INTL)) @@ -405,7 +418,7 @@ /* enable interrupts on the EE16. */ if (sc->hard_type == IE_EE16) outb(PORT(sc) + IEE16_IRQ, sc->irq_encoded | IEE16_IRQ_ENABLE); - + IE_UNLOCK(sc); } /* @@ -465,7 +478,6 @@ int status; int i; - ifp->if_timer = 0; ifp->if_drv_flags &= ~IFF_DRV_OACTIVE; for (i = 0; i < sc->xmit_count; i++) { @@ -507,7 +519,7 @@ /* Wish I knew why this seems to be necessary... */ sc->xmit_cmds[0]->ie_xmit_status |= IE_STAT_COMPL; - iestart(ifp); + iestart_locked(ifp); return (0); /* shouldn't be necessary */ } @@ -877,7 +889,9 @@ /* * Finally pass this packet up to higher layers. */ + IE_UNLOCK(sc); (*ifp->if_input)(ifp, m); + IE_LOCK(sc); } static void @@ -917,6 +931,16 @@ iestart(struct ifnet *ifp) { struct ie_softc *sc = ifp->if_softc; + + IE_LOCK(sc); + iestart_locked(ifp); + IE_UNLOCK(sc); +} + +static void +iestart_locked(struct ifnet *ifp) +{ + struct ie_softc *sc = ifp->if_softc; struct mbuf *m0, *m; volatile unsigned char *buffer; u_short len; @@ -1000,9 +1024,6 @@ volatile struct ie_int_sys_conf_ptr *iscp; volatile struct ie_sys_ctl_block *scb; u_long realbase; - int s; - - s = splimp(); realbase = (uintptr_t) sc->iomembot + sc->iosize - (1 << 24); @@ -1035,7 +1056,6 @@ DELAY(100); /* wait a while... */ if (iscp->ie_busy) { - splx(s); return (0); } /* @@ -1059,7 +1079,6 @@ DELAY(100); if (iscp->ie_busy) { - splx(s); return (0); } sc->iomem = (caddr_t) (uintptr_t) realbase; @@ -1071,7 +1090,6 @@ * Acknowledge any interrupts we may have caused... */ ie_ack(sc, IE_ST_WHENCE); - splx(s); return (1); } @@ -1235,11 +1253,9 @@ iereset(struct ie_softc *sc) { struct ifnet *ifp = sc->ifp; - int s = splimp(); if_printf(ifp, "reset\n"); - ifp->if_flags &= ~IFF_UP; - ieioctl(ifp, SIOCSIFFLAGS, 0); + ie_stop(sc); /* * Stop i82586 dead in its tracks. @@ -1255,23 +1271,13 @@ panic("ie disappeared!"); #endif - ifp->if_flags |= IFF_UP; - ieioctl(ifp, SIOCSIFFLAGS, 0); + if (ifp->if_flags & IFF_UP) + ieinit_locked(sc); - splx(s); return; } /* - * This is called if we time out. - */ -static void -chan_attn_timeout(void *rock) -{ - *(int *) rock = 1; -} - -/* * Send a command to the controller and wait for it to either * complete or be accepted, depending on the command. If the * command pointer is null, then pretend that the command is @@ -1284,38 +1290,30 @@ command_and_wait(struct ie_softc *sc, int cmd, volatile void *pcmd, int mask) { volatile struct ie_cmd_common *cc = pcmd; - volatile int timedout = 0; - struct callout_handle ch; + int i; sc->scb->ie_command = (u_short) cmd; if (IE_ACTION_COMMAND(cmd) && pcmd) { (*sc->ie_chan_attn) (sc); - + /* - * According to the packet driver, the minimum timeout - * should be .369 seconds, which we round up to .37. - */ - ch = timeout(chan_attn_timeout, (caddr_t)&timedout, - 37 * hz / 100); - /* ignore cast-qual */ - - /* * Now spin-lock waiting for status. This is not a very * nice thing to do, but I haven't figured out how, or * indeed if, we can put the process waiting for action to * sleep. (We may be getting called through some other * timeout running in the kernel.) + * + * According to the packet driver, the minimum timeout + * should be .369 seconds, which we round up to .37. */ - while (1) { - if ((cc->ie_cmd_status & mask) || timedout) - break; + for (i = 0; i < 370; i++) { + if (cc->ie_cmd_status & mask) + return (0); + DELAY(1000); } - untimeout(chan_attn_timeout, (caddr_t)&timedout, ch); - /* ignore cast-qual */ - - return (timedout); + return (1); } else { /* @@ -1371,14 +1369,11 @@ static void start_receiver(struct ie_softc *sc) { - int s = splimp(); sc->scb->ie_recv_list = MK_16(MEM(sc), sc->rframes[0]); command_and_wait(sc, IE_RU_START, 0, 0); ie_ack(sc, IE_ST_WHENCE); - - splx(s); } /* @@ -1455,7 +1450,6 @@ /* * Run the multicast setup command. - * Call at splimp(). */ static int mc_setup(struct ie_softc *sc) @@ -1486,14 +1480,21 @@ * and adds to it all the other structures we need to operate the adapter. * This includes executing the CONFIGURE, IA-SETUP, and MC-SETUP commands, * starting the receiver unit, and clearing interrupts. - * - * THIS ROUTINE MUST BE CALLED AT splimp() OR HIGHER. */ static void ieinit(xsc) void *xsc; { struct ie_softc *sc = xsc; + + IE_LOCK(sc); + ieinit_locked(sc); + IE_UNLOCK(sc); +} + +static void +ieinit_locked(struct ie_softc *sc) +{ struct ifnet *ifp = sc->ifp; volatile struct ie_sys_ctl_block *scb = sc->scb; caddr_t ptr; @@ -1614,17 +1615,18 @@ static void ie_stop(struct ie_softc *sc) { + struct ifnet *ifp = sc->ifp; + + ifp->if_drv_flags &= ~(IFF_DRV_RUNNING | IFF_DRV_OACTIVE); command_and_wait(sc, IE_RU_DISABLE, 0, 0); } static int ieioctl(struct ifnet *ifp, u_long command, caddr_t data) { - int s, error = 0; + int error = 0; struct ie_softc *sc = ifp->if_softc; - s = splimp(); - switch (command) { case SIOCSIFFLAGS: /* @@ -1632,9 +1634,9 @@ * mode, so we must turn on promiscuous mode and do the * filtering manually. */ + IE_LOCK(sc); if ((ifp->if_flags & IFF_UP) == 0 && (ifp->if_drv_flags & IFF_DRV_RUNNING)) { - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; ie_stop(sc); } else if ((ifp->if_flags & IFF_UP) && (ifp->if_drv_flags & IFF_DRV_RUNNING) == 0) { @@ -1647,6 +1649,7 @@ ifp->if_flags & (IFF_PROMISC | IFF_ALLMULTI); ieinit(sc); } + IE_UNLOCK(sc); break; case SIOCADDMULTI: @@ -1655,7 +1658,9 @@ * Update multicast listeners */ /* reset multicast filtering */ + IE_LOCK(sc); ie_mc_reset(sc); + IE_UNLOCK(sc); error = 0; break; @@ -1664,7 +1669,6 @@ break; } - splx(s); return (error); } @@ -1685,7 +1689,8 @@ /* XXX - this is broken... */ if (sc->mcast_count >= MAXMCAST) { sc->ifp->if_flags |= IFF_ALLMULTI; - ieioctl(sc->ifp, SIOCSIFFLAGS, (void *) 0); + if (sc->ifp->if_flags & IFF_UP) + ieinit_locked(sc); goto setflag; } bcopy(LLADDR((struct sockaddr_dl *) ifma->ifma_addr), @@ -1769,6 +1774,8 @@ if (sc->irq_ih) bus_teardown_intr(dev, sc->irq_res, sc->irq_ih); + if (sc->rframes) + free(sc->rframes, M_DEVBUF); if (sc->io_res) bus_release_resource(dev, SYS_RES_IOPORT, sc->io_rid, sc->io_res); @@ -1793,13 +1800,15 @@ sc = device_get_softc(dev); ifp = sc->ifp; + IE_LOCK(sc); if (sc->hard_type == IE_EE16) ee16_shutdown(sc, 0); ie_stop(sc); - ifp->if_drv_flags &= ~IFF_DRV_RUNNING; + IE_UNLOCK(sc); ether_ifdetach(ifp); ie_release_resources(dev); + mtx_destroy(&sc->lock); return (0); } ==== //depot/projects/vimage/src/sys/dev/ie/if_ie_isa.c#3 (text+ko) ==== @@ -37,7 +37,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/dev/ie/if_ie_isa.c,v 1.7 2007/02/23 12:18:43 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/dev/ie/if_ie_isa.c,v 1.8 2008/06/02 19:17:40 jhb Exp $"); #include #include @@ -269,13 +269,6 @@ goto bad; } - error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET, - NULL, ie_intr, sc, &sc->irq_ih); - if (error) { - device_printf(dev, "Unable to register interrupt handler\n"); - goto bad; - } - return (0); bad: ie_release_resources(dev); @@ -560,13 +553,6 @@ goto bad; } - error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET, - NULL, ie_intr, sc, &sc->irq_ih); - if (error) { - device_printf(dev, "Unable to register interrupt handler\n"); - goto bad; - } - return (0); bad: ie_release_resources(dev); @@ -772,13 +758,6 @@ goto bad; } - error = bus_setup_intr(dev, sc->irq_res, INTR_TYPE_NET, - NULL, ie_intr, sc, &sc->irq_ih); - if (error) { - device_printf(dev, "Unable to register interrupt handler\n"); - goto bad; - } - return (0); bad: ie_release_resources(dev); ==== //depot/projects/vimage/src/sys/dev/ie/if_ievar.h#3 (text+ko) ==== >>> TRUNCATED FOR MAIL (1000 lines) <<< From julian at FreeBSD.org Tue Jun 3 01:54:52 2008 From: julian at FreeBSD.org (Julian Elischer) Date: Tue Jun 3 01:54:54 2008 Subject: PERFORCE change 142781 for review Message-ID: <200806030154.m531sp8l049748@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142781 Change 142781 by julian@julian_trafmon1 on 2008/06/03 01:54:15 Add my usual scripts Affected files ... .. //depot/projects/vimage-commit/makediff.pl#1 add .. //depot/projects/vimage-commit/update.sh#1 add Differences ... From pgj at FreeBSD.org Tue Jun 3 04:25:23 2008 From: pgj at FreeBSD.org (Gabor Pali) Date: Tue Jun 3 04:25:26 2008 Subject: PERFORCE change 142784 for review Message-ID: <200806030425.m534PM2t065942@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142784 Change 142784 by pgj@disznohal on 2008/06/03 04:25:01 IFC Affected files ... .. //depot/projects/docproj_hu/www/en/news/news.sgml#3 integrate .. //depot/projects/docproj_hu/www/en/platforms/mips.sgml#2 integrate .. //depot/projects/docproj_hu/www/en/security/security.sgml#2 integrate Differences ... ==== //depot/projects/docproj_hu/www/en/news/news.sgml#3 (text+ko) ==== @@ -1,6 +1,6 @@ - + ]> @@ -43,7 +43,10 @@
  • + +

    Daemon Forums: Active online forums and news community site dedicated to FreeBSD and other BSDs.

  • ==== //depot/projects/docproj_hu/www/en/platforms/mips.sgml#2 (text+ko) ==== @@ -1,6 +1,6 @@ - + @@ -9,16 +9,29 @@ &header; +

    Introduction

    +

    This page contains information about porting FreeBSD to the - MIPS.

    + MIPS® platform. Discussion of the MIPS port takes + place on the + freebsd-mips + mailing list.

    -

    General Information

    +

    Table Of Contents

    +

    Status

    + +

    MIPS is a + + Tier 3 architecture, and as such is currently regarded as experimental. + It is not supported by the FreeBSD project.

    +

    Frequently Asked Questions

      @@ -32,20 +45,21 @@

      What is the FreeBSD/MIPS project?

      FreeBSD/MIPS is a port of the FreeBSD operating system - to computers with MIPS R4K and beyond processors, most notably - SGI's MIPS computers.

      + to platforms based around MIPS processors.

      What hardware are you targeting?

      -

      At the moment SGI's MIPS computers. Other MIPS platforms +

      At the moment, several MIPS32 development boards and + SGI's MIPS64 computers are being targeted. Other MIPS platforms such as common embedded boards and non-exotic computers in - a similar configuration to those offered by SGI are expected + a similar configuration are expected to be targeted later on.

      What is the current status?

      FreeBSD/MIPS is in the early stages of development, see the - project status page for information + MIPS wiki page + for information about currently ongoing work.

      How can I acquire FreeBSD/MIPS?

      @@ -58,15 +72,15 @@

      Juli Mallett is the project lead. Contact her if you can contribute code. If you just want - to know about the status of this project, check the - project status page regularly or + to know about the status of this project, check this page + regularly or join the FreeBSD/MIPS mailing list.

      FreeBSD/MIPS mailing list

      -

      To subscribe to this list, send mail to - or visit mailman interface.

      + or visit the mailman interface.

      &footer; ==== //depot/projects/docproj_hu/www/en/security/security.sgml#2 (text+ko) ==== @@ -1,12 +1,12 @@ - + %developers; ]> - + &header; @@ -225,20 +225,6 @@
    - - - - - - - - - - - - - - @@ -246,20 +232,6 @@ - - - - - - - - - - - - - - From pgj at FreeBSD.org Tue Jun 3 05:26:25 2008 From: pgj at FreeBSD.org (Gabor Pali) Date: Tue Jun 3 05:26:28 2008 Subject: PERFORCE change 142787 for review Message-ID: <200806030526.m535QO4G080885@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142787 Change 142787 by pgj@disznohal on 2008/06/03 05:25:52 MFen: 1.406 --> 1.407 books/handbook/advanced-networking/chapter.sgml 1.231 --> 1.232 books/handbook/config/chapter.sgml 1.81 --> 1.82 books/handbook/firewalls/chapter.sgml 1.389 --> 1.390 books/handbook/install/chapter.sgml 1.183 --> 1.184 books/handbook/kernelconfig/chapter.sgml 1.136 --> 1.138 books/handbook/mail/chapter.sgml 1.179 --> 1.180 books/handbook/ppp-and-slip/chapter.sgml 1.126 --> 1.128 books/handbook/serialcomms/chapter.sgml 1.44 --> 1.45 books/handbook/vinum/chapter.sgml MFP4 after: 3 days Affected files ... .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/advanced-networking/chapter.sgml#2 edit .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/config/chapter.sgml#5 edit .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/firewalls/chapter.sgml#2 edit .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/install/chapter.sgml#2 edit .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/kernelconfig/chapter.sgml#2 edit .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/mail/chapter.sgml#2 edit .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/ppp-and-slip/chapter.sgml#2 edit .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/vinum/chapter.sgml#2 edit Differences ... ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/advanced-networking/chapter.sgml#2 (text+ko) ==== @@ -6,7 +6,7 @@ + Original Revision: 1.407 --> Egyéb haladó hálózati @@ -2996,16 +2996,8 @@ ubt0: Interface 1 (alt.config 5) endpoints: isoc-in=0x83, isoc-out=0x3, wMaxPacketSize=49, nframes=6, buffer size=294</screen> - <note> - <para>A &os; 6.0 valamint a &os; 5.X ágon - belül az 5.5 elõtti változatokban a Bluetooth - protokollkészletet kézzel kell beüzemelni. - A &os; 5.5, illetve 6.1 és attól - újabb változatokban ezt már a - &man.devd.8; magától elvégzi.</para> - <para>Másoljuk az - <filename>/usr/share/examples/netgraph/bluetooth/rc.bluetooth</filename> + <filename>/usr/share/examples/netgraph/bluetooth/rc.bluetooth</filename> állományt valamilyen alkalmas helyre, például az <filename>/etc/rc.bluetooth</filename> könyvtárba. Ez a szkript fogja végezni a @@ -3030,7 +3022,6 @@ Number of ACL packets: 8 Max. SCO packet size: 64 bytes Number of SCO packets: 8</screen> - </note> </sect2> @@ -3508,15 +3499,6 @@ <screen>&prompt.root; <userinput>/etc/rc.d/sdpd start</userinput></screen> - <para>A &os; 6.0, és a &os; 5.X - ágában az 5.5 elõtti verzióiban az - <application>sdpd</application> nem szerepel még a - rendszer indítószkriptjei között. - Ezért így kell manuálisan - beindítanunk:</para> - - <screen>&prompt.root; <userinput>sdpd</userinput></screen> - <para>A távoli kliensek részére Bluetooth szolgáltatásokat felajánlani kívánó helyi szerver alkalmazásoknak ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/config/chapter.sgml#5 (text+ko) ==== @@ -6,7 +6,7 @@ <!-- The FreeBSD Hungarian Documentation Project Translated by: PALI, Gabor <pgj@FreeBSD.org> - Original Revision: 1.231 --> + Original Revision: 1.232 --> <chapter id="config-tuning" lang="hu"> <chapterinfo> @@ -3167,9 +3167,8 @@ nagyjából ugyanannyi erõforrásra van szüksége, mint egy nagyobb webszervernek.</para> - <para>A &os; 4.5 változatától - kezdõdõen a <varname>kern.maxusers</varname> - értéke a rendelkezésre álló + <para>A <varname>kern.maxusers</varname> értéke a + rendelkezésre álló memóriának megfelelõen magától méretezõdik a rendszer indításakor, és amit futás @@ -3199,12 +3198,8 @@ lásd a &man.loader.conf.5; man oldalt vagy a <filename>/boot/defaults/loader.conf</filename> állományt) illetve a leírás - más részén megadott módok szerint. - A &os; 4.4 változatánál - korábbi rendszerek esetén erre a rendszermag - &man.config.8; beállításának - <option>maxusers</option> paraméterét kell - használni.</para> + más részén megadott módok + szerint.</para> <para>A korábbi kiadásokban úgy lehet önszabályozóra állítani a @@ -3264,19 +3259,7 @@ rendszert egyidejûleg használni kívánó felhasználók maximális számának - figyelembevételével. A távoli - bejelentkezések és X terminálablakok - számát <emphasis>ténylegesen</emphasis> - a <link linkend="kernelconfig-ptys"><literal>pseudo-device - pty 16</literal></link> paraméter határolja - le. A &os; 5.X változataitól - kezdõdõen már nem kell aggódni - emiatt, mivel a &man.pty.4; meghajtó - <quote>önmagát klónozza</quote>. - Ezért elegendõ csak a <literal>device - pty</literal> sor használató a - konfigurációs - állományban.</para> + figyelembevételével.</para> </note> </sect3> ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/firewalls/chapter.sgml#2 (text+ko) ==== @@ -6,7 +6,7 @@ <!-- The FreeBSD Hungarian Documentation Project Translated by: PALI, Gabor <pgj@FreeBSD.org> - Original Revision: 1.81 --> + Original Revision: 1.82 --> <chapter id="firewalls" lang="hu"> <chapterinfo> @@ -547,11 +547,9 @@ útmutatóját olvasgatva azonban soha nem szabad elfelejtenünk, hogy &os; egyes változatai a <application>pf</application> különbözõ - verzióit tartalmazzák. A &os; 5.X - változataiban az OpenBSD 3.5 - <application>pf</application> tûzfalát, míg - a &os; 6.X változataiban az OpenBSD 3.7 - szerinti verzióját találjuk.</para> + verzióit tartalmazzák. A &os; 6.X + változataiban az OpenBSD 3.7 szerinti + verzióját találjuk.</para> </warning> <para>A &a.pf; kitûnõ hely a ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/install/chapter.sgml#2 (text+ko) ==== @@ -6,7 +6,7 @@ <!-- The FreeBSD Hungarian Documentation Project Translated by: PALI, Gabor <pgj@FreeBSD.org> - Original Revision: 1.389 --> + Original Revision: 1.390 --> <chapter id="install" lang="hu"> <chapterinfo> @@ -2859,27 +2859,6 @@ <literal>C</literal>-vel cilinderben is kifejezhetünk.</para> - <note> - <para>A &os; 5.X verziójától - kezdõdõen a felhasználók - további lehetõségei: a <literal>Custom - Newfs</literal> (<keycap>Z</keycap>) opciónál - megadható az <acronym>UFS2</acronym> (amely a - &os; 5.1 és késõbbi - változataiban már - alapbeállítás), az <literal>Auto - Defaults</literal> opcióval létrehozhatunk - partíciókat, amelyeket aztán - módosítani tudunk a <literal>Custom - Newfs</literal> beállítással vagy az - <option>-O 2</option> opcióval a megszokott - létrehozási periódus során. A - <literal>Custom Newfs</literal> - használatánál azonban ne felejtsük - el a <option>-U</option> opció - megadásával bekapcsolni a SoftUpdatest!</para> - </note> - <figure id="sysinstall-label-add"> <title>Szabad hely a gyökérpartíción @@ -3483,9 +3462,7 @@ megismételhetõ a beállítások opcióit tartalmazó menü újbóli használatával, vagy pedig a telepítés - után a sysinstall (illetve a &os; - 5.2-nél régebbi verziói esetén - /stand/sysinstall) parancs + után a sysinstall parancs kiadásával, majd a Configure (Beállítások) menüpont @@ -5068,9 +5045,8 @@ szükségünk lenne. Ez a rész a telepítés befejezése után továbbra is elérhetõ a - sysinstall (vagy a &os; 5.2 elõtt - verzióiban a /stand/sysinstall) - parancs segítségével. + sysinstall parancs + segítségével. Amikor befejeztük a felhasználók hozzáadását, a nyilakkal válasszuk @@ -5134,9 +5110,7 @@ lépést kívánunk még elvégezni, ezen a ponton megtehetjük vagy a telepítés után a - sysinstall (illetve a &os; 5.2-nél - régebbi változatai esetén a - /stand/sysinstall) parancs + sysinstall parancs kiadásával. User Confirmation Requested @@ -6045,17 +6019,15 @@ keresi. - A &os; 5.0 és késõbbi - változatai az i386, amd64 és ia64 - platformokon az indítás közben az - eszközök felderítésében - erõsen építkeznek a rendszeren - elérhetõ ACPI szolgáltatásra. - Sajnos még mindig vannak hibák az ACPI - meghajtóban, az alaplapokban és a - BIOS-okban. A rendszerbetöltõ harmadik - fokozatában viszont az - hint.acpi.0.disabled + A &os; az i386, amd64 és ia64 platformokon az + indítás közben az eszközök + felderítésében erõsen + építkeznek a rendszeren elérhetõ + ACPI szolgáltatásra. Sajnos még + mindig vannak hibák az ACPI meghajtóban, az + alaplapokban és a BIOS-okban. A + rendszerbetöltõ harmadik fokozatában + viszont az hint.acpi.0.disabled megadásával kikapcsolható az ACPI használata: @@ -6430,10 +6402,6 @@ &prompt.root; cu -l /dev/cuad0 - A &os; 5.X verzióiban a - /dev/cuad0 helyett a - /dev/cuaa0 eszközt - írjuk. @@ -6553,8 +6521,8 @@ image-eit tartalmazza:
    Estimated EoL
    RELENG_5n/an/an/aMay 31, 2008
    RELENG_5_55.5-RELEASEExtendedMay 25, 2006May 31, 2008
    RELENG_6 n/a n/aJanuary 31, 2010
    RELENG_6_16.1-RELEASEExtendedMay 9, 2006May 31, 2008
    RELENG_6_26.2-RELEASENormalJanuary 15, 2007May 31, 2008
    RELENG_6_3 6.3-RELEASE Extended
    - FreeBSD 5.<replaceable>X</replaceable> és - 6.<replaceable>X</replaceable> ISO image-ek nevei + <title>FreeBSD 6.<replaceable>X</replaceable> és + 7.<replaceable>X</replaceable> ISO image-ek nevei és jelentései @@ -6594,16 +6562,13 @@ változat-RELEASE-architektúra-disc2.iso - A &os; dokumentációja (a &os; - 6.2-es verziójáig) valamint annyi - csomag, ami a lemezre csak felfér. + Annyi csomag, ami a lemezre csak + felfér. változat-RELEASE-architektúra-docs.iso - A &os; dokumentációja (a &os; 6.2 - és késõbbi - verzióiban). + A &os; dokumentációja. ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/kernelconfig/chapter.sgml#2 (text+ko) ==== @@ -5,7 +5,7 @@ --> + Original Revision: 1.184 --> @@ -1336,8 +1336,7 @@ A fejlett energiagazdálkodás támogatása. Laptopok esetén hasznos, - habár a &os; 5.X és késõbbi - verzióiban ez alapértelmezés szerint nincs + habár ez alapértelmezés szerint nincs engedélyezve a GENERIC konfigurációban. ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/mail/chapter.sgml#2 (text+ko) ==== @@ -6,7 +6,7 @@ + Original Revision: 1.138 --> @@ -944,13 +944,6 @@ A <application>sendmail</application> letiltása - A sendmail - elindításához szükséges - módszer jelentõsen megváltozott a 4.5-RELEASE - és 4.6-RELEASE változatok között, - ezért a letiltásának pontos menete bizonyos - esetekben eltérhet. - Amikor letiltjuk a sendmail kimenõ levél szolgáltatását, @@ -974,65 +967,6 @@ kézbesítésre. - - A &os; 2002/4/4 elõtti 4.5-STABLE vagy annál - korábbi változata (beleértve a - 4.5-RELEASE és az azt megelõzõ - verziókat) - - Az /etc/rc.conf - állományba írjuk be: - - sendmail_enable="NO" - - Ezzel kikapcsoljuk a sendmail - számára a beérkezõ levelek - feldolgozását, de ha a - /etc/mail/mailer.conf (lásd - lentebb) nem változik, akkor a - sendmail továbbra is - alkalmas lesz levelek küldésére. - - - - - A &os; 2002/4/4 utáni 4.5-STABLE vagy - késõbbi változata (beleértve a - 4.6-RELEASE és az azt következõ - változatokat) - - A sendmail teljes - letiltását, beleértve a kimenõ - levelek kézbesítését, az - /etc/rc.conf állományban a - következõ sor hozzáadásával - kezdeményezhetjük: - - sendmail_enable="NONE" - - Ha csak a beérkezõ levelek - feldolgozását akarjuk kikapcsolni, akkor az - /etc/rc.conf állományban - ennyit állítsunk be: - - sendmail_enable="NO" - - Habár ezzel letiltottuk a beérkezõ - levelek feldolgozását, a helyi - kézbesítés ennek ellenére - még továbbra is mûködni fog. A - sendmail - indításával kapcsolatos - beállításokról a - &man.rc.sendmail.8; man oldalán olvashatunk - részletesebben. - - - - - A &os; 5.0-STABLE és a késõbbi - változatok - A sendmail teljes leállításához, beleértve a kimenõ levelekhez tartozó @@ -1059,72 +993,25 @@ beállításokat az &man.rc.sendmail.8; man oldalon találjuk. - Az új levéltovábbító elindítása a rendszerrel együtt - Attól függõen, hogy a &os; melyik - változatát használjuk, a - rendszerindítás folyamán két - módszer áll rendelkezésünkre az - új levélküldõ - elindítására. + Az új levéltovábbítót + úgy tudjuk elindítani a rendszerrel együtt, + ha az /etc/rc.conf + állományba felvesszük a következõ + sort, például a + postfix esetében: - - A &os; 2002/4/11 elõtti 4.5-STABLE változata - (beleértve a 4.5-RELEASE és a korábbi - változatokat) + &prompt.root; echo 'postfix_enable="YES"' >> /etc/rc.conf - Hozzunk létre egy szkriptet a - /usr/local/etc/rc.d - könyvtárban, adjunk neki .sh - kiterjesztést és tegyük a - root felhasználó - által futtathatóvá. A szkriptnek a - start és stop - paramétereket kell tudnia értelmeznie. A - rendszer indulásakor a rendszerszkriptek a + Az új levéltovábbító + így most már magától el fog indulni + a rendszer indításakor. - /usr/local/etc/rc.d/supermailer.sh start - - parancsot fogják majd kiadni, de ezt a szerver - manuális indítására is - felhasználhatjuk. A rendszer - leállításakor pedig a rendszerszkriptek a - stop paramétert fogják - átadni, vagyis a - - /usr/local/etc/rc.d/supermailer.sh stop - - parancsot hívják meg, amelyet - egyébként manuálisan is kiadhatunk a - szerver leállításához. - - - - - A &os; 2002/4/11 utáni 4.5-STABLE változata - (beleértve a 4.6-RELEASE és késõbbi - változatokat) - - A &os; újabb változataiban alkalmazhatjuk az - iménti módszert, vagy az - /etc/rc.conf állományban - megadhatjuk a - - mta_start_script="állománynév" - - változót, ahol az - állománynév - annak a szkriptnek a neve, amely a rendszerrel együtt - elindítandó - levéltovábbítót fogja - beüzemelni. - - ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/ppp-and-slip/chapter.sgml#2 (text+ko) ==== @@ -6,7 +6,7 @@ + Original Revision: 1.180 --> @@ -430,11 +430,9 @@ Itt adjuk meg az eszközt, amelyre a modem csatlakozik. A COM1 neve - /dev/cuad0 (vagy - /dev/cuaa0 &os; 5.X alatt), - a COM2 neve pedig - /dev/cuad1 (vagy - /dev/cuaa1). + /dev/cuad0, a + COM2 neve pedig + /dev/cuad1. @@ -2297,8 +2295,7 @@ vonali modemünk a sio1 vagy COM2 porton csatlakozik DOS-ban, akkor itt a neki megfelelõ eszköz a - /dev/cuad1 lesz (vagy - /dev/cuaa1 &os; 5.X alatt). + /dev/cuad1 lesz. @@ -2330,8 +2327,7 @@ ppp ON pelda> set device /dev/cuad1 Beállítjuk a modemünket, ami ebben az - esetben a cuad1 (vagy - /dev/cuaa1 &os; 5.X alatt). + esetben a cuad1. ppp ON pelda> set speed 115200 @@ -3164,8 +3160,7 @@ modemünk melyik soros portra csatlakozik. Sokan /dev/modem néven egy szimbolikus linket hoznak létre a valódi eszközre, - például a /dev/cuadN (vagy - &os; 5.X alatt a /dev/cuaaN) + például a /dev/cuadN leíróra. Ennek köszönhetõen az eszköz tényleges névetõl el tudunk vonatkoztatni és soha nem kell módosítanunk @@ -3178,13 +3173,10 @@ .kermrc állományt! - A /dev/cuad0 (vagy a &os; 5.X - alatt a /dev/cuaa0) a + A /dev/cuad0 a COM1 port, a - cuad1 (avagy - /dev/cuaa1) a - COM2 és így - tovább. + cuad1 a COM2 + és így tovább. A rendszermag beállításait ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/vinum/chapter.sgml#2 (text+ko) ==== @@ -10,7 +10,7 @@ --> + Original Revision: 1.45 --> @@ -1377,13 +1377,9 @@ a vinum start parancsot. - A most következõ bekezdés a &os; 5.X - és az azutáni rendszerek esetén - mutatja be a szükséges - lépéseket. A &os; 4.X verziója - esetén máshogy kell elvégezni a - beállításokat, amit a mutat be. + A most következõ bekezdések + mutatják be a szükséges + lépéseket. Ha hozzáadjuk a következõ sort a @@ -1845,110 +1841,6 @@ - - - Eltérések a &os; 4.X - verziójában - - A lemezek automatikus felderítéséhez a - Vinumnak szüksége van bizonyos belsõ - funkciókra, amelyek a &os; 4.X - verziójából még hiányoznak, - valamint a rendszerindító eszköz belsõ - azonosítóját - feltérképezõ kód sem elég - intelligens ahhoz, hogy magától - megbírkózzon a - /dev/vinum/root alakú nevekkel. - Ennélfogva a folyamat kicsit különbözik - ebben az esetben. - - A /boot/loader.conf - állományban a Vinumnak explicit módon meg - kell mondani, melyik lemezeket nézze át: - - vinum.drives="/dev/da0 /dev/da1" - - Fontos megemlíteni, hogy az itt megemlített - meghajtók mindegyike tartalmazhat Vinummal kapcsolatos - adatokat. Tehát probléma nélkül - megadhatunk több meghajtót is, - illetve nem kötelezõ rendre megadni az egyes - slice-okat és/vagy partíciókat, mivel a - Vinum a megnevezett meghajtók összes slice-án - és partícióján keresni fogja az - érvényes Vinum-fejléceket. - - Mivel az rendszerindító - állományrendszer nevének - elemzését és ebbõl a (fõ- - és al-) eszközazonosító - megállapítását végzõ - rutinok csupán a klasszikus - eszköznevek, mint például a - /dev/ad0s1a, esetére lettek - felkészítve, nem képesek a - /dev/vinum/root alakú - rendszerindító kötetek neveit - megérteni. Emiatt a Vinumnak kell az indulása - során beállítania a - rendszerindító eszköz - azonosítóját tartalmazó - paramétert a rendszermagon belül. Ezért a - rendszerbetöltõ vinum.root - nevû változójában át kell - adnunk neki a rendszerindító kötet - nevét. Tehát a - /boot/loader.conf állományban - a hozzátartozó bejegyzés így - nézhet ki: - - vinum.root="root" - - Mikor a rendszermag megpróbálja - megállapítani a rendszerindításhoz - használható eszközt, megnézi, hogy - valamelyik modul beállította-e már ennek az - értékét. Amennyiben ez történt - és az eszköz szerint a - rendszerindító eszköz megfelel az - átadott rendszerindító eszköz - nevébõl megállapított - eszközmeghajtó fõszámának (jelen - esetünkben ez a "vinum"), nem fogja - tovább keresni, hanem az elõre megadott - eszközazonosítót használja. Ezen a - módon egy automatikus indítás során - egy Vinum-kötetrõl is csatlakoztathatóvá - válik a rendszerindító - állományrendszer. - - Amikor azonban a boot -a parancsot - használjuk a rendszerindító eszköz - nevének manuális megadásához, nem - szabad elfelejteni, hogy ez a rutin továbbra sem - képes értelmezni az itt bevitt Vinum-kötetek - nevét. Ha a megadott eszköznév nem egy - Vinum-eszközhöz tartozik, az itt - érvényes paraméter által - tárolt eszközazonosítók és - névbõl kikövetkeztetett - eszközmeghajtó nem illik egymáshoz és - a rutin behívja a rendes értelmezõjét, - így egy ufs:da0d alakú sztring - begépelése esetén az elvártaknak - megfelelõen cselekszik. Vegyük azonban figyelembe, ha - ez nem válik be, nincs lehetõségünk - másodjára megadni egy - ufs:vinum/root alakú sztringet, mivel - ezután a rendszer már nem tudja értelmezni. - Itt egyedül csak egy újraindítás, majd - a mûvelet újrakezdése segíthet. (A - bekérésnél (askroot prompt) - a /dev/ elõtag bármikor - elhagyható.) - - From rpaulo at FreeBSD.org Tue Jun 3 14:24:51 2008 From: rpaulo at FreeBSD.org (Rui Paulo) Date: Tue Jun 3 14:24:57 2008 Subject: PERFORCE change 142812 for review Message-ID: <200806031424.m53EOoV8062310@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142812 Change 142812 by rpaulo@rpaulo_epsilon on 2008/06/03 14:24:24 Complete pcap file dumping. Affected files ... .. //depot/projects/soc2008/rpaulo-tcpad/dumper.c#2 edit .. //depot/projects/soc2008/rpaulo-tcpad/dumper.h#2 edit .. //depot/projects/soc2008/rpaulo-tcpad/handler.c#5 edit .. //depot/projects/soc2008/rpaulo-tcpad/main.c#5 edit .. //depot/projects/soc2008/rpaulo-tcpad/tcpad.h#5 edit Differences ... ==== //depot/projects/soc2008/rpaulo-tcpad/dumper.c#2 (text+ko) ==== @@ -23,9 +23,11 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/soc2008/rpaulo-tcpad/dumper.c#1 $ + * $P4: //depot/projects/soc2008/rpaulo-tcpad/dumper.c#2 $ */ +#include +#include #include #include @@ -35,28 +37,29 @@ * Adds a packet to a pool of packets pertinent to this connection. */ void -dumper_addpkt(struct dumppkth *head, struct pcap_pkthdr *ph, unsigned char *headers) +dumper_addpkt(struct dumppkth *head, const struct pcap_pkthdr *ph, + const unsigned char *headers) { struct dumppkt *dp; dp = malloc(sizeof(*dp)); - memcpy(&dp.pheader, ph, sizeof(dp.pheader)); - memcpy(&dp.headers, headers, sizeof(dp.headers)); + memcpy(&dp->pheader, ph, sizeof(struct pcap_pkthdr)); + memcpy(&dp->headers, headers, 127); /* XXX */ /* XXX: honour the size of this list */ - TAILQ_INSERT_TAIL(dhead, dp, entries); + TAILQ_INSERT_TAIL(head, dp, entries); } /** * An error occured. Dump the packet list to a file. */ void -dumper_error(pcap_t *p, const char *path, struct dumppkt *head) +dumper_error(pcap_t *p, const char *path, struct dumppkth *head) { pcap_dumper_t *pd; struct dumppkt *dp; pd = pcap_dump_open(p, path); TAILQ_FOREACH(dp, head, entries) - pcap_dump(pd, dp->pheader, dp->headers); + pcap_dump(pd, &dp->pheader, dp->headers); pcap_dump_close(pd); } ==== //depot/projects/soc2008/rpaulo-tcpad/dumper.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/soc2008/rpaulo-tcpad/dumper.h#1 $ + * $P4: //depot/projects/soc2008/rpaulo-tcpad/dumper.h#2 $ */ #ifndef _DUMPER_H_ @@ -34,13 +34,14 @@ struct dumppkt { TAILQ_ENTRY(dumppkt) entries; struct pcap_pkthdr pheader; - unsigned char headers[50]; /* Enough for IP/IPv6 + TCP */ + unsigned char headers[128]; /* Enough for IP/IPv6 + TCP */ }; TAILQ_HEAD(dumppkth, entry); -void -dumper_addpkt(struct dumppkth *head, struct pcap_pkthdr *ph, - unsigned char *headers); +void dumper_addpkt(struct dumppkth *head, const struct pcap_pkthdr *ph, + const unsigned char *headers); +void dumper_error(pcap_t *p, const char *path, struct dumppkth *head); + #endif /* _DUMPER_H_ */ ==== //depot/projects/soc2008/rpaulo-tcpad/handler.c#5 (text+ko) ==== @@ -23,7 +23,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/soc2008/rpaulo-tcpad/handler.c#4 $ + * $P4: //depot/projects/soc2008/rpaulo-tcpad/handler.c#5 $ */ #include @@ -92,7 +92,7 @@ LIST_INSERT_HEAD(&chead, cp, entries); print_packet(bytes, linkhlen); TAILQ_INIT(&cp->pktshead); - dumper_addpkt(ph, bytes); + dumper_addpkt(&cp->pktshead, ph, bytes); } else if ((tcp->th_flags & TH_FLAGS) == (TH_SYN|TH_ACK)) { if (cp) { DPRINTF("connection already being tracked!\n"); @@ -112,9 +112,12 @@ DPRINTF("%s\n",inet_ntoa(cp->dv4addr)); LIST_INSERT_HEAD(&chead, cp, entries); print_packet(bytes, linkhlen); + TAILQ_INIT(&cp->pktshead); + dumper_addpkt(&cp->pktshead, ph, bytes); } else if ((tcp->th_flags & TH_FLAGS) == TH_ACK) { if (cp) { + dumper_addpkt(&cp->pktshead, ph, bytes); if (cp->tcpstate == TCPS_SYN_SENT || cp->tcpstate == TCPS_SYN_RECEIVED) { cp->tcpstate = TCPS_ESTABLISHED; @@ -130,11 +133,13 @@ } } else if ((tcp->th_flags & TH_FLAGS) == (TH_FIN|TH_ACK)) { if (cp) { + dumper_addpkt(&cp->pktshead, ph, bytes); if (cp->tcpstate == TCPS_ESTABLISHED) { cp->tcpstate = TCPS_FIN_WAIT_1; rcp->tcpstate = TCPS_CLOSE_WAIT; DPRINTF("fin_wait_1\n"); print_packet(bytes, linkhlen); + dumper_error(p, "test.cap", &cp->pktshead); } } } else if ((tcp->th_flags & TH_FLAGS) == (TH_RST|TH_ACK)) { ==== //depot/projects/soc2008/rpaulo-tcpad/main.c#5 (text+ko) ==== @@ -23,7 +23,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/soc2008/rpaulo-tcpad/main.c#4 $ + * $P4: //depot/projects/soc2008/rpaulo-tcpad/main.c#5 $ */ #include @@ -33,6 +33,7 @@ #include #include +#include "dumper.h" #include "tcpad.h" #include "device.h" #include "linkhdr.h" @@ -55,7 +56,6 @@ int ch; char *interface; char errbuf[PCAP_ERRBUF_SIZE]; - pcap_t *p; struct bpf_program fp; char filter[] = "ip proto \\tcp"; int linkhlen; ==== //depot/projects/soc2008/rpaulo-tcpad/tcpad.h#5 (text+ko) ==== @@ -23,7 +23,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/soc2008/rpaulo-tcpad/tcpad.h#4 $ + * $P4: //depot/projects/soc2008/rpaulo-tcpad/tcpad.h#5 $ */ #ifndef _TCPAD_H_ @@ -31,6 +31,8 @@ #include +pcap_t *p; + typedef struct _conn_t { LIST_ENTRY(_conn_t) entries; struct in_addr sv4addr; From rpaulo at FreeBSD.org Tue Jun 3 14:31:58 2008 From: rpaulo at FreeBSD.org (Rui Paulo) Date: Tue Jun 3 14:32:04 2008 Subject: PERFORCE change 142813 for review Message-ID: <200806031431.m53EVvv7062902@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142813 Change 142813 by rpaulo@rpaulo_epsilon on 2008/06/03 14:31:06 Add proper casting in pcap_dump() call. Affected files ... .. //depot/projects/soc2008/rpaulo-tcpad/dumper.c#3 edit Differences ... ==== //depot/projects/soc2008/rpaulo-tcpad/dumper.c#3 (text+ko) ==== @@ -23,7 +23,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/soc2008/rpaulo-tcpad/dumper.c#2 $ + * $P4: //depot/projects/soc2008/rpaulo-tcpad/dumper.c#3 $ */ #include @@ -60,6 +60,6 @@ pd = pcap_dump_open(p, path); TAILQ_FOREACH(dp, head, entries) - pcap_dump(pd, &dp->pheader, dp->headers); + pcap_dump((u_char *)pd, &dp->pheader, dp->headers); pcap_dump_close(pd); } From rpaulo at FreeBSD.org Tue Jun 3 14:32:59 2008 From: rpaulo at FreeBSD.org (Rui Paulo) Date: Tue Jun 3 14:33:01 2008 Subject: PERFORCE change 142814 for review Message-ID: <200806031432.m53EWxan062974@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142814 Change 142814 by rpaulo@rpaulo_epsilon on 2008/06/03 14:32:57 dumper_addpkt(): Use proper size of headers. Affected files ... .. //depot/projects/soc2008/rpaulo-tcpad/dumper.c#4 edit Differences ... ==== //depot/projects/soc2008/rpaulo-tcpad/dumper.c#4 (text+ko) ==== @@ -23,7 +23,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/soc2008/rpaulo-tcpad/dumper.c#3 $ + * $P4: //depot/projects/soc2008/rpaulo-tcpad/dumper.c#4 $ */ #include @@ -44,7 +44,7 @@ dp = malloc(sizeof(*dp)); memcpy(&dp->pheader, ph, sizeof(struct pcap_pkthdr)); - memcpy(&dp->headers, headers, 127); /* XXX */ + memcpy(&dp->headers, headers, sizeof(dp->headers)); /* XXX: honour the size of this list */ TAILQ_INSERT_TAIL(head, dp, entries); } From rpaulo at FreeBSD.org Tue Jun 3 14:41:08 2008 From: rpaulo at FreeBSD.org (Rui Paulo) Date: Tue Jun 3 14:41:14 2008 Subject: PERFORCE change 142815 for review Message-ID: <200806031441.m53Ef7Ij063824@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142815 Change 142815 by rpaulo@rpaulo_epsilon on 2008/06/03 14:40:15 Fix typo. Affected files ... .. //depot/projects/soc2008/rpaulo-tcpad/dumper.h#3 edit Differences ... ==== //depot/projects/soc2008/rpaulo-tcpad/dumper.h#3 (text+ko) ==== @@ -23,7 +23,7 @@ * ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE * POSSIBILITY OF SUCH DAMAGE. * - * $P4: //depot/projects/soc2008/rpaulo-tcpad/dumper.h#2 $ + * $P4: //depot/projects/soc2008/rpaulo-tcpad/dumper.h#3 $ */ #ifndef _DUMPER_H_ @@ -37,7 +37,7 @@ unsigned char headers[128]; /* Enough for IP/IPv6 + TCP */ }; -TAILQ_HEAD(dumppkth, entry); +TAILQ_HEAD(dumppkth, dumppkt); void dumper_addpkt(struct dumppkth *head, const struct pcap_pkthdr *ph, const unsigned char *headers); From strauss at FreeBSD.org Tue Jun 3 14:50:17 2008 From: strauss at FreeBSD.org (Anselm Strauss) Date: Tue Jun 3 14:50:18 2008 Subject: PERFORCE change 142816 for review Message-ID: <200806031450.m53EoG0D064555@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142816 Change 142816 by strauss@strauss_marvelman on 2008/06/03 14:49:46 - deleted all files I don't need for my project (at least for now) - will add own README/COPYING/Makefile files later ... Affected files ... .. //depot/projects/soc2008/strauss_libarchive/COPYING#5 delete .. //depot/projects/soc2008/strauss_libarchive/NEWS#3 delete .. //depot/projects/soc2008/strauss_libarchive/PROJECTS#2 delete .. //depot/projects/soc2008/strauss_libarchive/README#5 delete .. //depot/projects/soc2008/strauss_libarchive/autogen.sh#2 delete .. //depot/projects/soc2008/strauss_libarchive/contrib/README#2 delete .. //depot/projects/soc2008/strauss_libarchive/contrib/libarchive.1aix53.spec#2 delete .. //depot/projects/soc2008/strauss_libarchive/contrib/libarchive.spec#2 delete .. //depot/projects/soc2008/strauss_libarchive/contrib/libarchive_autodetect-st_lib_archive.m4#2 delete .. //depot/projects/soc2008/strauss_libarchive/contrib/psota-benchmark/results.txt#2 delete .. //depot/projects/soc2008/strauss_libarchive/contrib/psota-benchmark/tcp.sh#2 delete .. //depot/projects/soc2008/strauss_libarchive/cpio/Makefile#4 delete .. //depot/projects/soc2008/strauss_libarchive/cpio/test/Makefile#3 delete .. //depot/projects/soc2008/strauss_libarchive/doc/mdoc2man.awk#2 delete .. //depot/projects/soc2008/strauss_libarchive/doc/update.sh#2 delete .. //depot/projects/soc2008/strauss_libarchive/examples/minitar/Makefile#2 delete .. //depot/projects/soc2008/strauss_libarchive/libarchive/COPYING#2 delete .. //depot/projects/soc2008/strauss_libarchive/libarchive/Makefile#4 delete .. //depot/projects/soc2008/strauss_libarchive/libarchive/README#2 delete .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/.cvsignore#2 delete .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/Makefile#4 delete .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/README#2 delete .. //depot/projects/soc2008/strauss_libarchive/release.sh#2 delete .. //depot/projects/soc2008/strauss_libarchive/tar/COPYING#2 delete .. //depot/projects/soc2008/strauss_libarchive/tar/Makefile#4 delete .. //depot/projects/soc2008/strauss_libarchive/tar/test/Makefile#3 delete .. //depot/projects/soc2008/strauss_libarchive/windows/mvcpp.nt#2 delete .. //depot/projects/soc2008/strauss_libarchive/windows/wccpp.nt#2 delete Differences ... From gk at FreeBSD.org Tue Jun 3 18:00:40 2008 From: gk at FreeBSD.org (Gleb Kurtsou) Date: Tue Jun 3 18:00:43 2008 Subject: PERFORCE change 142838 for review Message-ID: <200806031800.m53I0dOQ094939@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142838 Change 142838 by gk@gk_h1 on 2008/06/03 17:59:53 fix bugs: ipfw was disabled. malloc(M_WAITOK) is ok in ipfw_*hook Affected files ... .. //depot/projects/soc2008/gk_l2filter/sys-netinet/ip_fw_pfil.c#4 edit Differences ... ==== //depot/projects/soc2008/gk_l2filter/sys-netinet/ip_fw_pfil.c#4 (text+ko) ==== @@ -547,15 +547,15 @@ struct pfil_head *pfh_inet, *pfh_ether; pfh_inet = pfil_head_get(PFIL_TYPE_AF, AF_INET); - if (pfh_inet == NULL) { + if (pfh_inet != NULL) { pfil_add_hook(ipfw_check_in, NULL, PFIL_IN | PFIL_WAITOK, pfh_inet); pfil_add_hook(ipfw_check_out, NULL, PFIL_OUT | PFIL_WAITOK, pfh_inet); } pfh_ether = pfil_head_get(PFIL_TYPE_IFT, IFT_ETHER); if (pfh_ether != NULL) { - pfil_add_hook(ipfw_ether_check_in, NULL, PFIL_IN, pfh_ether); - pfil_add_hook(ipfw_ether_check_out, NULL, PFIL_OUT, pfh_ether); + pfil_add_hook(ipfw_ether_check_in, NULL, PFIL_IN | PFIL_WAITOK, pfh_ether); + pfil_add_hook(ipfw_ether_check_out, NULL, PFIL_OUT | PFIL_WAITOK, pfh_ether); } if (pfh_inet == NULL || pfh_ether == NULL) From gk at FreeBSD.org Tue Jun 3 20:57:39 2008 From: gk at FreeBSD.org (Gleb Kurtsou) Date: Tue Jun 3 20:57:42 2008 Subject: PERFORCE change 142850 for review Message-ID: <200806032057.m53Kvd4j026209@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142850 Change 142850 by gk@gk_h1 on 2008/06/03 20:57:06 ifc Affected files ... .. //depot/projects/soc2008/gk_l2filter/sys-netinet/ip_carp.c#2 integrate .. //depot/projects/soc2008/gk_l2filter/sys-netinet/ip_fw_nat.c#2 integrate .. //depot/projects/soc2008/gk_l2filter/sys-netinet/libalias/alias.c#2 integrate .. //depot/projects/soc2008/gk_l2filter/sys-netinet/libalias/alias_db.c#2 integrate .. //depot/projects/soc2008/gk_l2filter/sys-netinet/libalias/alias_local.h#2 integrate .. //depot/projects/soc2008/gk_l2filter/sys-netinet/tcp_subr.c#3 integrate .. //depot/projects/soc2008/gk_l2filter/sys-netinet/tcp_timer.c#2 integrate Differences ... ==== //depot/projects/soc2008/gk_l2filter/sys-netinet/ip_carp.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/netinet/ip_carp.c,v 1.53 2008/02/07 13:18:59 glebius Exp $"); +__FBSDID("$FreeBSD: src/sys/netinet/ip_carp.c,v 1.54 2008/06/02 18:58:07 mlaier Exp $"); #include "opt_carp.h" #include "opt_bpf.h" @@ -241,9 +241,12 @@ u_int8_t version = CARP_VERSION, type = CARP_ADVERTISEMENT; u_int8_t vhid = sc->sc_vhid & 0xff; struct ifaddr *ifa; - int i; + int i, found; +#ifdef INET + struct in_addr last, cur, in; +#endif #ifdef INET6 - struct in6_addr in6; + struct in6_addr last6, cur6, in6; #endif if (sc->sc_carpdev) @@ -264,21 +267,44 @@ SHA1Update(&sc->sc_sha1, (void *)&type, sizeof(type)); SHA1Update(&sc->sc_sha1, (void *)&vhid, sizeof(vhid)); #ifdef INET - TAILQ_FOREACH(ifa, &SC2IFP(sc)->if_addrlist, ifa_list) { - if (ifa->ifa_addr->sa_family == AF_INET) - SHA1Update(&sc->sc_sha1, - (void *)&ifatoia(ifa)->ia_addr.sin_addr.s_addr, - sizeof(struct in_addr)); - } + cur.s_addr = 0; + do { + found = 0; + last = cur; + cur.s_addr = 0xffffffff; + TAILQ_FOREACH(ifa, &SC2IFP(sc)->if_addrlist, ifa_list) { + in.s_addr = ifatoia(ifa)->ia_addr.sin_addr.s_addr; + if (ifa->ifa_addr->sa_family == AF_INET && + ntohl(in.s_addr) > ntohl(last.s_addr) && + ntohl(in.s_addr) < ntohl(cur.s_addr)) { + cur.s_addr = in.s_addr; + found++; + } + } + if (found) + SHA1Update(&sc->sc_sha1, (void *)&cur, sizeof(cur)); + } while (found); #endif /* INET */ #ifdef INET6 - TAILQ_FOREACH(ifa, &SC2IFP(sc)->if_addrlist, ifa_list) { - if (ifa->ifa_addr->sa_family == AF_INET6) { + memset(&cur6, 0, sizeof(cur6)); + do { + found = 0; + last6 = cur6; + memset(&cur6, 0xff, sizeof(cur6)); + TAILQ_FOREACH(ifa, &SC2IFP(sc)->if_addrlist, ifa_list) { in6 = ifatoia6(ifa)->ia_addr.sin6_addr; - in6_clearscope(&in6); - SHA1Update(&sc->sc_sha1, (void *)&in6, sizeof(in6)); + if (IN6_IS_SCOPE_EMBED(&in6)) + in6.s6_addr16[1] = 0; + if (ifa->ifa_addr->sa_family == AF_INET6 && + memcmp(&in6, &last6, sizeof(in6)) > 0 && + memcmp(&in6, &cur6, sizeof(in6)) < 0) { + cur6 = in6; + found++; + } } - } + if (found) + SHA1Update(&sc->sc_sha1, (void *)&cur6, sizeof(cur6)); + } while (found); #endif /* INET6 */ /* convert ipad to opad */ ==== //depot/projects/soc2008/gk_l2filter/sys-netinet/ip_fw_nat.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/netinet/ip_fw_nat.c,v 1.2 2008/03/03 22:32:01 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/netinet/ip_fw_nat.c,v 1.3 2008/06/01 12:29:23 mav Exp $"); #include #include @@ -318,11 +318,12 @@ c = mtod(mcl, char *); if (args->oif == NULL) retval = LibAliasIn(t->lib, c, - MCLBYTES); + mcl->m_len + M_TRAILINGSPACE(mcl)); else retval = LibAliasOut(t->lib, c, - MCLBYTES); - if (retval != PKT_ALIAS_OK) { + mcl->m_len + M_TRAILINGSPACE(mcl)); + if (retval != PKT_ALIAS_OK && + retval != PKT_ALIAS_FOUND_HEADER_FRAGMENT) { /* XXX - should i add some logging? */ m_free(mcl); badnat: ==== //depot/projects/soc2008/gk_l2filter/sys-netinet/libalias/alias.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/netinet/libalias/alias.c,v 1.61 2008/05/02 18:54:36 marck Exp $"); +__FBSDID("$FreeBSD: src/sys/netinet/libalias/alias.c,v 1.63 2008/06/01 17:52:40 mav Exp $"); /* Alias.c provides supervisory control for the functions of the @@ -1092,13 +1092,13 @@ /* Local prototypes */ static int FragmentIn(struct libalias *la, struct in_addr ip_src, - struct in_addr *ip_dst, u_char ip_p, u_short *ip_sum); + struct in_addr *ip_dst, u_short ip_id, u_short *ip_sum); static int FragmentOut(struct libalias *, struct in_addr *ip_src, u_short *ip_sum); static int FragmentIn(struct libalias *la, struct in_addr ip_src, struct in_addr *ip_dst, - u_char ip_id, u_short *ip_sum) + u_short ip_id, u_short *ip_sum) { struct alias_link *lnk; @@ -1656,29 +1656,49 @@ * m_megapullup() - this function is a big hack. * Thankfully, it's only used in ng_nat and ipfw+nat. * - * It allocates an mbuf with cluster and copies the whole chain into cluster, - * so that it is all contiguous and the whole packet can be accessed via a - * plain (char *) pointer. This is required, because libalias doesn't know - * how to handle mbuf chains. + * It allocates an mbuf with cluster and copies the specified part of the chain + * into cluster, so that it is all contiguous and can be accessed via a plain + * (char *) pointer. This is required, because libalias doesn't know how to + * handle mbuf chains. * - * On success, m_megapullup returns an mbuf with cluster containing the input - * packet, on failure NULL. In both cases, the input packet is consumed. + * On success, m_megapullup returns an mbuf (possibly with cluster) containing + * the input packet, on failure NULL. The input packet is always consumed. */ struct mbuf * m_megapullup(struct mbuf *m, int len) { struct mbuf *mcl; - caddr_t cp; - if (len > MCLBYTES) + if (len > m->m_pkthdr.len) goto bad; - if ((mcl = m_getcl(M_DONTWAIT, MT_DATA, M_PKTHDR)) == NULL) + /* Do not reallocate packet if it is sequentional, + * writable and has some extra space for expansion. + * XXX: Constant 100bytes is completely empirical. */ +#define RESERVE 100 + if (m->m_next == NULL && M_WRITABLE(m) && M_TRAILINGSPACE(m) >= RESERVE) + return (m); + + if (len <= MCLBYTES - RESERVE) { + mcl = m_getcl(M_DONTWAIT, MT_DATA, M_PKTHDR); + } else if (len < MJUM16BYTES) { + int size; + if (len <= MJUMPAGESIZE - RESERVE) { + size = MJUMPAGESIZE; + } else if (len <= MJUM9BYTES - RESERVE) { + size = MJUM9BYTES; + } else { + size = MJUM16BYTES; + }; + mcl = m_getjcl(M_DONTWAIT, MT_DATA, M_PKTHDR, size); + } else { + goto bad; + } + if (mcl == NULL) goto bad; - cp = mtod(mcl, caddr_t); - m_copydata(m, 0, len, cp); m_move_pkthdr(mcl, m); - mcl->m_len = mcl->m_pkthdr.len; + m_copydata(m, 0, len, mtod(mcl, caddr_t)); + mcl->m_len = mcl->m_pkthdr.len = len; m_freem(m); return (mcl); ==== //depot/projects/soc2008/gk_l2filter/sys-netinet/libalias/alias_db.c#2 (text+ko) ==== @@ -25,7 +25,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/netinet/libalias/alias_db.c,v 1.72 2008/03/06 21:50:40 piso Exp $"); +__FBSDID("$FreeBSD: src/sys/netinet/libalias/alias_db.c,v 1.73 2008/06/01 18:34:58 mav Exp $"); /* Alias_db.c encapsulates all data structures used for storing @@ -180,8 +180,9 @@ */ /* Parameters used for cleanup of expired links */ -#define ALIAS_CLEANUP_INTERVAL_SECS 60 -#define ALIAS_CLEANUP_MAX_SPOKES 30 +/* NOTE: ALIAS_CLEANUP_INTERVAL_SECS must be less then LINK_TABLE_OUT_SIZE */ +#define ALIAS_CLEANUP_INTERVAL_SECS 64 +#define ALIAS_CLEANUP_MAX_SPOKES (LINK_TABLE_OUT_SIZE/5) /* Timeouts (in seconds) for different link types */ #define ICMP_EXPIRE_TIME 60 @@ -814,20 +815,12 @@ CleanupAliasData(struct libalias *la) { struct alias_link *lnk; - int i, icount; + int i; LIBALIAS_LOCK_ASSERT(la); - icount = 0; for (i = 0; i < LINK_TABLE_OUT_SIZE; i++) { - lnk = LIST_FIRST(&la->linkTableOut[i]); - while (lnk != NULL) { - struct alias_link *link_next; - - link_next = LIST_NEXT(lnk, list_out); - icount++; + while ((lnk = LIST_FIRST(&la->linkTableOut[i])) != NULL) DeleteLink(lnk); - lnk = link_next; - } } la->cleanupIndex = 0; @@ -837,39 +830,13 @@ static void IncrementalCleanup(struct libalias *la) { - int icount; - struct alias_link *lnk; + struct alias_link *lnk, *lnk_tmp; LIBALIAS_LOCK_ASSERT(la); - icount = 0; - lnk = LIST_FIRST(&la->linkTableOut[la->cleanupIndex++]); - while (lnk != NULL) { - int idelta; - struct alias_link *link_next; - - link_next = LIST_NEXT(lnk, list_out); - idelta = la->timeStamp - lnk->timestamp; - switch (lnk->link_type) { - case LINK_TCP: - if (idelta > lnk->expire_time) { - struct tcp_dat *tcp_aux; - - tcp_aux = lnk->data.tcp; - if (tcp_aux->state.in != ALIAS_TCP_STATE_CONNECTED - || tcp_aux->state.out != ALIAS_TCP_STATE_CONNECTED) { - DeleteLink(lnk); - icount++; - } - } - break; - default: - if (idelta > lnk->expire_time) { - DeleteLink(lnk); - icount++; - } - break; - } - lnk = link_next; + LIST_FOREACH_SAFE(lnk, &la->linkTableOut[la->cleanupIndex++], + list_out, lnk_tmp) { + if (la->timeStamp - lnk->timestamp > lnk->expire_time) + DeleteLink(lnk); } if (la->cleanupIndex == LINK_TABLE_OUT_SIZE) @@ -1137,12 +1104,12 @@ LIBALIAS_LOCK_ASSERT(la); i = StartPointOut(src_addr, dst_addr, src_port, dst_port, link_type); LIST_FOREACH(lnk, &la->linkTableOut[i], list_out) { - if (lnk->src_addr.s_addr == src_addr.s_addr - && lnk->server == NULL - && lnk->dst_addr.s_addr == dst_addr.s_addr - && lnk->dst_port == dst_port - && lnk->src_port == src_port - && lnk->link_type == link_type) { + if (lnk->dst_addr.s_addr == dst_addr.s_addr && + lnk->src_addr.s_addr == src_addr.s_addr && + lnk->src_port == src_port && + lnk->dst_port == dst_port && + lnk->link_type == link_type && + lnk->server == NULL) { lnk->timestamp = la->timeStamp; break; } @@ -2189,7 +2156,7 @@ void HouseKeeping(struct libalias *la) { - int i, n, n100; + int i, n; #ifndef _KERNEL struct timeval tv; struct timezone tz; @@ -2209,33 +2176,22 @@ #endif /* Compute number of spokes (output table link chains) to cover */ - n100 = LINK_TABLE_OUT_SIZE * 100 + la->houseKeepingResidual; - n100 *= la->timeStamp - la->lastCleanupTime; - n100 /= ALIAS_CLEANUP_INTERVAL_SECS; + n = LINK_TABLE_OUT_SIZE * (la->timeStamp - la->lastCleanupTime); + n /= ALIAS_CLEANUP_INTERVAL_SECS; - n = n100 / 100; - /* Handle different cases */ - if (n > ALIAS_CLEANUP_MAX_SPOKES) { - n = ALIAS_CLEANUP_MAX_SPOKES; + if (n > 0) { + if (n > ALIAS_CLEANUP_MAX_SPOKES) + n = ALIAS_CLEANUP_MAX_SPOKES; la->lastCleanupTime = la->timeStamp; - la->houseKeepingResidual = 0; - for (i = 0; i < n; i++) IncrementalCleanup(la); - } else if (n > 0) { - la->lastCleanupTime = la->timeStamp; - la->houseKeepingResidual = n100 - 100 * n; - - for (i = 0; i < n; i++) - IncrementalCleanup(la); } else if (n < 0) { #ifdef LIBALIAS_DEBUG fprintf(stderr, "PacketAlias/HouseKeeping(): "); fprintf(stderr, "something unexpected in time values\n"); #endif la->lastCleanupTime = la->timeStamp; - la->houseKeepingResidual = 0; } } @@ -2529,7 +2485,6 @@ la->timeStamp = tv.tv_sec; la->lastCleanupTime = tv.tv_sec; #endif - la->houseKeepingResidual = 0; for (i = 0; i < LINK_TABLE_OUT_SIZE; i++) LIST_INIT(&la->linkTableOut[i]); ==== //depot/projects/soc2008/gk_l2filter/sys-netinet/libalias/alias_local.h#2 (text+ko) ==== @@ -23,7 +23,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/sys/netinet/libalias/alias_local.h,v 1.35 2008/03/06 21:50:40 piso Exp $ + * $FreeBSD: src/sys/netinet/libalias/alias_local.h,v 1.36 2008/06/01 18:34:58 mav Exp $ */ /* @@ -60,7 +60,7 @@ #endif /* Sizes of input and output link tables */ -#define LINK_TABLE_OUT_SIZE 101 +#define LINK_TABLE_OUT_SIZE 4001 #define LINK_TABLE_IN_SIZE 4001 struct proxy_entry; @@ -110,8 +110,6 @@ * IncrementalCleanup() */ /* was called */ - int houseKeepingResidual; /* used by HouseKeeping() */ - int deleteAllLinks; /* If equal to zero, DeleteLink() */ /* will not remove permanent links */ ==== //depot/projects/soc2008/gk_l2filter/sys-netinet/tcp_subr.c#3 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/netinet/tcp_subr.c,v 1.307 2008/05/29 14:28:26 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/netinet/tcp_subr.c,v 1.308 2008/06/02 14:20:26 rwatson Exp $"); #include "opt_compat.h" #include "opt_inet.h" @@ -385,17 +385,13 @@ struct tcptemp * tcpip_maketemplate(struct inpcb *inp) { - struct mbuf *m; - struct tcptemp *n; + struct tcptemp *t; - m = m_get(M_DONTWAIT, MT_DATA); - if (m == NULL) - return (0); - m->m_len = sizeof(struct tcptemp); - n = mtod(m, struct tcptemp *); - - tcpip_fillheaders(inp, (void *)&n->tt_ipgen, (void *)&n->tt_t); - return (n); + t = malloc(sizeof(*t), M_TEMP, M_NOWAIT); + if (t == NULL) + return (NULL); + tcpip_fillheaders(inp, (void *)&t->tt_ipgen, (void *)&t->tt_t); + return (t); } /* ==== //depot/projects/soc2008/gk_l2filter/sys-netinet/tcp_timer.c#2 (text+ko) ==== @@ -30,7 +30,7 @@ */ #include -__FBSDID("$FreeBSD: src/sys/netinet/tcp_timer.c,v 1.100 2008/04/17 21:38:16 rwatson Exp $"); +__FBSDID("$FreeBSD: src/sys/netinet/tcp_timer.c,v 1.101 2008/06/02 14:20:26 rwatson Exp $"); #include "opt_inet6.h" #include "opt_tcpdebug.h" @@ -313,7 +313,7 @@ tcp_respond(tp, t_template->tt_ipgen, &t_template->tt_t, (struct mbuf *)NULL, tp->rcv_nxt, tp->snd_una - 1, 0); - (void) m_free(dtom(t_template)); + free(t_template, M_TEMP); } callout_reset(&tp->t_timers->tt_keep, tcp_keepintvl, tcp_timer_keep, tp); } else From gk at FreeBSD.org Tue Jun 3 20:58:41 2008 From: gk at FreeBSD.org (Gleb Kurtsou) Date: Tue Jun 3 20:58:42 2008 Subject: PERFORCE change 142851 for review Message-ID: <200806032058.m53KweWg026278@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142851 Change 142851 by gk@gk_h1 on 2008/06/03 20:57:39 branch sbin/ipfw Affected files ... .. //depot/projects/soc2008/gk_l2filter/sbin-ipfw/Makefile#1 branch .. //depot/projects/soc2008/gk_l2filter/sbin-ipfw/ipfw.8#1 branch .. //depot/projects/soc2008/gk_l2filter/sbin-ipfw/ipfw2.c#1 branch Differences ... From julian at FreeBSD.org Wed Jun 4 01:09:53 2008 From: julian at FreeBSD.org (Julian Elischer) Date: Wed Jun 4 01:09:54 2008 Subject: PERFORCE change 142855 for review Message-ID: <200806040109.m5419qkH066416@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142855 Change 142855 by julian@julian_trafmon1 on 2008/06/04 01:09:21 remember whhere I was up to (first IPV6 file in netinet6) Affected files ... .. //depot/projects/vimage-commit/V_#1 add Differences ... From jb at FreeBSD.org Wed Jun 4 03:11:56 2008 From: jb at FreeBSD.org (John Birrell) Date: Wed Jun 4 03:12:01 2008 Subject: PERFORCE change 142856 for review Message-ID: <200806040311.m543Btw6079318@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142856 Change 142856 by jb@freebsd3 on 2008/06/04 03:11:32 Removed all the version ifdefs from libelf. I can't see what this buys us. Sure, ports can use a FreeBSD version to check for functionality level. Affected files ... .. //depot/projects/dtrace6/src/lib/libelf/gelf.h#3 edit .. //depot/projects/dtrace6/src/lib/libelf/gelf_cap.c#3 edit .. //depot/projects/dtrace6/src/lib/libelf/gelf_move.c#3 edit .. //depot/projects/dtrace6/src/lib/libelf/gelf_syminfo.c#3 edit .. //depot/projects/dtrace6/src/lib/libelf/libelf_align.c#3 edit .. //depot/projects/dtrace6/src/lib/libelf/libelf_convert.m4#3 edit .. //depot/projects/dtrace6/src/lib/libelf/libelf_data.c#3 edit .. //depot/projects/dtrace6/src/lib/libelf/libelf_fsize.m4#3 edit .. //depot/projects/dtrace6/src/lib/libelf/libelf_msize.m4#3 edit Differences ... ==== //depot/projects/dtrace6/src/lib/libelf/gelf.h#3 (text+ko) ==== @@ -50,11 +50,9 @@ typedef Elf64_Rel GElf_Rel; /* Relocation entries */ typedef Elf64_Rela GElf_Rela; /* Relocation entries with addend */ -#if __FreeBSD_version >= 700025 typedef Elf64_Cap GElf_Cap; /* SW/HW capabilities */ typedef Elf64_Move GElf_Move; /* Move entries */ typedef Elf64_Syminfo GElf_Syminfo; /* Symbol information */ -#endif #define GELF_M_INFO ELF64_M_INFO #define GELF_M_SIZE ELF64_M_SIZE @@ -100,14 +98,12 @@ Elf_Data *gelf_xlatetof(Elf *_elf, Elf_Data *_dst, const Elf_Data *_src, unsigned int _encode); Elf_Data *gelf_xlatetom(Elf *_elf, Elf_Data *_dst, const Elf_Data *_src, unsigned int _encode); -#if __FreeBSD_version >= 700025 GElf_Cap *gelf_getcap(Elf_Data *_data, int _index, GElf_Cap *_cap); GElf_Move *gelf_getmove(Elf_Data *_src, int _index, GElf_Move *_dst); GElf_Syminfo *gelf_getsyminfo(Elf_Data *_src, int _index, GElf_Syminfo *_dst); int gelf_update_cap(Elf_Data *_dst, int _index, GElf_Cap *_src); int gelf_update_move(Elf_Data *_dst, int _index, GElf_Move *_src); int gelf_update_syminfo(Elf_Data *_dst, int _index, GElf_Syminfo *_src); -#endif __END_DECLS #endif /* _GELF_H_ */ ==== //depot/projects/dtrace6/src/lib/libelf/gelf_cap.c#3 (text+ko) ==== @@ -35,8 +35,6 @@ #include "_libelf.h" -#if __FreeBSD_version >= 700025 - GElf_Cap * gelf_getcap(Elf_Data *d, int ndx, GElf_Cap *dst) { @@ -146,5 +144,3 @@ return (1); } - -#endif /* __FreeBSD_version >= 700025 */ ==== //depot/projects/dtrace6/src/lib/libelf/gelf_move.c#3 (text+ko) ==== @@ -35,8 +35,6 @@ #include "_libelf.h" -#if __FreeBSD_version >= 700025 - GElf_Move * gelf_getmove(Elf_Data *d, int ndx, GElf_Move *dst) { @@ -153,4 +151,3 @@ return (1); } -#endif /* __FreeBSD_version >= 700025 */ ==== //depot/projects/dtrace6/src/lib/libelf/gelf_syminfo.c#3 (text+ko) ==== @@ -35,8 +35,6 @@ #include "_libelf.h" -#if __FreeBSD_version >= 700025 - GElf_Syminfo * gelf_getsyminfo(Elf_Data *d, int ndx, GElf_Syminfo *dst) { @@ -148,4 +146,3 @@ return (1); } -#endif /* __FreeBSD_version >= 700025 */ ==== //depot/projects/dtrace6/src/lib/libelf/libelf_align.c#3 (text+ko) ==== @@ -62,20 +62,14 @@ static struct align malign[ELF_T_NUM] = { [ELF_T_ADDR] = MALIGN(Addr), [ELF_T_BYTE] = { .a32 = 1, .a64 = 1 }, -#if __FreeBSD_version >= 700025 [ELF_T_CAP] = MALIGN(Cap), -#endif [ELF_T_DYN] = MALIGN(Dyn), [ELF_T_EHDR] = MALIGN(Ehdr), [ELF_T_HALF] = MALIGN(Half), -#if __FreeBSD_version >= 700025 [ELF_T_LWORD] = MALIGN(Lword), [ELF_T_MOVE] = MALIGN(Move), -#endif [ELF_T_MOVEP] = UNSUPPORTED(), -#if __FreeBSD_version >= 700025 [ELF_T_NOTE] = MALIGN(Nhdr), -#endif [ELF_T_OFF] = MALIGN(Off), [ELF_T_PHDR] = MALIGN(Phdr), [ELF_T_REL] = MALIGN(Rel), @@ -84,13 +78,9 @@ [ELF_T_SWORD] = MALIGN(Sword), [ELF_T_SXWORD] = MALIGN64(Sxword), [ELF_T_SYM] = MALIGN(Sym), -#if __FreeBSD_version >= 700025 [ELF_T_SYMINFO] = MALIGN(Syminfo), -#endif -#if __FreeBSD_version >= 700009 [ELF_T_VDEF] = MALIGN(Verdef), [ELF_T_VNEED] = MALIGN(Verneed), -#endif [ELF_T_WORD] = MALIGN(Word), [ELF_T_XWORD] = MALIGN64(Xword) }; @@ -110,20 +100,14 @@ static struct align falign[ELF_T_NUM] = { [ELF_T_ADDR] = FALIGN(4,8), [ELF_T_BYTE] = FALIGN(1,1), -#if __FreeBSD_version >= 700025 [ELF_T_CAP] = FALIGN(4,8), -#endif [ELF_T_DYN] = FALIGN(4,8), [ELF_T_EHDR] = FALIGN(4,8), [ELF_T_HALF] = FALIGN(2,2), -#if __FreeBSD_version >= 700025 [ELF_T_LWORD] = FALIGN(8,8), [ELF_T_MOVE] = FALIGN(8,8), -#endif [ELF_T_MOVEP] = UNSUPPORTED(), -#if __FreeBSD_version >= 700025 [ELF_T_NOTE] = FALIGN(1,1), -#endif [ELF_T_OFF] = FALIGN(4,8), [ELF_T_PHDR] = FALIGN(4,8), [ELF_T_REL] = FALIGN(4,8), @@ -132,13 +116,9 @@ [ELF_T_SWORD] = FALIGN(4,4), [ELF_T_SXWORD] = FALIGN(0,8), [ELF_T_SYM] = FALIGN(4,8), -#if __FreeBSD_version >= 700025 [ELF_T_SYMINFO] = FALIGN(2,2), -#endif -#if __FreeBSD_version >= 700009 [ELF_T_VDEF] = FALIGN(4,4), [ELF_T_VNEED] = FALIGN(4,4), -#endif [ELF_T_WORD] = FALIGN(4,4), [ELF_T_XWORD] = FALIGN(0,8) }; ==== //depot/projects/dtrace6/src/lib/libelf/libelf_convert.m4#3 (text+ko) ==== @@ -447,7 +447,7 @@ */ define(`MAKE_TYPE_CONVERTER', - `#if __FreeBSD_version >= $3 /* $1 */ + ` ifdef(`BASE'_$1, `ifdef(`IGNORE_'$1,`', `MAKEPRIM_TO_F($1,$2,`',64) @@ -461,7 +461,6 @@ MAKE_TO_F($1,$2,64)dnl MAKE_TO_M($1,$2,32)dnl MAKE_TO_M($1,$2,64)')') -#endif /* $1 */ ') define(`MAKE_TYPE_CONVERTERS', @@ -612,11 +611,10 @@ define(`CONVERTER_NAME', `ifdef(`IGNORE_'$1,`', - `#if __FreeBSD_version >= $3 + ` [ELF_T_$1] = { CONV($1,32,tof), CONV($1,32,tom), CONV($1,64,tof), CONV($1,64,tom) }, -#endif ')') define(`CONVERTER_NAMES', ==== //depot/projects/dtrace6/src/lib/libelf/libelf_data.c#3 (text+ko) ==== @@ -66,7 +66,6 @@ return (ELF_T_SYM); case SHT_SYMTAB_SHNDX: return (ELF_T_WORD); -#if __FreeBSD_version >= 700025 case SHT_GNU_verdef: /* == SHT_SUNW_verdef */ return (ELF_T_VDEF); case SHT_GNU_verneed: /* == SHT_SUNW_verneed */ @@ -77,7 +76,6 @@ return (ELF_T_MOVE); case SHT_SUNW_syminfo: return (ELF_T_SYMINFO); -#endif case SHT_AMD64_UNWIND: /* == SHT_IA_64_UNWIND */ return (ELF_T_BYTE); default: ==== //depot/projects/dtrace6/src/lib/libelf/libelf_fsize.m4#3 (text+ko) ==== @@ -115,9 +115,9 @@ DEFINE_ELF_FSIZE(`IDENT',`') # `IDENT' is a pseudo type define(`FSIZE', - `#if __FreeBSD_version >= $3 + ` [ELF_T_$1] = { .fsz32 = $1_SIZE32, .fsz64 = $1_SIZE64 }, -#endif') +') define(`FSIZES', `ifelse($#,1,`', `FSIZE($1) ==== //depot/projects/dtrace6/src/lib/libelf/libelf_msize.m4#3 (text+ko) ==== @@ -74,9 +74,9 @@ DEFINE_ELF_MSIZES(ELF_TYPE_LIST) define(`MSIZE', - `#if __FreeBSD_version >= $3 + ` [ELF_T_$1] = { .msz32 = $1_SIZE32, .msz64 = $1_SIZE64 }, -#endif') +') define(`MSIZES', `ifelse($#,1,`', `MSIZE($1) From jb at FreeBSD.org Wed Jun 4 03:12:57 2008 From: jb at FreeBSD.org (John Birrell) Date: Wed Jun 4 03:12:59 2008 Subject: PERFORCE change 142857 for review Message-ID: <200806040312.m543Cu6U079381@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142857 Change 142857 by jb@freebsd3 on 2008/06/04 03:12:39 Remove the OpenSolaris compatibility defintions to match current/7. Affected files ... .. //depot/projects/dtrace6/src/sys/sys/fcntl.h#4 edit .. //depot/projects/dtrace6/src/sys/sys/stat.h#3 edit .. //depot/projects/dtrace6/src/sys/sys/time.h#4 edit .. //depot/projects/dtrace6/src/sys/sys/types.h#3 edit Differences ... ==== //depot/projects/dtrace6/src/sys/sys/fcntl.h#4 (text+ko) ==== @@ -245,14 +245,6 @@ int flock(int, int); #endif -/* - * Solaris compatibility definitions. - */ -#ifdef _SOLARIS_C_SOURCE - -#define open64 open - -#endif __END_DECLS #endif ==== //depot/projects/dtrace6/src/sys/sys/stat.h#3 (text+ko) ==== @@ -304,14 +304,6 @@ #endif /* __BSD_VISIBLE */ -/* - * Solaris compatibility definitions. - */ -#ifdef _SOLARIS_C_SOURCE -#define stat64 stat -#define fstat64 fstat -#endif - #ifndef _KERNEL __BEGIN_DECLS #if __BSD_VISIBLE ==== //depot/projects/dtrace6/src/sys/sys/time.h#4 (text+ko) ==== @@ -314,27 +314,4 @@ #endif /* !_KERNEL */ -/* - * Solaris compatibility definitions. - */ -#ifdef _SOLARIS_C_SOURCE -/* - * Definitions for commonly used resolutions. - */ -#define SEC 1 -#define MILLISEC 1000 -#define MICROSEC 1000000 -#define NANOSEC 1000000000 - -typedef longlong_t hrtime_t; - -#ifndef _KERNEL -static __inline hrtime_t gethrtime(void) { - struct timespec ts; - clock_gettime(CLOCK_MONOTONIC,&ts); - return (((u_int64_t) ts.tv_sec) * NANOSEC + ts.tv_nsec); -} -#endif -#endif /* _SOLARIS_C_SOURCE */ - #endif /* !_SYS_TIME_H_ */ ==== //depot/projects/dtrace6/src/sys/sys/types.h#3 (text+ko) ==== @@ -291,36 +291,6 @@ #endif /* !_KERNEL */ /* - * Solaris compatibility definitions. - */ -#ifdef _SOLARIS_C_SOURCE -typedef u_int uint_t; -typedef u_char uchar_t; -typedef u_short ushort_t; -typedef u_long ulong_t; - -typedef long long longlong_t; -typedef unsigned long long u_longlong_t; - -typedef off_t off64_t; - -typedef id_t taskid_t; -typedef id_t projid_t; -typedef id_t poolid_t; -typedef id_t zoneid_t; -typedef id_t ctid_t; - -#ifndef _KERNEL -#if defined(__XOPEN_OR_POSIX) -typedef enum { _B_FALSE, _B_TRUE } boolean_t; -#else -typedef enum { B_FALSE, B_TRUE } boolean_t; -#endif /* defined(__XOPEN_OR_POSIX) */ -#endif - -#endif /* _SOLARIS_C_SOURCE */ - -/* * The following are all things that really shouldn't exist in this header, * since its purpose is to provide typedefs, not miscellaneous doodads. */ From jb at FreeBSD.org Wed Jun 4 03:13:58 2008 From: jb at FreeBSD.org (John Birrell) Date: Wed Jun 4 03:13:59 2008 Subject: PERFORCE change 142858 for review Message-ID: <200806040313.m543DvL6079531@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142858 Change 142858 by jb@freebsd3 on 2008/06/04 03:13:55 Add the lastest definitions to match current. Affected files ... .. //depot/projects/dtrace6/src/sys/sys/elf_common.h#4 edit Differences ... ==== //depot/projects/dtrace6/src/sys/sys/elf_common.h#4 (text+ko) ==== @@ -431,6 +431,9 @@ #define STV_INTERNAL 0x1 /* Special meaning in relocatable objects. */ #define STV_HIDDEN 0x2 /* Not visible. */ #define STV_PROTECTED 0x3 /* Visible but not preemptible. */ +#define STV_EXPORTED 0x4 +#define STV_SINGLETON 0x5 +#define STV_ELIMINATE 0x6 /* Special symbol table indexes. */ #define STN_UNDEF 0 /* Undefined symbol index. */ From jb at FreeBSD.org Wed Jun 4 03:14:59 2008 From: jb at FreeBSD.org (John Birrell) Date: Wed Jun 4 03:15:01 2008 Subject: PERFORCE change 142859 for review Message-ID: <200806040314.m543EwQY079670@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142859 Change 142859 by jb@freebsd3 on 2008/06/04 03:14:27 Remove the OpenSolaris compatibility definitions. Affected files ... .. //depot/projects/dtrace6/src/sys/sys/elf.h#2 edit Differences ... ==== //depot/projects/dtrace6/src/sys/sys/elf.h#2 (text+ko) ==== @@ -38,8 +38,4 @@ #include #include -#ifdef _SOLARIS_C_SOURCE -#include -#endif - #endif /* !_SYS_ELF_H_ */ From jb at FreeBSD.org Wed Jun 4 03:16:01 2008 From: jb at FreeBSD.org (John Birrell) Date: Wed Jun 4 03:16:05 2008 Subject: PERFORCE change 142860 for review Message-ID: <200806040316.m543G0f1079812@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142860 Change 142860 by jb@freebsd3 on 2008/06/04 03:14:59 Hook the DTrace kernel modules into the build. Affected files ... .. //depot/projects/dtrace6/src/sys/modules/Makefile#6 edit Differences ... ==== //depot/projects/dtrace6/src/sys/modules/Makefile#6 (text+ko) ==== @@ -72,6 +72,7 @@ ${_digi} \ ${_dpt} \ ${_drm} \ + ${_dtrace} \ dummynet \ ${_ed} \ ${_el} \ @@ -354,8 +355,14 @@ _coff= coff _cp= cp _cpufreq= cpufreq +.if !defined(NO_CDDL) || defined(ALL_MODULES) +_cyclic= cyclic +.endif _digi= digi _drm= drm +.if !defined(NO_CDDL) || defined(ALL_MODULES) +_dtrace= dtrace +.endif _ed= ed _elink= elink _em= em @@ -380,6 +387,9 @@ _nsp= nsp _nwfs= nwfs _oltr= oltr +.if !defined(NO_CDDL) || defined(ALL_MODULES) +_opensolaris= opensolaris +.endif _pccard= pccard _pcfclock= pcfclock _pecoff= pecoff @@ -468,8 +478,14 @@ _ciss= ciss _coretemp= coretemp _cpufreq= cpufreq +.if !defined(NO_CDDL) || defined(ALL_MODULES) +_cyclic= cyclic +.endif _digi= digi _drm= drm +.if !defined(NO_CDDL) || defined(ALL_MODULES) +_dtrace= dtrace +.endif _em= em _ext2fs= ext2fs _hptmv= hptmv @@ -489,6 +505,9 @@ _mxge= mxge _ndis= ndis _nve= nve +.if !defined(NO_CDDL) || defined(ALL_MODULES) +_opensolaris= opensolaris +.endif _ppc= ppc _rr232x= rr232x _safe= safe From jb at FreeBSD.org Wed Jun 4 03:16:01 2008 From: jb at FreeBSD.org (John Birrell) Date: Wed Jun 4 03:16:05 2008 Subject: PERFORCE change 142861 for review Message-ID: <200806040316.m543G0jD079817@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142861 Change 142861 by jb@freebsd3 on 2008/06/04 03:15:34 Fix a cut'n'paste error. Affected files ... .. //depot/projects/dtrace6/src/sys/kern/kern_proc.c#4 edit Differences ... ==== //depot/projects/dtrace6/src/sys/kern/kern_proc.c#4 (text+ko) ==== @@ -202,7 +202,7 @@ static void proc_fini(void *mem, int size) { - EVENTHANDLER_INVOKE(process_fini, p); + EVENTHANDLER_INVOKE(process_fini, mem); panic("proc reclaimed"); } From jb at FreeBSD.org Wed Jun 4 03:17:02 2008 From: jb at FreeBSD.org (John Birrell) Date: Wed Jun 4 03:17:05 2008 Subject: PERFORCE change 142862 for review Message-ID: <200806040317.m543H1Fr079880@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142862 Change 142862 by jb@freebsd3 on 2008/06/04 03:16:13 Update to match current/7. Affected files ... .. //depot/projects/dtrace6/src/share/mk/bsd.lib.mk#3 edit .. //depot/projects/dtrace6/src/share/mk/bsd.libnames.mk#2 edit .. //depot/projects/dtrace6/src/share/mk/bsd.prog.mk#3 edit .. //depot/projects/dtrace6/src/share/mk/sys.mk#4 edit Differences ... ==== //depot/projects/dtrace6/src/share/mk/bsd.lib.mk#3 (text+ko) ==== @@ -71,15 +71,9 @@ .cc.po .C.po .cpp.po .cxx.po: ${CXX} ${PO_FLAG} ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET} -.if defined(CTFCONVERT) - ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} -.endif .cc.So .C.So .cpp.So .cxx.So: ${CXX} ${PICFLAG} -DPIC ${CXXFLAGS} -c ${.IMPSRC} -o ${.TARGET} -.if defined(CTFCONVERT) - ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} -.endif .f.po: ${FC} -pg ${FFLAGS} -o ${.TARGET} -c ${.IMPSRC} ==== //depot/projects/dtrace6/src/share/mk/bsd.libnames.mk#2 (text+ko) ==== @@ -33,13 +33,17 @@ LIBCOMPAT?= ${DESTDIR}${LIBDIR}/libcompat.a LIBCRYPT?= ${DESTDIR}${LIBDIR}/libcrypt.a LIBCRYPTO?= ${DESTDIR}${LIBDIR}/libcrypto.a +LIBCTF?= ${DESTDIR}${LIBDIR}/libctf.a LIBCURSES?= ${DESTDIR}${LIBDIR}/libcurses.a LIBDEVINFO?= ${DESTDIR}${LIBDIR}/libdevinfo.a LIBDEVSTAT?= ${DESTDIR}${LIBDIR}/libdevstat.a LIBDIALOG?= ${DESTDIR}${LIBDIR}/libdialog.a LIBDISK?= ${DESTDIR}${LIBDIR}/libdisk.a LIBDNS?= ${DESTDIR}${LIBDIR}/libdns.a +LIBDTRACE?= ${DESTDIR}${LIBDIR}/libdtrace.a +LIBDWARF?= ${DESTDIR}${LIBDIR}/libdwarf.a LIBEDIT?= ${DESTDIR}${LIBDIR}/libedit.a +LIBELF?= ${DESTDIR}${LIBDIR}/libelf.a LIBFETCH?= ${DESTDIR}${LIBDIR}/libfetch.a LIBFL?= "don't use LIBFL, use LIBL" LIBFORM?= ${DESTDIR}${LIBDIR}/libform.a ==== //depot/projects/dtrace6/src/share/mk/bsd.prog.mk#3 (text+ko) ==== @@ -12,6 +12,10 @@ .if defined(DEBUG_FLAGS) CFLAGS+=${DEBUG_FLAGS} + +.if !defined(NO_CTF) && (${DEBUG_FLAGS:M-g} != "") +CTFFLAGS+= -g +.endif .endif .if defined(CRUNCH_CFLAGS) ==== //depot/projects/dtrace6/src/share/mk/sys.mk#4 (text+ko) ==== @@ -228,15 +228,9 @@ .cc .cpp .cxx .C: ${CXX} ${CXXFLAGS} ${LDFLAGS} ${.IMPSRC} ${LDLIBS} -o ${.TARGET} -.if defined(CTFCONVERT) - ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} -.endif .cc.o .cpp.o .cxx.o .C.o: ${CXX} ${CXXFLAGS} -c ${.IMPSRC} -.if defined(CTFCONVERT) - ${CTFCONVERT} ${CTFFLAGS} ${.TARGET} -.endif .m.o: ${OBJC} ${OBJCFLAGS} -c ${.IMPSRC} From jb at FreeBSD.org Wed Jun 4 03:17:02 2008 From: jb at FreeBSD.org (John Birrell) Date: Wed Jun 4 03:17:05 2008 Subject: PERFORCE change 142863 for review Message-ID: <200806040317.m543H1hh079885@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142863 Change 142863 by jb@freebsd3 on 2008/06/04 03:16:54 More OpenSolaris compatibility cleansing updates. Affected files ... .. //depot/projects/dtrace6/src/include/elf.h#3 edit .. //depot/projects/dtrace6/src/include/stdlib.h#3 edit .. //depot/projects/dtrace6/src/include/strings.h#3 edit .. //depot/projects/dtrace6/src/include/unistd.h#3 edit Differences ... ==== //depot/projects/dtrace6/src/include/elf.h#3 (text+ko) ==== @@ -38,8 +38,4 @@ #include #include -#ifdef _SOLARIS_C_SOURCE -#include -#endif - #endif /* !_ELF_H_ */ ==== //depot/projects/dtrace6/src/include/stdlib.h#3 (text+ko) ==== @@ -282,9 +282,6 @@ extern char *suboptarg; /* getsubopt(3) external variable */ #endif /* __BSD_VISIBLE */ -#ifdef _SOLARIS_C_SOURCE -#define getexecname getprogname -#endif __END_DECLS #endif /* !_STDLIB_H_ */ ==== //depot/projects/dtrace6/src/include/strings.h#3 (text+ko) ==== @@ -53,8 +53,4 @@ int strncasecmp(const char *, const char *, size_t) __pure; __END_DECLS -#ifdef _SOLARIS_C_SOURCE -#include -#endif - #endif /* _STRINGS_H_ */ ==== //depot/projects/dtrace6/src/include/unistd.h#3 (text+ko) ==== @@ -296,8 +296,6 @@ /* Extensions found in Solaris and Linux. */ #define _SC_PHYS_PAGES 121 -#define _SC_NPROCESSORS_MAX 122 -#define _SC_CPUID_MAX 123 /* Keys for the confstr(3) function. */ #if __POSIX_VISIBLE >= 199209 From jb at FreeBSD.org Wed Jun 4 03:18:03 2008 From: jb at FreeBSD.org (John Birrell) Date: Wed Jun 4 03:18:05 2008 Subject: PERFORCE change 142864 for review Message-ID: <200806040318.m543I2rE079968@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142864 Change 142864 by jb@freebsd3 on 2008/06/04 03:17:52 Fix a longjump/vfork variable clobber problem. Affected files ... .. //depot/projects/dtrace6/src/cddl/contrib/opensolaris/tools/ctf/cvt/st_parse.c#2 edit Differences ... ==== //depot/projects/dtrace6/src/cddl/contrib/opensolaris/tools/ctf/cvt/st_parse.c#2 (text) ==== @@ -402,8 +402,9 @@ } int -parse_stab(stab_t *stab, char *cp, iidesc_t **iidescp) +parse_stab(stab_t *stab, char *xcp, iidesc_t **iidescp) { + char *cp; iidesc_t *ii = NULL; iitype_t (*parse)(char *, iidesc_t *); int rc; @@ -414,7 +415,7 @@ if (setjmp(resetbuf)) return (-1); - cp = whitesp(cp); + cp = whitesp(xcp); ii = iidesc_new(NULL); cp = name(cp, &ii->ii_name); From jb at FreeBSD.org Wed Jun 4 03:19:04 2008 From: jb at FreeBSD.org (John Birrell) Date: Wed Jun 4 03:19:05 2008 Subject: PERFORCE change 142865 for review Message-ID: <200806040319.m543J3gK080035@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142865 Change 142865 by jb@freebsd3 on 2008/06/04 03:18:41 CLOCK_UPTIME was implemented in FreeBSD 7. Affected files ... .. //depot/projects/dtrace6/src/sys/cddl/compat/opensolaris/sys/time.h#2 edit Differences ... ==== //depot/projects/dtrace6/src/sys/cddl/compat/opensolaris/sys/time.h#2 (text+ko) ==== @@ -65,7 +65,7 @@ static __inline hrtime_t gethrtime(void) { struct timespec ts; - clock_gettime(CLOCK_UPTIME,&ts); + clock_gettime(CLOCK_MONOTONIC,&ts); return (((u_int64_t) ts.tv_sec) * NANOSEC + ts.tv_nsec); } From jb at FreeBSD.org Wed Jun 4 03:20:06 2008 From: jb at FreeBSD.org (John Birrell) Date: Wed Jun 4 03:20:09 2008 Subject: PERFORCE change 142866 for review Message-ID: <200806040320.m543K5aH080169@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142866 Change 142866 by jb@freebsd3 on 2008/06/04 03:19:08 Fix thread definitions to suit 6. Affected files ... .. //depot/projects/dtrace6/src/sys/cddl/compat/opensolaris/sys/proc.h#2 edit Differences ... ==== //depot/projects/dtrace6/src/sys/cddl/compat/opensolaris/sys/proc.h#2 (text+ko) ==== @@ -75,7 +75,7 @@ ASSERT(len == 0); ASSERT(state == TS_RUN); - error = kproc_create(proc, arg, &p, 0, ZFS_KSTACK_PAGES, + error = kthread_create(proc, arg, &p, 0, ZFS_KSTACK_PAGES, "solthread %p", proc); return (error == 0 ? FIRST_THREAD_IN_PROC(p) : NULL); } From jb at FreeBSD.org Wed Jun 4 03:20:06 2008 From: jb at FreeBSD.org (John Birrell) Date: Wed Jun 4 03:20:09 2008 Subject: PERFORCE change 142867 for review Message-ID: <200806040320.m543K5Zw080174@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142867 Change 142867 by jb@freebsd3 on 2008/06/04 03:19:33 NO_MAN on 6 instead on MK_MAN. Sigh. Affected files ... .. //depot/projects/dtrace6/src/cddl/usr.bin/ctfconvert/Makefile#4 edit .. //depot/projects/dtrace6/src/cddl/usr.bin/ctfmerge/Makefile#4 edit Differences ... ==== //depot/projects/dtrace6/src/cddl/usr.bin/ctfconvert/Makefile#4 (text+ko) ==== @@ -46,6 +46,6 @@ .PATH: ${OPENSOLARIS_USR_DISTDIR}/tools/ctf/common .PATH: ${OPENSOLARIS_USR_DISTDIR}/tools/ctf/cvt -MK_MAN= no +NO_MAN= .include ==== //depot/projects/dtrace6/src/cddl/usr.bin/ctfmerge/Makefile#4 (text+ko) ==== @@ -42,6 +42,6 @@ .PATH: ${OPENSOLARIS_USR_DISTDIR}/tools/ctf/common .PATH: ${OPENSOLARIS_USR_DISTDIR}/tools/ctf/cvt -MK_MAN= no +NO_MAN= .include From bilouro at freebsd.org Wed Jun 4 05:28:29 2008 From: bilouro at freebsd.org (Victor Hugo Bilouro) Date: Wed Jun 4 05:28:55 2008 Subject: PERFORCE change 142736 for review In-Reply-To: <4844581A.2040008@freebsd.org> References: <200806020715.m527F16Y091718@repoman.freebsd.org> <4843A49F.1050306@freebsd.org> <4844581A.2040008@freebsd.org> Message-ID: On Mon, Jun 2, 2008 at 5:29 PM, Sam Leffler wrote: > Andre Oppermann wrote: >> >> Victor Hugo Bilouro wrote: >>> >>> http://perforce.freebsd.org/chv.cgi?CH=142736 >>> >>> Change 142736 by bilouro@bilouro_tcptest on 2008/06/02 07:14:17 >>> >>> added some reminders >>> >>> Affected files ... >>> >>> .. //depot/projects/soc2008/bilouro_tcptest/TODO#2 edit >>> >>> Differences ... >>> >>> ==== //depot/projects/soc2008/bilouro_tcptest/TODO#2 (text+ko) ==== >>> >>> @@ -1,1 +1,11 @@ >>> -(1) manually establish a tcp connection using pcs >>> +use the last version of pcs >>> +rewrite connection establishment and finalization pcb-like oriented >>> +elicit with net@ some regression test suggested >> >> This is a good start to test the basic working of TCP: >> ftp://ftp.iol.unh.edu/pub/tcp/Core_TCP_Test_Suite_v0.3.pdf >> >> It describes a number of tests you could implement. We can certainly >> expand on it but so far it should keep you busy for a bit. ;-) >> > Here's a commercial product: > > http://www.iwl.com/maxwell-emulation/tcp-ip.html?Itemid=187 > > AWESOME!!! Both are so very much helpful!!! Thank you! best -- Victor Hugo Bilouro FreeBSD! From snb at FreeBSD.org Wed Jun 4 06:11:59 2008 From: snb at FreeBSD.org (Nick Barkas) Date: Wed Jun 4 06:12:00 2008 Subject: PERFORCE change 142872 for review Message-ID: <200806040611.m546BwSB013699@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142872 Change 142872 by snb@snb_unagi on 2008/06/04 06:11:02 UFS branch for dynamic dirhash memory allocation. Affected files ... .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/README.acls#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/README.extattr#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/acl.h#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/dinode.h#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/dir.h#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/dirhash.h#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/extattr.h#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/gjournal.h#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/inode.h#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/quota.h#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/ufs_acl.c#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/ufs_bmap.c#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/ufs_dirhash.c#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/ufs_extattr.c#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/ufs_extern.h#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/ufs_gjournal.c#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/ufs_inode.c#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/ufs_lookup.c#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/ufs_quota.c#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/ufs_vfsops.c#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/ufs_vnops.c#1 branch .. //depot/projects/soc2008/snb-dirhash/sys-ufs-ufs/ufsmount.h#1 branch Differences ... From weongyo at FreeBSD.org Wed Jun 4 12:10:01 2008 From: weongyo at FreeBSD.org (Weongyo Jeong) Date: Wed Jun 4 12:10:03 2008 Subject: PERFORCE change 142883 for review Message-ID: <200806041210.m54CA06E060803@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142883 Change 142883 by weongyo@weongyo_ws on 2008/06/04 12:09:43 Implement KeGetCurrentThread() and KeSetPriorityThread(). Affected files ... .. //depot/projects/ndisusb/sys/compat/ndis/ntoskrnl_var.h#3 edit .. //depot/projects/ndisusb/sys/compat/ndis/subr_ntoskrnl.c#3 edit Differences ... ==== //depot/projects/ndisusb/sys/compat/ndis/ntoskrnl_var.h#3 (text+ko) ==== @@ -534,6 +534,11 @@ #define WAITKEY_VALID 0x8000 +/* kthread priority */ +#define LOW_PRIORITY 0 +#define LOW_REALTIME_PRIORITY 16 +#define HIGH_PRIORITY 31 + struct thread_context { void *tc_thrctx; void *tc_thrfunc; ==== //depot/projects/ndisusb/sys/compat/ndis/subr_ntoskrnl.c#3 (text+ko) ==== @@ -249,6 +249,7 @@ static void DbgBreakPoint(void); static void KeBugCheckEx(uint32_t, u_long, u_long, u_long, u_long); static int32_t KeDelayExecutionThread(uint8_t, uint8_t, int64_t *); +static int32_t KeSetPriorityThread(struct thread *, int32_t); static void dummy(void); static struct mtx ntoskrnl_dispatchlock; @@ -4284,6 +4285,40 @@ return ticks * ((10000000 + hz - 1) / hz); } +static struct thread * +KeGetCurrentThread(void) +{ + + return curthread; +} + +static int32_t +KeSetPriorityThread(td, pri) + struct thread *td; + int32_t pri; +{ + int32_t old; + + if (td == NULL) + return LOW_REALTIME_PRIORITY; + + if (td->td_priority <= PRI_MIN_KERN) + old = HIGH_PRIORITY; + else if (td->td_priority >= PRI_MAX_KERN) + old = LOW_PRIORITY; + else + old = LOW_REALTIME_PRIORITY; + + if (pri == HIGH_PRIORITY) + sched_prio(td, PRI_MIN_KERN); + if (pri == LOW_REALTIME_PRIORITY) + sched_prio(td, PRI_MIN_KERN + (PRI_MAX_KERN - PRI_MIN_KERN) / 2); + if (pri == LOW_PRIORITY) + sched_prio(td, PRI_MAX_KERN); + + return old; +} + static void dummy() { @@ -4468,6 +4503,8 @@ IMPORT_CFUNC(KeTickCount, 0), IMPORT_SFUNC(KeDelayExecutionThread, 3), IMPORT_SFUNC(KeQueryInterruptTime, 0), + IMPORT_SFUNC(KeGetCurrentThread, 0), + IMPORT_SFUNC(KeSetPriorityThread, 2), /* * This last entry is a catch-all for any function we haven't From hselasky at FreeBSD.org Wed Jun 4 14:47:39 2008 From: hselasky at FreeBSD.org (Hans Petter Selasky) Date: Wed Jun 4 14:47:45 2008 Subject: PERFORCE change 142886 for review Message-ID: <200806041447.m54ElcaU088509@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142886 Change 142886 by hselasky@hselasky_laptop001 on 2008/06/04 14:46:58 New USB template for Message Transfer Protocol USB devices (MTP). Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_template_mtp.c#1 add Differences ... From strauss at FreeBSD.org Wed Jun 4 15:02:55 2008 From: strauss at FreeBSD.org (Anselm Strauss) Date: Wed Jun 4 15:03:00 2008 Subject: PERFORCE change 142887 for review Message-ID: <200806041502.m54F2s2U089627@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142887 Change 142887 by strauss@strauss_marvelman on 2008/06/04 15:02:22 - cleanup in last change was a bad idea, but good to learn how to back out already submitted changes in p4 Affected files ... .. //depot/projects/soc2008/strauss_libarchive/COPYING#6 add .. //depot/projects/soc2008/strauss_libarchive/NEWS#4 add .. //depot/projects/soc2008/strauss_libarchive/PROJECTS#3 add .. //depot/projects/soc2008/strauss_libarchive/README#6 add .. //depot/projects/soc2008/strauss_libarchive/autogen.sh#3 add .. //depot/projects/soc2008/strauss_libarchive/contrib/README#3 add .. //depot/projects/soc2008/strauss_libarchive/contrib/libarchive.1aix53.spec#3 add .. //depot/projects/soc2008/strauss_libarchive/contrib/libarchive.spec#3 add .. //depot/projects/soc2008/strauss_libarchive/contrib/libarchive_autodetect-st_lib_archive.m4#3 add .. //depot/projects/soc2008/strauss_libarchive/contrib/psota-benchmark/results.txt#3 add .. //depot/projects/soc2008/strauss_libarchive/contrib/psota-benchmark/tcp.sh#3 add .. //depot/projects/soc2008/strauss_libarchive/cpio/Makefile#5 add .. //depot/projects/soc2008/strauss_libarchive/cpio/test/Makefile#4 add .. //depot/projects/soc2008/strauss_libarchive/doc/mdoc2man.awk#3 add .. //depot/projects/soc2008/strauss_libarchive/doc/update.sh#3 add .. //depot/projects/soc2008/strauss_libarchive/examples/minitar/Makefile#3 add .. //depot/projects/soc2008/strauss_libarchive/libarchive/COPYING#3 add .. //depot/projects/soc2008/strauss_libarchive/libarchive/Makefile#5 add .. //depot/projects/soc2008/strauss_libarchive/libarchive/README#3 add .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/.cvsignore#3 add .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/Makefile#5 add .. //depot/projects/soc2008/strauss_libarchive/libarchive/test/README#3 add .. //depot/projects/soc2008/strauss_libarchive/release.sh#3 add .. //depot/projects/soc2008/strauss_libarchive/tar/COPYING#3 add .. //depot/projects/soc2008/strauss_libarchive/tar/Makefile#5 add .. //depot/projects/soc2008/strauss_libarchive/tar/test/Makefile#4 add .. //depot/projects/soc2008/strauss_libarchive/windows/mvcpp.nt#3 add .. //depot/projects/soc2008/strauss_libarchive/windows/wccpp.nt#3 add Differences ... From hselasky at FreeBSD.org Wed Jun 4 15:59:56 2008 From: hselasky at FreeBSD.org (Hans Petter Selasky) Date: Wed Jun 4 16:00:02 2008 Subject: PERFORCE change 142892 for review Message-ID: <200806041559.m54FxtgO095313@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142892 Change 142892 by hselasky@hselasky_laptop001 on 2008/06/04 15:59:13 USB Device Side Mode: Refactor the way endpoints are configured and reset. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#16 edit .. //depot/projects/usb/src/sys/dev/usb/usb_requests.c#21 edit .. //depot/projects/usb/src/sys/dev/usb/usb_subr.c#105 edit .. //depot/projects/usb/src/sys/dev/usb/usb_subr.h#103 edit .. //depot/projects/usb/src/sys/dev/usb/uss820_dci.c#11 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#16 (text+ko) ==== @@ -816,6 +816,8 @@ DPRINTFN(4, "real bus interrupt 0x%08x\n", status); if (status & AT91_UDP_INT_END_BR) { + + /* set correct state */ sc->sc_flags.status_bus_reset = 1; sc->sc_flags.status_suspend = 0; sc->sc_flags.change_suspend = 0; @@ -1305,20 +1307,21 @@ } static void -at9100_dci_reset_ep(struct usbd_device *udev, uint8_t ep_no) +at9100_dci_clear_stall_sub(struct at9100_dci_softc *sc, uint8_t ep_no, + uint8_t ep_type, uint8_t ep_dir) { - struct at9100_dci_softc *sc; const struct usbd_hw_ep_profile *pf; uint32_t csr_val; uint32_t temp; uint8_t csr_reg; uint8_t to; - /* get softc */ - sc = AT9100_DCI_BUS2SC(udev->bus); - + if (ep_type == UE_CONTROL) { + /* clearing stall is not needed */ + return; + } /* get endpoint profile */ - at9100_dci_get_hw_ep_profile(udev, &pf, ep_no); + at9100_dci_get_hw_ep_profile(NULL, &pf, ep_no); /* reset FIFO */ AT91_UDP_WRITE_4(sc, AT91_UDP_RST, AT91_UDP_RST_EP(ep_no)); @@ -1362,100 +1365,55 @@ AT91_CSR_ACK(csr_val, temp); AT91_UDP_WRITE_4(sc, csr_reg, csr_val); } - return; -} + + AT91_CSR_ACK(csr_val, 0); -static void -at9100_dci_clear_stall(struct usbd_device *udev, struct usbd_pipe *pipe) -{ - DPRINTFN(4, "pipe=%p\n", pipe); + /* enable endpoint */ + csr_val &= ~AT91_UDP_CSR_ET_MASK; + csr_val |= AT91_UDP_CSR_EPEDS; - mtx_assert(&(udev->bus->mtx), MA_OWNED); + if (ep_type == UE_CONTROL) { + csr_val |= AT91_UDP_CSR_ET_CTRL; + } else { + if (ep_type == UE_BULK) { + csr_val |= AT91_UDP_CSR_ET_BULK; + } else if (ep_type == UE_INTERRUPT) { + csr_val |= AT91_UDP_CSR_ET_INT; + } else { + csr_val |= AT91_UDP_CSR_ET_ISO; + } + if (ep_dir & UE_DIR_IN) { + csr_val |= AT91_UDP_CSR_ET_DIR_IN; + } + } - /* reset endpoint */ - at9100_dci_reset_ep(udev, - (pipe->edesc->bEndpointAddress & UE_ADDR)); + /* enable endpoint */ + AT91_UDP_WRITE_4(sc, AT91_UDP_CSR(ep_no), csr_val); return; } -/*------------------------------------------------------------------------* - * at9100_dci_set_config - * - * NOTE: Calling this function builds on the assumtion that - * you have a configuration that is valid ! - *------------------------------------------------------------------------*/ static void -at9100_dci_set_config(struct usbd_device *udev, - usb_config_descriptor_t *cd) +at9100_dci_clear_stall(struct usbd_device *udev, struct usbd_pipe *pipe) { struct at9100_dci_softc *sc; usb_endpoint_descriptor_t *ed; - uint32_t csr_val = 0; - uint8_t n; - uint8_t ep_type; - uint8_t ep_dir; + + DPRINTFN(4, "pipe=%p\n", pipe); mtx_assert(&(udev->bus->mtx), MA_OWNED); - if (udev->flags.usb_mode == USB_MODE_HOST) { - /* this is the Root HUB */ - return; - } + /* get softc */ sc = AT9100_DCI_BUS2SC(udev->bus); - AT91_CSR_ACK(csr_val, 0); - /* disable everything, but the control 0 endpoint */ + /* get endpoint descriptor */ + ed = pipe->edesc; - for (n = 1; n != AT91_UDP_EP_MAX; n++) { - - /* disable endpoint */ - AT91_UDP_WRITE_4(sc, AT91_UDP_CSR(n), csr_val); - - /* reset endpoint */ - at9100_dci_reset_ep(udev, n); - } - - if (cd == NULL) { - /* nothing more to do */ - return; - } - ed = NULL; - - /* enable all endpoints in the configuration */ - - while ((ed = (void *)usbd_desc_foreach(cd, (void *)ed))) { - - if ((ed->bDescriptorType != UDESC_ENDPOINT) || - (ed->bLength < sizeof(*ed))) { - continue; - } - /* enable endpoint */ - csr_val &= ~AT91_UDP_CSR_ET_MASK; - csr_val |= AT91_UDP_CSR_EPEDS; - - n = (ed->bEndpointAddress & UE_ADDR); - ep_type = (ed->bmAttributes & UE_XFERTYPE); - ep_dir = (ed->bEndpointAddress & (UE_DIR_IN | UE_DIR_OUT)); - - if (ep_type == UE_CONTROL) { - csr_val |= AT91_UDP_CSR_ET_CTRL; - } else { - if (ep_type == UE_BULK) { - csr_val |= AT91_UDP_CSR_ET_BULK; - } else if (ep_type == UE_INTERRUPT) { - csr_val |= AT91_UDP_CSR_ET_INT; - } else { - csr_val |= AT91_UDP_CSR_ET_ISO; - } - if (ep_dir & UE_DIR_IN) { - csr_val |= AT91_UDP_CSR_ET_DIR_IN; - } - } - - /* enable endpoint */ - AT91_UDP_WRITE_4(sc, AT91_UDP_CSR(n), csr_val); - } + /* reset endpoint */ + at9100_dci_clear_stall_sub(sc, + (ed->bEndpointAddress & UE_ADDR), + (ed->bEndpointAddress & (UE_DIR_IN | UE_DIR_OUT)), + (ed->bmAttributes & UE_XFERTYPE)); return; } @@ -1482,13 +1440,16 @@ DELAY(1000); /* disable and clear all interrupts */ + AT91_UDP_WRITE_4(sc, AT91_UDP_IDR, 0xFFFFFFFF); AT91_UDP_WRITE_4(sc, AT91_UDP_ICR, 0xFFFFFFFF); + /* compute default CSR value */ + csr_val = 0; AT91_CSR_ACK(csr_val, 0); - /* disable and reset all endpoints */ + /* disable all endpoints */ for (n = 0; n != AT91_UDP_EP_MAX; n++) { @@ -1496,6 +1457,15 @@ AT91_UDP_WRITE_4(sc, AT91_UDP_CSR(n), csr_val); } + /* enable the control endpoint */ + + AT91_CSR_ACK(csr_val, AT91_UDP_CSR_ET_CTRL | + AT91_UDP_CSR_EPEDS); + + /* write to FIFO control register */ + + AT91_UDP_WRITE_4(sc, AT91_UDP_CSR(0), csr_val); + /* enable the interrupts we want */ AT91_UDP_WRITE_4(sc, AT91_UDP_IER, AT91_UDP_INT_BUS); @@ -2283,14 +2253,6 @@ if (sc->sc_flags.status_vbus && sc->sc_flags.status_bus_reset) { - uint32_t csr = 0; - - /* enable the control endpoint */ - AT91_CSR_ACK(csr, AT91_UDP_CSR_ET_CTRL | - AT91_UDP_CSR_EPEDS); - /* write to FIFO control register */ - AT91_UDP_WRITE_4(sc, AT91_UDP_CSR(0), csr); - /* reset endpoint flags */ bzero(sc->sc_ep_flags, sizeof(sc->sc_ep_flags)); } @@ -2564,7 +2526,6 @@ .xfer_setup = &at9100_dci_xfer_setup, .xfer_unsetup = &at9100_dci_xfer_unsetup, .do_poll = &at9100_dci_do_poll, - .set_config = &at9100_dci_set_config, .get_hw_ep_profile = &at9100_dci_get_hw_ep_profile, .set_stall = &at9100_dci_set_stall, .clear_stall = &at9100_dci_clear_stall, ==== //depot/projects/usb/src/sys/dev/usb/usb_requests.c#21 (text+ko) ==== @@ -821,15 +821,6 @@ PRINTF(("setting config %d\n", conf)); - /* call "set_config" method, if any */ - - if (udev->bus->methods->set_config) { - mtx_lock(&(udev->bus->mtx)); - (udev->bus->methods->set_config) - (udev, (conf == USB_UNCONFIG_NO) ? - NULL : udev->cdesc); - mtx_unlock(&(udev->bus->mtx)); - } /* do "set configuration" request */ req.bmRequestType = UT_WRITE_DEVICE; ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.c#105 (text+ko) ==== @@ -580,9 +580,17 @@ /* the pipe is invalid: just return */ return; } + /* initialise USB pipe structure */ pipe->edesc = edesc; pipe->iface_index = iface_index; LIST_INIT(&pipe->list_head); + + /* clear stall, if any */ + if (udev->bus->methods->clear_stall) { + mtx_lock(&(udev->bus->mtx)); + (udev->bus->methods->clear_stall) (udev, pipe); + mtx_unlock(&(udev->bus->mtx)); + } return; } ==== //depot/projects/usb/src/sys/dev/usb/usb_subr.h#103 (text+ko) ==== @@ -205,10 +205,6 @@ void (*xfer_unsetup) (struct usbd_xfer *xfer); void (*get_dma_delay) (struct usbd_bus *, uint32_t *pdelay); - /* USB Device and Host mode - Optional */ - - void (*set_config) (struct usbd_device *udev, usb_config_descriptor_t *cd); - /* USB Device mode only - Mandatory */ void (*get_hw_ep_profile) (struct usbd_device *udev, const struct usbd_hw_ep_profile **ppf, uint8_t ep_addr); @@ -217,6 +213,7 @@ void (*rem_wakeup_set) (struct usbd_device *udev, uint8_t is_on); /* USB Device mode only - Optional */ + void (*vbus_interrupt) (struct usbd_bus *, uint8_t is_on); }; ==== //depot/projects/usb/src/sys/dev/usb/uss820_dci.c#11 (text+ko) ==== @@ -1287,27 +1287,13 @@ } static void -uss820_dci_clear_stall(struct usbd_device *udev, struct usbd_pipe *pipe) +uss820_dci_clear_stall_sub(struct uss820_dci_softc *sc, + uint8_t ep_no, uint8_t ep_type, uint8_t ep_dir) { - struct uss820_dci_softc *sc; - uint8_t ep_no; - uint8_t ep_type; - uint8_t ep_dir; uint8_t temp; - mtx_assert(&(udev->bus->mtx), MA_OWNED); - - DPRINTFN(4, "pipe=%p\n", pipe); - - /* reset pipe state */ - - sc = USS820_DCI_BUS2SC(udev->bus); - ep_no = (pipe->edesc->bEndpointAddress & UE_ADDR); - ep_dir = (pipe->edesc->bEndpointAddress & (UE_DIR_IN | UE_DIR_OUT)); - ep_type = (pipe->edesc->bmAttributes & UE_XFERTYPE); - if (ep_type == UE_CONTROL) { - /* should not happen */ + /* clearing stall is not needed */ return; } /* select endpoint index */ @@ -1351,149 +1337,33 @@ return; } -/*------------------------------------------------------------------------* - * uss820_dci_set_config - * - * NOTE: Calling this function builds on the assumtion that - * you have a configuration that is valid ! - *------------------------------------------------------------------------*/ static void -uss820_dci_set_config(struct usbd_device *udev, - usb_config_descriptor_t *cd) +uss820_dci_clear_stall(struct usbd_device *udev, struct usbd_pipe *pipe) { - const struct usbd_hw_ep_profile *pf; struct uss820_dci_softc *sc; usb_endpoint_descriptor_t *ed; - uint8_t n; - uint8_t ep_type; - uint8_t ep_dir; - uint8_t temp; mtx_assert(&(udev->bus->mtx), MA_OWNED); - if (udev->flags.usb_mode == USB_MODE_HOST) { - /* this is the Root HUB */ - return; - } - sc = USS820_DCI_BUS2SC(udev->bus); + DPRINTFN(4, "pipe=%p\n", pipe); - /* disable everything, but the control 0 endpoint */ + /* reset pipe state */ - for (n = 1; n != USS820_EP_MAX; n++) { + sc = USS820_DCI_BUS2SC(udev->bus); + ed = pipe->edesc; - /* select endpoint */ - USS820_WRITE_1(sc, USS820_EPINDEX, n); - - /* disable endpoint - both directions */ - uss820_dci_update_shared_1(sc, USS820_EPCON, 0, 0); - } - - if (cd == NULL) { - /* nothing more to do */ - return; - } - ed = NULL; - - /* enable all endpoints in the configuration */ - - while ((ed = (void *)usbd_desc_foreach(cd, (void *)ed))) { - - if ((ed->bDescriptorType != UDESC_ENDPOINT) || - (ed->bLength < sizeof(*ed))) { - continue; - } - n = (ed->bEndpointAddress & UE_ADDR); - ep_type = (ed->bmAttributes & UE_XFERTYPE); - ep_dir = (ed->bEndpointAddress & (UE_DIR_IN | UE_DIR_OUT)); - - uss820_dci_get_hw_ep_profile(udev, &pf, n); - - /* configure endpoint */ - - if (ep_type == UE_ISOCHRONOUS) { - if (pf->max_frame_size <= 64) { - temp = (USS820_TXCON_FFSZ_16_64 | - USS820_TXCON_TXISO | - USS820_TXCON_ATM); - } else if (pf->max_frame_size <= 256) { - temp = (USS820_TXCON_FFSZ_64_256 | - USS820_TXCON_TXISO | - USS820_TXCON_ATM); - } else if (pf->max_frame_size <= 512) { - temp = (USS820_TXCON_FFSZ_8_512 | - USS820_TXCON_TXISO | - USS820_TXCON_ATM); - } else { /* 1024 bytes */ - temp = (USS820_TXCON_FFSZ_32_1024 | - USS820_TXCON_TXISO | - USS820_TXCON_ATM); - } - } else { - if ((pf->max_frame_size <= 8) && - (sc->sc_flags.mcsr_feat)) { - temp = (USS820_TXCON_FFSZ_8_512 | - USS820_TXCON_ATM); - } else if (pf->max_frame_size <= 16) { - temp = (USS820_TXCON_FFSZ_16_64 | - USS820_TXCON_ATM); - } else if ((pf->max_frame_size <= 32) && - (sc->sc_flags.mcsr_feat)) { - temp = (USS820_TXCON_FFSZ_32_1024 | - USS820_TXCON_ATM); - } else { /* 64 bytes */ - temp = (USS820_TXCON_FFSZ_64_256 | - USS820_TXCON_ATM); - } - } - - USS820_WRITE_1(sc, USS820_EPINDEX, n); - - if ((ep_dir == UE_DIR_IN) || (ep_type == UE_CONTROL)) { - - if (ep_type != UE_CONTROL) { - /* reset data toggle */ - USS820_WRITE_1(sc, USS820_TXSTAT, - USS820_TXSTAT_TXSOVW); - } - /* configure endpoint */ - USS820_WRITE_1(sc, USS820_TXCON, temp | - USS820_TXCON_TXCLR); - USS820_WRITE_1(sc, USS820_TXCON, temp); - } - if ((ep_dir == UE_DIR_OUT) || (ep_type == UE_CONTROL)) { + uss820_dci_clear_stall_sub(sc, + (ed->bEndpointAddress & UE_ADDR), + (ed->bEndpointAddress & (UE_DIR_IN | UE_DIR_OUT)), + (ed->bmAttributes & UE_XFERTYPE)); - if (ep_type != UE_CONTROL) { - /* reset data toggle */ - uss820_dci_update_shared_1(sc, USS820_RXSTAT, - 0, USS820_RXSTAT_RXSOVW); - } - /* configure endpoint */ - USS820_WRITE_1(sc, USS820_RXCON, temp | - USS820_RXCON_RXCLR); - USS820_WRITE_1(sc, USS820_RXCON, temp); - } - /* enable endpoint */ - if (ep_type == UE_CONTROL) { - temp = (USS820_EPCON_CTLEP | - USS820_EPCON_RXSPM | - USS820_EPCON_RXEPEN | - USS820_EPCON_TXEPEN); - } else { - if (ep_dir == UE_DIR_IN) { - temp = USS820_EPCON_TXEPEN; - } else { - temp = USS820_EPCON_RXEPEN; - } - } - - uss820_dci_update_shared_1(sc, USS820_EPCON, 0xFF, temp); - } return; } usbd_status_t uss820_dci_init(struct uss820_dci_softc *sc) { + const struct usbd_hw_ep_profile *pf; uint8_t n; uint8_t temp; @@ -1577,6 +1447,70 @@ uss820_dci_update_shared_1(sc, USS820_EPCON, 0, 0); } + /* + * Initialise default values for some registers that cannot be + * changed during operation! + */ + for (n = 0; n != USS820_EP_MAX; n++) { + + uss820_dci_get_hw_ep_profile(NULL, &pf, n); + + if (pf->support_isochronous) { + if (pf->max_frame_size <= 64) { + temp = (USS820_TXCON_FFSZ_16_64 | + USS820_TXCON_TXISO | + USS820_TXCON_ATM); + } else if (pf->max_frame_size <= 256) { + temp = (USS820_TXCON_FFSZ_64_256 | + USS820_TXCON_TXISO | + USS820_TXCON_ATM); + } else if (pf->max_frame_size <= 512) { + temp = (USS820_TXCON_FFSZ_8_512 | + USS820_TXCON_TXISO | + USS820_TXCON_ATM); + } else { /* 1024 bytes */ + temp = (USS820_TXCON_FFSZ_32_1024 | + USS820_TXCON_TXISO | + USS820_TXCON_ATM); + } + } else { + if ((pf->max_frame_size <= 8) && + (sc->sc_flags.mcsr_feat)) { + temp = (USS820_TXCON_FFSZ_8_512 | + USS820_TXCON_ATM); + } else if (pf->max_frame_size <= 16) { + temp = (USS820_TXCON_FFSZ_16_64 | + USS820_TXCON_ATM); + } else if ((pf->max_frame_size <= 32) && + (sc->sc_flags.mcsr_feat)) { + temp = (USS820_TXCON_FFSZ_32_1024 | + USS820_TXCON_ATM); + } else { /* 64 bytes */ + temp = (USS820_TXCON_FFSZ_64_256 | + USS820_TXCON_ATM); + } + } + + /* need to configure the chip early */ + + USS820_WRITE_1(sc, USS820_EPINDEX, n); + USS820_WRITE_1(sc, USS820_TXCON, temp); + USS820_WRITE_1(sc, USS820_RXCON, temp); + + if (pf->support_control) { + temp = USS820_EPCON_CTLEP | + USS820_EPCON_RXSPM | + USS820_EPCON_RXIE | + USS820_EPCON_RXEPEN | + USS820_EPCON_TXOE | + USS820_EPCON_TXEPEN; + } else { + temp = USS820_EPCON_RXEPEN | USS820_EPCON_TXEPEN; + } + + uss820_dci_update_shared_1(sc, USS820_EPCON, 0xFF, temp); + } + mtx_unlock(&(sc->sc_bus.mtx)); /* catch any lost interrupts */ @@ -2352,56 +2286,6 @@ if (sc->sc_flags.change_connect) { value |= UPS_C_CONNECT_STATUS; - - if (sc->sc_flags.status_vbus && - sc->sc_flags.status_bus_reset) { - - const struct usbd_hw_ep_profile *pf; - uint8_t temp; - - uss820_dci_get_hw_ep_profile(xfer->udev, &pf, 0); - - /* select endpoint */ - USS820_WRITE_1(sc, USS820_EPINDEX, 0); - - if ((pf->max_frame_size <= 8) && - (sc->sc_flags.mcsr_feat)) { - temp = (USS820_TXCON_FFSZ_8_512 | - USS820_TXCON_ATM); - } else if (pf->max_frame_size <= 16) { - temp = (USS820_TXCON_FFSZ_16_64 | - USS820_TXCON_ATM); - } else if ((pf->max_frame_size <= 32) && - (sc->sc_flags.mcsr_feat)) { - temp = (USS820_TXCON_FFSZ_32_1024 | - USS820_TXCON_ATM); - } else { /* 64 bytes */ - temp = (USS820_TXCON_FFSZ_64_256 | - USS820_TXCON_ATM); - } - - /* configure endpoint */ - USS820_WRITE_1(sc, USS820_TXCON, temp | - USS820_TXCON_TXCLR); - USS820_WRITE_1(sc, USS820_TXCON, temp); - - /* configure endpoint */ - USS820_WRITE_1(sc, USS820_RXCON, temp | - USS820_RXCON_RXCLR); - USS820_WRITE_1(sc, USS820_RXCON, temp); - - /* enable control endpoint */ - uss820_dci_update_shared_1(sc, USS820_EPCON, 0, - (USS820_EPCON_CTLEP | - USS820_EPCON_RXSPM | - USS820_EPCON_RXIE | - USS820_EPCON_RXEPEN | - USS820_EPCON_TXOE | - USS820_EPCON_TXEPEN)); - - /* disable all other endpoints */ - uss820_dci_set_config(xfer->udev, NULL); - } } if (sc->sc_flags.change_suspend) { value |= UPS_C_SUSPEND; @@ -2686,7 +2570,6 @@ .xfer_setup = &uss820_dci_xfer_setup, .xfer_unsetup = &uss820_dci_xfer_unsetup, .do_poll = &uss820_dci_do_poll, - .set_config = &uss820_dci_set_config, .get_hw_ep_profile = &uss820_dci_get_hw_ep_profile, .set_stall = &uss820_dci_set_stall, .clear_stall = &uss820_dci_clear_stall, From hselasky at FreeBSD.org Wed Jun 4 16:20:17 2008 From: hselasky at FreeBSD.org (Hans Petter Selasky) Date: Wed Jun 4 16:20:20 2008 Subject: PERFORCE change 142894 for review Message-ID: <200806041620.m54GKGJm098114@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142894 Change 142894 by hselasky@hselasky_laptop001 on 2008/06/04 16:19:51 USB Device Side Mode: Make sure that non-interface specific control endpint messages gets broadcasted. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#125 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/usb_transfer.c#125 (text+ko) ==== @@ -3380,6 +3380,7 @@ uint16_t wValue; uint16_t wIndex; uint8_t state; + uint8_t iface_index; union { uWord wStatus; uint8_t buf[2]; @@ -3528,13 +3529,15 @@ } break; default: + if (state == ST_DATA) { + goto tr_bad_context; + } if ((req.bmRequestType & 0x1F) == UT_INTERFACE) { - if (state == ST_DATA) { - goto tr_bad_context; - } - goto tr_handle_iface_request; + iface_index = req.wIndex[0]; /* unicast */ + } else { + iface_index = 0;/* broadcast */ } - goto tr_stalled; + goto tr_handle_iface_request; } goto tr_valid; @@ -3641,7 +3644,7 @@ goto tr_valid; tr_handle_iface_request: - iface = usbd_get_iface(udev, req.wIndex[0]); + iface = usbd_get_iface(udev, iface_index); if (iface == NULL) { goto tr_stalled; } @@ -3672,6 +3675,10 @@ goto tr_handle_iface_request_builtin; tr_handle_iface_request_builtin: + if ((req.bmRequestType & 0x1F) != UT_INTERFACE) { + iface_index++; /* iterate */ + goto tr_handle_iface_request; + } switch (req.bmRequestType) { case UT_WRITE_INTERFACE: switch (req.bRequest) { @@ -3722,6 +3729,8 @@ goto tr_stalled; } break; + default: + goto tr_stalled; } goto tr_valid; From ed at FreeBSD.org Wed Jun 4 18:33:33 2008 From: ed at FreeBSD.org (Ed Schouten) Date: Wed Jun 4 18:33:35 2008 Subject: PERFORCE change 142898 for review Message-ID: <200806041833.m54IXVO6027895@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142898 Change 142898 by ed@ed_dull on 2008/06/04 18:33:09 I can't delete ed_xbox anymore, because it still has an open changeset. Affected files ... .. //depot/doc/obliterate#18 edit Differences ... ==== //depot/doc/obliterate#18 (text+ko) ==== @@ -23,4 +23,4 @@ //depot/user/julian/rmkseg # clients: gnagelhout silby_patrocles -# dead machines: njl_mrspecial mharvan_twoflower imp_marvin imp_Speedy imp_hondo philip_loge philip_fasolt +# dead machines: njl_mrspecial mharvan_twoflower imp_marvin imp_Speedy imp_hondo philip_loge philip_fasolt ed_xbox From gk at FreeBSD.org Wed Jun 4 18:43:43 2008 From: gk at FreeBSD.org (Gleb Kurtsou) Date: Wed Jun 4 18:43:45 2008 Subject: PERFORCE change 142900 for review Message-ID: <200806041843.m54IhgZH029342@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142900 Change 142900 by gk@gk_h1 on 2008/06/04 18:43:03 introduce interface flags IFF_L2FILTER, IFF_L2TAG IFF_L2FILTER - perform layer2 filtering on interface IFF_L2TAG - add tag containing ethernet header to mbuf support flags in ifconfig Affected files ... .. //depot/projects/soc2008/gk_l2filter/sbin-ifconfig/ifconfig.c#2 edit .. //depot/projects/soc2008/gk_l2filter/sys-net/if.h#2 edit .. //depot/projects/soc2008/gk_l2filter/sys-net/if_bridge.c#3 edit .. //depot/projects/soc2008/gk_l2filter/sys-net/if_ethersubr.c#3 edit .. //depot/projects/soc2008/gk_l2filter/sys-netinet/ip_fw_pfil.c#5 edit Differences ... ==== //depot/projects/soc2008/gk_l2filter/sbin-ifconfig/ifconfig.c#2 (text+ko) ==== @@ -772,7 +772,7 @@ #define IFFBITS \ "\020\1UP\2BROADCAST\3DEBUG\4LOOPBACK\5POINTOPOINT\6SMART\7RUNNING" \ "\10NOARP\11PROMISC\12ALLMULTI\13OACTIVE\14SIMPLEX\15LINK0\16LINK1\17LINK2" \ -"\20MULTICAST\22PPROMISC\23MONITOR\24STATICARP\25NEEDSGIANT" +"\20MULTICAST\22PPROMISC\23MONITOR\24STATICARP\25NEEDSGIANT\26L2FILTER\27L2TAG" #define IFCAPBITS \ "\020\1RXCSUM\2TXCSUM\3NETCONS\4VLAN_MTU\5VLAN_HWTAGGING\6JUMBO_MTU\7POLLING" \ @@ -1009,6 +1009,10 @@ DEF_CMD("-monitor", -IFF_MONITOR, setifflags), DEF_CMD("staticarp", IFF_STATICARP, setifflags), DEF_CMD("-staticarp", -IFF_STATICARP, setifflags), + DEF_CMD("l2filter", IFF_L2FILTER, setifflags), + DEF_CMD("-l2filter", -IFF_L2FILTER, setifflags), + DEF_CMD("l2tag", IFF_L2TAG, setifflags), + DEF_CMD("-l2tag", -IFF_L2TAG, setifflags), DEF_CMD("rxcsum", IFCAP_RXCSUM, setifcap), DEF_CMD("-rxcsum", -IFCAP_RXCSUM, setifcap), DEF_CMD("txcsum", IFCAP_TXCSUM, setifcap), ==== //depot/projects/soc2008/gk_l2filter/sys-net/if.h#2 (text+ko) ==== @@ -150,6 +150,8 @@ #define IFF_MONITOR 0x40000 /* (n) user-requested monitor mode */ #define IFF_STATICARP 0x80000 /* (n) static ARP */ #define IFF_NEEDSGIANT 0x100000 /* (i) hold Giant over if_start calls */ +#define IFF_L2FILTER 0x200000 /* (n) perform layer2 filtering on interface */ +#define IFF_L2TAG 0x400000 /* (n) tag packets with layer2 header */ /* * Old names for driver flags so that user space tools can continue to use ==== //depot/projects/soc2008/gk_l2filter/sys-net/if_bridge.c#3 (text+ko) ==== @@ -339,16 +339,12 @@ static int pfil_onlyip = 1; /* only pass IP[46] packets when pfil is enabled */ static int pfil_bridge = 1; /* run pfil hooks on the bridge interface */ static int pfil_member = 1; /* run pfil hooks on the member interface */ -/* GK_XXX should be if flag */ -static int pfil_layer2 = 0; /* layer2 filter with PFIL */ static int pfil_layer2_arp = 0; /* layer2 filter with PFIL */ static int pfil_local_phys = 0; /* run pfil hooks on the physical interface for locally destined packets */ static int log_stp = 0; /* log STP state changes */ SYSCTL_INT(_net_link_bridge, OID_AUTO, pfil_onlyip, CTLFLAG_RW, &pfil_onlyip, 0, "Only pass IP packets when pfil is enabled"); -SYSCTL_INT(_net_link_bridge, OID_AUTO, pfil_layer2, CTLFLAG_RW, - &pfil_layer2, 0, "Filter packets through PFIL layer2"); SYSCTL_INT(_net_link_bridge, OID_AUTO, pfil_layer2_arp, CTLFLAG_RW, &pfil_layer2_arp, 0, "Filter ARP packets through PFIL layer2"); SYSCTL_INT(_net_link_bridge, OID_AUTO, pfil_bridge, CTLFLAG_RW, @@ -1710,7 +1706,7 @@ return; } - if (PFIL_HOOKED(ðer_pfil_hook) && pfil_layer2 != 0) { + if (PFIL_HOOKED(ðer_pfil_hook)) { if (bridge_pfil(&m, sc->sc_ifp, ifp, PFIL_OUT) != 0) return; if (m == NULL) @@ -2852,7 +2848,7 @@ KASSERT(M_WRITABLE(*mp), ("%s: modifying a shared mbuf", __func__)); #endif - if (pfil_bridge == 0 && pfil_member == 0 && pfil_layer2 == 0) + if (pfil_bridge == 0 && pfil_member == 0 && (ifp->if_flags & IFF_L2FILTER) == 0) return (0); /* filtering is disabled */ i = min((*mp)->m_pkthdr.len, max_protohdr); @@ -2913,8 +2909,8 @@ goto bad; } - /* GK_XXX */ - if (PFIL_HOOKED(ðer_pfil_hook) && pfil_layer2 != 0 && dir == PFIL_OUT && ifp != NULL) { + if (PFIL_HOOKED(ðer_pfil_hook) && (ifp->if_flags & IFF_L2FILTER) && + dir == PFIL_OUT && ifp != NULL) { if (pfil_run_hooks(ðer_pfil_hook, mp, ifp, PFIL_OUT, NULL) != 0) return EACCES; } @@ -2951,14 +2947,12 @@ error = 0; - /* GK_XXX */ - /* - * XXX: conditionally allocate mtag - */ - mtag_ether_header = m_tag_alloc(MTAG_ETHER, MTAG_ETHER_HEADER, ETHER_HDR_LEN, M_NOWAIT); - if (mtag_ether_header != NULL) { - memcpy(mtag_ether_header + 1, &eh2, ETHER_HDR_LEN); - m_tag_prepend(*mp, mtag_ether_header); + if (ifp->if_flags & IFF_L2TAG) { + mtag_ether_header = m_tag_alloc(MTAG_ETHER, MTAG_ETHER_HEADER, ETHER_HDR_LEN, M_NOWAIT); + if (mtag_ether_header != NULL) { + memcpy(mtag_ether_header + 1, &eh2, ETHER_HDR_LEN); + m_tag_prepend(*mp, mtag_ether_header); + } } /* ==== //depot/projects/soc2008/gk_l2filter/sys-net/if_ethersubr.c#3 (text+ko) ==== @@ -381,8 +381,7 @@ { int error = 0; - /* GK_XXX */ - if (PFIL_HOOKED(ðer_pfil_hook)) + if (PFIL_HOOKED(ðer_pfil_hook) && (ifp->if_flags & IFF_L2FILTER)) error = pfil_run_hooks(ðer_pfil_hook, &m, ifp, PFIL_OUT, NULL); if (m == NULL) return 0; /* consumed e.g. in a pipe */ @@ -605,8 +604,8 @@ * Allow pfil to claim the frame. * Do not do this for PROMISC frames in case we are re-entered. */ - /* GK_XXX */ - if (PFIL_HOOKED(ðer_pfil_hook) && !(m->m_flags & M_PROMISC)) { + if (PFIL_HOOKED(ðer_pfil_hook) && (ifp->if_flags & IFF_L2FILTER) && + !(m->m_flags & M_PROMISC)) { if (pfil_run_hooks(ðer_pfil_hook, &m, ifp, PFIL_IN, NULL) != 0) return; } @@ -641,13 +640,12 @@ return; } - /* - * XXX: conditionally allocate mtag - */ - mtag_ether_header = m_tag_alloc(MTAG_ETHER, MTAG_ETHER_HEADER, ETHER_HDR_LEN, M_NOWAIT); - if (mtag_ether_header != NULL) { - memcpy(mtag_ether_header + 1, eh, ETHER_HDR_LEN); - m_tag_prepend(m, mtag_ether_header); + if (ifp->if_flags & IFF_L2TAG) { + mtag_ether_header = m_tag_alloc(MTAG_ETHER, MTAG_ETHER_HEADER, ETHER_HDR_LEN, M_NOWAIT); + if (mtag_ether_header != NULL) { + memcpy(mtag_ether_header + 1, eh, ETHER_HDR_LEN); + m_tag_prepend(m, mtag_ether_header); + } } /* ==== //depot/projects/soc2008/gk_l2filter/sys-netinet/ip_fw_pfil.c#5 (text+ko) ==== @@ -449,13 +449,6 @@ return 0; /* packet already partially processed */ args.m = *m0; - /* - args.oif = ifp; - */ - /* GK_XXX */ - /* - * perform layer2 filtering only - */ args.flags = IP_FW_ARGS_LAYER2; args.eh = mtod(*m0, struct ether_header *); args.inp = inp; @@ -502,10 +495,6 @@ args.m = *m0; args.oif = ifp; - /* GK_XXX */ - /* - * perform layer2 filtering only - */ args.flags = IP_FW_ARGS_LAYER2; args.eh = mtod(*m0, struct ether_header *); args.inp = inp; From piso at FreeBSD.org Wed Jun 4 18:57:59 2008 From: piso at FreeBSD.org (Paolo Pisati) Date: Wed Jun 4 18:58:07 2008 Subject: PERFORCE change 142901 for review Message-ID: <200806041857.m54Ivv4Y030418@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142901 Change 142901 by piso@piso_newluxor on 2008/06/04 18:57:41 MFC@142897 Affected files ... .. //depot/projects/soc2005/libalias/MAINTAINERS#11 integrate .. //depot/projects/soc2005/libalias/ObsoleteFiles.inc#32 integrate .. //depot/projects/soc2005/libalias/UPDATING#28 integrate .. //depot/projects/soc2005/libalias/bin/sh/parser.c#5 integrate .. //depot/projects/soc2005/libalias/contrib/binutils/bfd/coff-mips.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/bfd/cpu-mips.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/bfd/elf32-mips.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/bfd/elf64-mips.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/bfd/elfn32-mips.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/bfd/elfxx-mips.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/bfd/elfxx-mips.h#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/bfd/hosts/mipsbsd.h#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/bfd/hosts/mipsmach3.h#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/bfd/hosts/news-mips.h#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/bfd/mipsbsd.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/bfd/pe-mips.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/bfd/pei-mips.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/gas/config/e-mipsecoff.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/gas/config/e-mipself.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/gas/config/itbl-mips.h#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/gas/config/tc-mips.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/gas/config/tc-mips.h#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/gas/config/te-tmips.h#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/gas/doc/c-mips.texi#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/gprof/mips.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/include/coff/mips.h#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/include/coff/mipspe.h#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/include/opcode/mips.h#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/elf32bmipn32-defs.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/elf32btsmip.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/elf32btsmipn32.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/elf32ltsmip.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/elf32ltsmipn32.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/elf32mipswindiss.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/elf64btsmip.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/elf64ltsmip.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/mipsbig.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/mipsbsd.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/mipsidt.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/mipsidtl.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/mipslit.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/mipslnews.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emulparams/mipspe.sh#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emultempl/mipsecoff.em#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/emultempl/mipself.em#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/scripttempl/mips.sc#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/ld/scripttempl/mipsbsd.sc#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/opcodes/mips-dis.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/opcodes/mips-opc.c#1 branch .. //depot/projects/soc2005/libalias/contrib/binutils/opcodes/mips16-opc.c#1 branch .. //depot/projects/soc2005/libalias/contrib/ncurses/FREEBSD-vendor#3 integrate .. //depot/projects/soc2005/libalias/etc/defaults/bluetooth.device.conf#2 integrate .. //depot/projects/soc2005/libalias/games/fortune/datfiles/freebsd-tips#5 integrate .. //depot/projects/soc2005/libalias/lib/libc/sys/Symbol.map#11 integrate .. //depot/projects/soc2005/libalias/lib/libc/sys/fcntl.c#2 integrate .. //depot/projects/soc2005/libalias/lib/libc_r/uthread/uthread_fcntl.c#3 integrate .. //depot/projects/soc2005/libalias/lib/libkse/thread/thr_fcntl.c#3 integrate .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_init.c#13 integrate .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_mutex.c#14 integrate .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_once.c#3 integrate .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_private.h#16 integrate .. //depot/projects/soc2005/libalias/lib/libthr/thread/thr_syscalls.c#6 integrate .. //depot/projects/soc2005/libalias/release/doc/en_US.ISO8859-1/readme/article.sgml#5 integrate .. //depot/projects/soc2005/libalias/release/doc/en_US.ISO8859-1/relnotes/article.sgml#15 integrate .. //depot/projects/soc2005/libalias/release/doc/share/sgml/release.ent#6 integrate .. //depot/projects/soc2005/libalias/sbin/mount/mount.8#8 integrate .. //depot/projects/soc2005/libalias/sbin/ping6/ping6.8#3 integrate .. //depot/projects/soc2005/libalias/sbin/ping6/ping6.c#5 integrate .. //depot/projects/soc2005/libalias/share/man/man4/snd_emu10kx.4#5 integrate .. //depot/projects/soc2005/libalias/share/man/man4/ubsa.4#6 integrate .. //depot/projects/soc2005/libalias/share/man/man5/bluetooth.device.conf.5#4 integrate .. //depot/projects/soc2005/libalias/share/sendmail/Makefile#2 integrate .. //depot/projects/soc2005/libalias/share/syscons/keymaps/INDEX.keymaps#4 integrate .. //depot/projects/soc2005/libalias/share/syscons/keymaps/Makefile#4 integrate .. //depot/projects/soc2005/libalias/share/syscons/keymaps/colemak.iso15.acc.kbd#1 branch .. //depot/projects/soc2005/libalias/sys/amd64/amd64/pmap.c#23 integrate .. //depot/projects/soc2005/libalias/sys/arm/at91/at91_twi.c#8 integrate .. //depot/projects/soc2005/libalias/sys/cddl/contrib/opensolaris/uts/common/dtrace/dtrace.c#3 integrate .. //depot/projects/soc2005/libalias/sys/cddl/contrib/opensolaris/uts/common/sys/dtrace_impl.h#2 integrate .. //depot/projects/soc2005/libalias/sys/compat/linux/linux_mib.c#4 integrate .. //depot/projects/soc2005/libalias/sys/compat/linux/linux_stats.c#9 integrate .. //depot/projects/soc2005/libalias/sys/compat/linux/linux_util.c#5 integrate .. //depot/projects/soc2005/libalias/sys/compat/ndis/subr_ntoskrnl.c#6 edit .. //depot/projects/soc2005/libalias/sys/dev/ath/ah_osdep.h#4 integrate .. //depot/projects/soc2005/libalias/sys/dev/ath/if_ath.c#18 integrate .. //depot/projects/soc2005/libalias/sys/dev/ath/if_athvar.h#13 integrate .. //depot/projects/soc2005/libalias/sys/dev/atkbdc/psm.c#8 integrate .. //depot/projects/soc2005/libalias/sys/dev/bce/if_bce.c#19 integrate .. //depot/projects/soc2005/libalias/sys/dev/cnw/if_cnw.c#4 integrate .. //depot/projects/soc2005/libalias/sys/dev/cs/if_cs.c#3 integrate .. //depot/projects/soc2005/libalias/sys/dev/fe/if_fe.c#4 integrate .. //depot/projects/soc2005/libalias/sys/dev/fe/if_fe_pccard.c#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/fe/if_fevar.h#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/ie/if_ie.c#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/ie/if_ie_isa.c#3 integrate .. //depot/projects/soc2005/libalias/sys/dev/ie/if_ievar.h#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/ieee488/upd7210.c#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/if_ndis/if_ndis.c#11 integrate .. //depot/projects/soc2005/libalias/sys/dev/if_ndis/if_ndisvar.h#6 integrate .. //depot/projects/soc2005/libalias/sys/dev/led/led.c#3 integrate .. //depot/projects/soc2005/libalias/sys/dev/md/md.c#8 integrate .. //depot/projects/soc2005/libalias/sys/dev/mfi/mfi.c#18 integrate .. //depot/projects/soc2005/libalias/sys/dev/mfi/mfi_ioctl.h#6 integrate .. //depot/projects/soc2005/libalias/sys/dev/nve/if_nve.c#6 integrate .. //depot/projects/soc2005/libalias/sys/dev/nve/if_nvereg.h#3 integrate .. //depot/projects/soc2005/libalias/sys/dev/pccard/pccard_cis.c#4 integrate .. //depot/projects/soc2005/libalias/sys/dev/puc/pucdata.c#7 integrate .. //depot/projects/soc2005/libalias/sys/dev/snc/dp83932.c#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/snc/dp83932subr.c#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/snc/dp83932var.h#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/snc/if_sncreg.h#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/uart/uart_dev_ns8250.c#5 integrate .. //depot/projects/soc2005/libalias/sys/dev/usb/ubsa.c#11 integrate .. //depot/projects/soc2005/libalias/sys/dev/usb/usbdevs#21 integrate .. //depot/projects/soc2005/libalias/sys/dev/xe/if_xe.c#3 integrate .. //depot/projects/soc2005/libalias/sys/dev/xe/if_xe_pccard.c#2 integrate .. //depot/projects/soc2005/libalias/sys/dev/xe/if_xevar.h#2 integrate .. //depot/projects/soc2005/libalias/sys/fs/devfs/devfs_vnops.c#14 integrate .. //depot/projects/soc2005/libalias/sys/geom/geom_dev.c#5 integrate .. //depot/projects/soc2005/libalias/sys/i386/cpufreq/est.c#6 integrate .. //depot/projects/soc2005/libalias/sys/ia64/include/atomic.h#5 integrate .. //depot/projects/soc2005/libalias/sys/kern/kern_conf.c#13 integrate .. //depot/projects/soc2005/libalias/sys/kern/kern_descrip.c#18 integrate .. //depot/projects/soc2005/libalias/sys/kern/kern_umtx.c#17 integrate .. //depot/projects/soc2005/libalias/sys/kern/tty_tty.c#6 integrate .. //depot/projects/soc2005/libalias/sys/modules/Makefile#28 integrate .. //depot/projects/soc2005/libalias/sys/modules/ath_rate_onoe/Makefile#5 integrate .. //depot/projects/soc2005/libalias/sys/modules/ath_rate_sample/Makefile#5 integrate .. //depot/projects/soc2005/libalias/sys/modules/cnw/Makefile#1 branch .. //depot/projects/soc2005/libalias/sys/modules/dtrace/Makefile#3 integrate .. //depot/projects/soc2005/libalias/sys/net/radix_mpath.c#3 integrate .. //depot/projects/soc2005/libalias/sys/net/radix_mpath.h#3 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211.c#12 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211_crypto.c#6 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211_crypto.h#6 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211_crypto_ccmp.c#5 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211_crypto_tkip.c#5 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211_crypto_wep.c#5 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211_ddb.c#2 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211_freebsd.h#9 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211_ioctl.c#11 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211_node.c#11 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211_output.c#14 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211_proto.c#12 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211_proto.h#9 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211_scan.c#4 integrate .. //depot/projects/soc2005/libalias/sys/net80211/ieee80211_var.h#12 integrate .. //depot/projects/soc2005/libalias/sys/netgraph/ng_nat.c#16 integrate .. //depot/projects/soc2005/libalias/sys/netinet/ip_carp.c#10 integrate .. //depot/projects/soc2005/libalias/sys/netinet/ip_fw_nat.c#11 integrate .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias.c#80 integrate .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_db.c#32 integrate .. //depot/projects/soc2005/libalias/sys/netinet/libalias/alias_local.h#34 integrate .. //depot/projects/soc2005/libalias/sys/netinet/tcp_subr.c#18 integrate .. //depot/projects/soc2005/libalias/sys/netinet/tcp_timer.c#9 integrate .. //depot/projects/soc2005/libalias/sys/netinet/udp_usrreq.c#15 integrate .. //depot/projects/soc2005/libalias/sys/netinet6/udp6_usrreq.c#11 integrate .. //depot/projects/soc2005/libalias/sys/netipx/spx_usrreq.c#5 integrate .. //depot/projects/soc2005/libalias/sys/nfsserver/nfs_serv.c#12 integrate .. //depot/projects/soc2005/libalias/sys/nlm/nlm_prot_impl.c#5 integrate .. //depot/projects/soc2005/libalias/sys/pci/if_xl.c#9 integrate .. //depot/projects/soc2005/libalias/sys/pci/if_xlreg.h#5 integrate .. //depot/projects/soc2005/libalias/sys/powerpc/aim/trap.c#4 integrate .. //depot/projects/soc2005/libalias/sys/security/audit/audit.c#16 integrate .. //depot/projects/soc2005/libalias/sys/security/mac/mac_inet.c#14 integrate .. //depot/projects/soc2005/libalias/sys/sys/conf.h#9 integrate .. //depot/projects/soc2005/libalias/tools/tools/mctest/mctest.1#3 integrate .. //depot/projects/soc2005/libalias/tools/tools/mctest/mctest.cc#4 integrate .. //depot/projects/soc2005/libalias/tools/tools/mctest/mctest_run.sh#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/comm/comm.c#2 integrate .. //depot/projects/soc2005/libalias/usr.bin/shar/shar.sh#2 integrate .. //depot/projects/soc2005/libalias/usr.sbin/bsnmpd/modules/snmp_pf/pf_snmp.c#3 integrate .. //depot/projects/soc2005/libalias/usr.sbin/jexec/jexec.8#4 integrate .. //depot/projects/soc2005/libalias/usr.sbin/jexec/jexec.c#4 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pkg_install/Makefile#5 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pkg_install/add/main.c#7 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pkg_install/add/pkg_add.1#3 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pkg_install/create/main.c#5 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pkg_install/create/pkg_create.1#4 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pkg_install/delete/main.c#3 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pkg_install/delete/pkg_delete.1#3 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pkg_install/info/main.c#4 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pkg_install/info/pkg_info.1#5 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pkg_install/lib/lib.h#7 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pkg_install/updating/main.c#3 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pkg_install/updating/pkg_updating.1#3 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pkg_install/version/main.c#3 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pkg_install/version/pkg_version.1#3 integrate .. //depot/projects/soc2005/libalias/usr.sbin/pw/pw_user.c#3 integrate .. //depot/projects/soc2005/libalias/usr.sbin/rpc.lockd/lockd.c#10 integrate .. //depot/projects/soc2005/libalias/usr.sbin/sicontrol/sicontrol.c#2 integrate .. //depot/projects/soc2005/libalias/usr.sbin/timed/timed/timed.c#2 integrate .. //depot/projects/soc2005/libalias/usr.sbin/tzsetup/paths.h#2 delete .. //depot/projects/soc2005/libalias/usr.sbin/tzsetup/tzsetup.c#2 integrate .. //depot/projects/soc2005/libalias/usr.sbin/wlandebug/wlandebug.c#4 integrate Differences ... ==== //depot/projects/soc2005/libalias/MAINTAINERS#11 (text+ko) ==== @@ -1,4 +1,4 @@ -$FreeBSD: src/MAINTAINERS,v 1.147 2008/05/27 06:50:46 peter Exp $ +$FreeBSD: src/MAINTAINERS,v 1.149 2008/06/04 07:37:26 rafan Exp $ Please note that the content of this file is strictly advisory. No locks listed here are valid. The only strict review requirements @@ -71,7 +71,6 @@ ps gad I am working on a number of changes to this. Would like advance notice of major changes planned to it. cvs peter Heads-up appreciated, try not to break it. -ncurses peter Heads-up appreciated, try not to break it. nvi peter Try not to break it. libz peter Try not to break it. groff ru Recommends pre-commit review. @@ -127,6 +126,7 @@ gnu/usr.bin/send-pr bugmaster Pre-commit review requested. BSD.{local,x11*}.dist portmgr Pre-commit review requested, since these files interface with ports. usb core Please contact core@ before any major changes +ncurses rafan Heads-up appreciated, try not to break it. Following are the entries from the Makefiles, and a few other sources. Please remove stale entries from both their origin, and this file. ==== //depot/projects/soc2005/libalias/ObsoleteFiles.inc#32 (text+ko) ==== @@ -1,5 +1,5 @@ # -# $FreeBSD: src/ObsoleteFiles.inc,v 1.139 2008/05/26 10:39:45 bz Exp $ +# $FreeBSD: src/ObsoleteFiles.inc,v 1.141 2008/05/27 21:05:49 bz Exp $ # # This file lists old files (OLD_FILES), libraries (OLD_LIBS) and # directories (OLD_DIRS) which should get removed at an update. Recently @@ -128,6 +128,26 @@ OLD_DIRS+=usr/share/examples/isdn OLD_FILES+=usr/share/examples/ppp/isdnd.rc OLD_FILES+=usr/share/examples/ppp/ppp.conf.isdn +# 20080525: ng_atmpif removed +OLD_FILES+=usr/include/netgraph/atm/ng_atmpif.h +OLD_FILES+=usr/share/man/man4/ng_atmpif.4.gz +# 20080522: pmap_addr_hint removed +OLD_FILES+=usr/share/man/man9/pmap_addr_hint.9.gz +# 20080517: ipsec_osdep.h removed +OLD_FILES+=usr/include/netipsec/ipsec_osdep.h +# 20080507: heimdal 1.1 import +OLD_LIBS+=usr/lib/libasn1.so.9 +OLD_LIBS+=usr/lib/libgssapi.so.9 +OLD_LIBS+=usr/lib/libgssapi_krb5.so.9 +OLD_LIBS+=usr/lib/libhdb.so.9 +OLD_LIBS+=usr/lib/libkadm5clnt.so.9 +OLD_LIBS+=usr/lib/libkadm5srv.so.9 +OLD_LIBS+=usr/lib/libkafs5.so.9 +OLD_LIBS+=usr/lib/libkrb5.so.9 +OLD_LIBS+=usr/lib/libroken.so.9 +.if ${TARGET_ARCH} == "amd64" +OLD_LIBS+=usr/lib32/libgssapi.so.9 +.endif # 20080420: Symbol card support dropped OLD_FILES+=usr/include/dev/wi/spectrum24t_cf.h # 20080420: awi removal @@ -210,7 +230,7 @@ .endif # 20070801: fast_ipsec.4 gone OLD_FILES+=usr/share/man/man4/fast_ipsec.4.gz -# 20070715: netatm temporarily disconnected +# 20070715: netatm temporarily disconnected (removed 20080525) OLD_FILES+=rescue/atm OLD_FILES+=rescue/fore_dnld OLD_FILES+=rescue/ilmid @@ -298,7 +318,7 @@ OLD_FILES+=usr/include/machine/i4b_tel_ioctl.h OLD_FILES+=usr/include/machine/i4b_trace.h .endif -# 20070704: I4B 'modules' temporary disconnected +# 20070704: I4B 'modules' temporary disconnected (removed 20080525) .if ${TARGET_ARCH} == "i386" OLD_FILES+=usr/share/man/man4/i4bing.4.gz OLD_FILES+=usr/share/man/man4/i4bipr.4.gz ==== //depot/projects/soc2005/libalias/UPDATING#28 (text+ko) ==== @@ -22,6 +22,12 @@ to maximize performance. (To disable malloc debugging, run ln -s aj /etc/malloc.conf.) +20080603: + The version that Linuxulator emulates was changed from 2.4.2 + to 2.6.16. If you experience any problems with Linux binaries + please try to set sysctl compat.linux.osrelease to 2.4.2 and + if it fixes the problem contact emulation mailing list. + 20080525: ISDN4BSD (I4B) was removed from the src tree. You may need to update a your kernel configuration and remove relevant entries. @@ -1043,4 +1049,4 @@ Contact Warner Losh if you have any questions about your use of this document. -$FreeBSD: src/UPDATING,v 1.529 2008/05/26 10:39:45 bz Exp $ +$FreeBSD: src/UPDATING,v 1.531 2008/06/03 18:09:10 rdivacky Exp $ ==== //depot/projects/soc2005/libalias/bin/sh/parser.c#5 (text+ko) ==== @@ -36,7 +36,7 @@ #endif #endif /* not lint */ #include -__FBSDID("$FreeBSD: src/bin/sh/parser.c,v 1.59 2008/05/15 19:55:27 stefanf Exp $"); +__FBSDID("$FreeBSD: src/bin/sh/parser.c,v 1.60 2008/05/28 21:44:32 stefanf Exp $"); #include #include @@ -1188,6 +1188,7 @@ int bracketed_name = 0; /* used to handle ${[0-9]*} variables */ int i; int linno; + int length; c = pgetc(); if (c != '(' && c != '{' && (is_eof(c) || !is_name(c)) && @@ -1220,12 +1221,14 @@ subtype = 0; } if (!is_eof(c) && is_name(c)) { - p = out; + length = 0; do { STPUTC(c, out); c = pgetc(); + length++; } while (!is_eof(c) && is_in_name(c)); - if (out - p == 6 && strncmp(p, "LINENO", 6) == 0) { + if (length == 6 && + strncmp(out - length, "LINENO", length) == 0) { /* Replace the variable name with the * current line number. */ linno = plinno; ==== //depot/projects/soc2005/libalias/contrib/ncurses/FREEBSD-vendor#3 (text+ko) ==== @@ -1,8 +1,8 @@ -# $FreeBSD: src/contrib/ncurses/FREEBSD-vendor,v 1.2 2008/05/09 02:30:24 rafan Exp $ +# $FreeBSD: src/contrib/ncurses/FREEBSD-vendor,v 1.3 2008/06/04 07:38:38 rafan Exp $ Project: Ncurses (new curses) library ProjectURL: http://www.gnu.org/software/ncurses/ Version: 5.6-20080503 snapshot VendorTag: NCURSES VersionTag: v5_6_20080503 License: MIT-like -Maintainer: peter, rafan +Maintainer: rafan ==== //depot/projects/soc2005/libalias/etc/defaults/bluetooth.device.conf#2 (text+ko) ==== @@ -22,7 +22,7 @@ # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF # SUCH DAMAGE. # -# $FreeBSD: src/etc/defaults/bluetooth.device.conf,v 1.1 2005/11/10 19:09:22 emax Exp $ +# $FreeBSD: src/etc/defaults/bluetooth.device.conf,v 1.2 2008/05/27 17:46:32 emax Exp $ # The authentication_enable parameter controls if the device requires to # authenticate the remote device at connection setup. At connection setup, @@ -39,8 +39,7 @@ # The class parameter is used to indicate the capabilities of the device to # other devices. # -# For more details see -# https://www.bluetooth.org/foundry/assignnumb/document/baseband +# For more details see "Assigned Numbers - Bluetooth Baseband" document # # Possible value: # @@ -101,7 +100,7 @@ # The role_switch parameter controls whether the local device should perform # role switch. By default, if role switch is supported, the local device will # try to perform role switch and become Master on incoming connection. Some -# devices do not support role switch and thus incomming connections from such +# devices do not support role switch and thus incoming connections from such # devices will fail. If role switch is disabled then accepting device will # remain Slave. # ==== //depot/projects/soc2005/libalias/games/fortune/datfiles/freebsd-tips#5 (text+ko) ==== @@ -1,5 +1,5 @@ This fortune brought to you by: -$FreeBSD: src/games/fortune/datfiles/freebsd-tips,v 1.45 2007/12/08 00:20:33 dougb Exp $ +$FreeBSD: src/games/fortune/datfiles/freebsd-tips,v 1.46 2008/05/31 18:07:16 remko Exp $ % Any user that is a member of the wheel group can use "su -" to simulate a root login. You can add a user to the wheel group by editing /etc/group. @@ -402,16 +402,6 @@ as root. This will install a collection of packages that is appropriate for running a "generic" server. % -You can get a good standard workstation install by using the -instant-workstation port/package. If you have ports installed, you can -install it by doing - - # cd /usr/ports/misc/instant-workstation - # make install && make clean - -as root. This will install a collection of packages that is convenient to -have on a workstation. -% You can install extra packages for FreeBSD by using the ports system. If you have installed it, you can download, compile, and install software by just typing ==== //depot/projects/soc2005/libalias/lib/libc/sys/Symbol.map#11 (text) ==== @@ -1,5 +1,5 @@ /* - * $FreeBSD: src/lib/libc/sys/Symbol.map,v 1.15 2008/05/09 23:00:20 julian Exp $ + * $FreeBSD: src/lib/libc/sys/Symbol.map,v 1.16 2008/05/30 14:47:40 dfr Exp $ */ /* @@ -522,6 +522,7 @@ __sys_fchown; _fcntl; __sys_fcntl; + __fcntl_compat; _fhopen; __sys_fhopen; _fhstat; ==== //depot/projects/soc2005/libalias/lib/libc/sys/fcntl.c#2 (text+ko) ==== @@ -26,7 +26,7 @@ */ #include -__FBSDID("$FreeBSD: src/lib/libc/sys/fcntl.c,v 1.1 2008/04/04 09:43:03 dfr Exp $"); +__FBSDID("$FreeBSD: src/lib/libc/sys/fcntl.c,v 1.3 2008/05/30 14:47:40 dfr Exp $"); #include #include @@ -34,8 +34,10 @@ #include #include "libc_private.h" +__weak_reference(__fcntl_compat, fcntl); + int -fcntl(int fd, int cmd, ...) +__fcntl_compat(int fd, int cmd, ...) { va_list args; long arg; ==== //depot/projects/soc2005/libalias/lib/libc_r/uthread/uthread_fcntl.c#3 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libc_r/uthread/uthread_fcntl.c,v 1.16 2007/01/12 07:25:25 imp Exp $ + * $FreeBSD: src/lib/libc_r/uthread/uthread_fcntl.c,v 1.17 2008/05/30 14:47:41 dfr Exp $ */ #include #include @@ -36,6 +36,8 @@ __weak_reference(__fcntl, fcntl); +extern int __fcntl_compat(int fd, int cmd, ...); + int _fcntl(int fd, int cmd,...) { @@ -124,7 +126,7 @@ break; default: /* Might want to make va_arg use a union */ - ret = __sys_fcntl(fd, cmd, va_arg(ap, void *)); + ret = __fcntl_compat(fd, cmd, va_arg(ap, void *)); break; } ==== //depot/projects/soc2005/libalias/lib/libkse/thread/thr_fcntl.c#3 (text+ko) ==== @@ -26,7 +26,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libkse/thread/thr_fcntl.c,v 1.24 2007/12/16 23:29:55 deischen Exp $ + * $FreeBSD: src/lib/libkse/thread/thr_fcntl.c,v 1.25 2008/05/30 14:47:42 dfr Exp $ */ #include "namespace.h" @@ -37,6 +37,7 @@ #include "thr_private.h" int __fcntl(int fd, int cmd,...); +extern int __fcntl_compat(int fd, int cmd,...); __weak_reference(__fcntl, fcntl); @@ -68,7 +69,7 @@ ret = __sys_fcntl(fd, cmd); break; default: - ret = __sys_fcntl(fd, cmd, va_arg(ap, void *)); + ret = __fcntl_compat(fd, cmd, va_arg(ap, void *)); } va_end(ap); ==== //depot/projects/soc2005/libalias/lib/libthr/thread/thr_init.c#13 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libthr/thread/thr_init.c,v 1.50 2008/04/16 03:19:11 davidxu Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_init.c,v 1.51 2008/05/29 07:57:33 davidxu Exp $ */ #include "namespace.h" @@ -89,8 +89,7 @@ struct pthread_mutex_attr _pthread_mutexattr_default = { .m_type = PTHREAD_MUTEX_DEFAULT, .m_protocol = PTHREAD_PRIO_NONE, - .m_ceiling = 0, - .m_flags = 0 + .m_ceiling = 0 }; /* Default condition variable attributes: */ ==== //depot/projects/soc2005/libalias/lib/libthr/thread/thr_mutex.c#14 (text+ko) ==== @@ -30,7 +30,7 @@ * OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF * SUCH DAMAGE. * - * $FreeBSD: src/lib/libthr/thread/thr_mutex.c,v 1.73 2008/04/26 13:19:07 kris Exp $ + * $FreeBSD: src/lib/libthr/thread/thr_mutex.c,v 1.74 2008/05/29 07:57:33 davidxu Exp $ */ #include "namespace.h" @@ -51,12 +51,12 @@ (m)->m_qe.tqe_next = NULL; \ } while (0) #define MUTEX_ASSERT_IS_OWNED(m) do { \ - if ((m)->m_qe.tqe_prev == NULL) \ + if (__predict_false((m)->m_qe.tqe_prev == NULL))\ PANIC("mutex is not on list"); \ } while (0) #define MUTEX_ASSERT_NOT_OWNED(m) do { \ - if (((m)->m_qe.tqe_prev != NULL) || \ - ((m)->m_qe.tqe_next != NULL)) \ + if (__predict_false((m)->m_qe.tqe_prev != NULL || \ + (m)->m_qe.tqe_next != NULL)) \ PANIC("mutex is on list"); \ } while (0) #else @@ -95,9 +95,13 @@ static int mutex_unlock_common(pthread_mutex_t *); __weak_reference(__pthread_mutex_init, pthread_mutex_init); +__strong_reference(__pthread_mutex_init, _pthread_mutex_init); __weak_reference(__pthread_mutex_lock, pthread_mutex_lock); +__strong_reference(__pthread_mutex_lock, _pthread_mutex_lock); __weak_reference(__pthread_mutex_timedlock, pthread_mutex_timedlock); +__strong_reference(__pthread_mutex_timedlock, _pthread_mutex_timedlock); __weak_reference(__pthread_mutex_trylock, pthread_mutex_trylock); +__strong_reference(__pthread_mutex_trylock, _pthread_mutex_trylock); /* Single underscore versions provided for libc internal usage: */ /* No difference between libc and application usage of these: */ @@ -108,15 +112,17 @@ __weak_reference(_pthread_mutex_setprioceiling, pthread_mutex_setprioceiling); __weak_reference(__pthread_mutex_setspinloops_np, pthread_mutex_setspinloops_np); +__strong_reference(__pthread_mutex_setspinloops_np, _pthread_mutex_setspinloops_np); __weak_reference(_pthread_mutex_getspinloops_np, pthread_mutex_getspinloops_np); __weak_reference(__pthread_mutex_setyieldloops_np, pthread_mutex_setyieldloops_np); +__strong_reference(__pthread_mutex_setyieldloops_np, _pthread_mutex_setyieldloops_np); __weak_reference(_pthread_mutex_getyieldloops_np, pthread_mutex_getyieldloops_np); __weak_reference(_pthread_mutex_isowned_np, pthread_mutex_isowned_np); static int mutex_init(pthread_mutex_t *mutex, - const pthread_mutexattr_t *mutex_attr, int private, + const pthread_mutexattr_t *mutex_attr, void *(calloc_cb)(size_t, size_t)) { const struct pthread_mutex_attr *attr; @@ -139,9 +145,6 @@ pmutex->m_type = attr->m_type; pmutex->m_owner = NULL; - pmutex->m_flags = attr->m_flags | MUTEX_FLAGS_INITED; - if (private) - pmutex->m_flags |= MUTEX_FLAGS_PRIVATE; pmutex->m_count = 0; pmutex->m_refcount = 0; pmutex->m_spinloops = 0; @@ -180,7 +183,7 @@ THR_LOCK_ACQUIRE(thread, &_mutex_static_lock); if (*mutex == NULL) - ret = mutex_init(mutex, NULL, 0, calloc); + ret = mutex_init(mutex, NULL, calloc); else ret = 0; @@ -189,23 +192,6 @@ return (ret); } -static int -init_static_private(struct pthread *thread, pthread_mutex_t *mutex) -{ - int ret; - - THR_LOCK_ACQUIRE(thread, &_mutex_static_lock); - - if (*mutex == NULL) - ret = mutex_init(mutex, NULL, 1, calloc); - else - ret = 0; - - THR_LOCK_RELEASE(thread, &_mutex_static_lock); - - return (ret); -} - static void set_inherited_priority(struct pthread *curthread, struct pthread_mutex *m) { @@ -219,17 +205,10 @@ } int -_pthread_mutex_init(pthread_mutex_t *mutex, - const pthread_mutexattr_t *mutex_attr) -{ - return mutex_init(mutex, mutex_attr, 1, calloc); -} - -int __pthread_mutex_init(pthread_mutex_t *mutex, const pthread_mutexattr_t *mutex_attr) { - return mutex_init(mutex, mutex_attr, 0, calloc); + return mutex_init(mutex, mutex_attr, calloc); } /* This function is used internally by malloc. */ @@ -240,12 +219,11 @@ static const struct pthread_mutex_attr attr = { .m_type = PTHREAD_MUTEX_NORMAL, .m_protocol = PTHREAD_PRIO_NONE, - .m_ceiling = 0, - .m_flags = 0 + .m_ceiling = 0 }; static const struct pthread_mutex_attr *pattr = &attr; - return mutex_init(mutex, (pthread_mutexattr_t *)&pattr, 0, calloc_cb); + return mutex_init(mutex, (pthread_mutexattr_t *)&pattr, calloc_cb); } void @@ -319,7 +297,6 @@ return (ret); } - #define ENQUEUE_MUTEX(curthread, m) \ do { \ (m)->m_owner = curthread; \ @@ -368,124 +345,95 @@ return (mutex_trylock_common(curthread, mutex)); } -int -_pthread_mutex_trylock(pthread_mutex_t *mutex) -{ - struct pthread *curthread = _get_curthread(); - int ret; - - /* - * If the mutex is statically initialized, perform the dynamic - * initialization marking the mutex private (delete safe): - */ - if (__predict_false(*mutex == NULL)) { - ret = init_static_private(curthread, mutex); - if (__predict_false(ret)) - return (ret); - } - return (mutex_trylock_common(curthread, mutex)); -} - static int -mutex_lock_common(struct pthread *curthread, pthread_mutex_t *mutex, +mutex_lock_sleep(struct pthread *curthread, pthread_mutex_t m, const struct timespec * abstime) { struct timespec ts, ts2; - struct pthread_mutex *m; uint32_t id; int ret; int count; id = TID(curthread); - m = *mutex; - ret = _thr_umutex_trylock2(&m->m_lock, id); - if (ret == 0) { - ENQUEUE_MUTEX(curthread, m); - } else if (m->m_owner == curthread) { - ret = mutex_self_lock(m, abstime); - } else { - /* - * For adaptive mutexes, spin for a bit in the expectation - * that if the application requests this mutex type then - * the lock is likely to be released quickly and it is - * faster than entering the kernel - */ - if (m->m_lock.m_flags & UMUTEX_PRIO_PROTECT) - goto sleep_in_kernel; + if (__predict_false(m->m_owner == curthread)) + return mutex_self_lock(m, abstime); - if (!_thr_is_smp) - goto yield_loop; + /* + * For adaptive mutexes, spin for a bit in the expectation + * that if the application requests this mutex type then + * the lock is likely to be released quickly and it is + * faster than entering the kernel + */ + if (m->m_lock.m_flags & UMUTEX_PRIO_PROTECT) + goto sleep_in_kernel; - count = m->m_spinloops; - while (count--) { - if (m->m_lock.m_owner == UMUTEX_UNOWNED) { - ret = _thr_umutex_trylock2(&m->m_lock, id); - if (ret == 0) - goto done; - } - CPU_SPINWAIT; - } + if (!_thr_is_smp) + goto yield_loop; -yield_loop: - count = m->m_yieldloops; - while (count--) { - _sched_yield(); + count = m->m_spinloops; + while (count--) { + if (m->m_lock.m_owner == UMUTEX_UNOWNED) { ret = _thr_umutex_trylock2(&m->m_lock, id); if (ret == 0) goto done; } + CPU_SPINWAIT; + } +yield_loop: + count = m->m_yieldloops; + while (count--) { + _sched_yield(); + ret = _thr_umutex_trylock2(&m->m_lock, id); + if (ret == 0) + goto done; + } + sleep_in_kernel: - if (abstime == NULL) { - ret = __thr_umutex_lock(&m->m_lock); - } else if (__predict_false( - abstime->tv_sec < 0 || abstime->tv_nsec < 0 || - abstime->tv_nsec >= 1000000000)) { - ret = EINVAL; - } else { - clock_gettime(CLOCK_REALTIME, &ts); - TIMESPEC_SUB(&ts2, abstime, &ts); - ret = __thr_umutex_timedlock(&m->m_lock, &ts2); - /* - * Timed out wait is not restarted if - * it was interrupted, not worth to do it. - */ - if (ret == EINTR) - ret = ETIMEDOUT; - } + if (abstime == NULL) { + ret = __thr_umutex_lock(&m->m_lock); + } else if (__predict_false( + abstime->tv_sec < 0 || abstime->tv_nsec < 0 || + abstime->tv_nsec >= 1000000000)) { + ret = EINVAL; + } else { + clock_gettime(CLOCK_REALTIME, &ts); + TIMESPEC_SUB(&ts2, abstime, &ts); + ret = __thr_umutex_timedlock(&m->m_lock, &ts2); + /* + * Timed out wait is not restarted if + * it was interrupted, not worth to do it. + */ + if (ret == EINTR) + ret = ETIMEDOUT; + } done: - if (ret == 0) - ENQUEUE_MUTEX(curthread, m); - } + if (ret == 0) + ENQUEUE_MUTEX(curthread, m); return (ret); } -int -__pthread_mutex_lock(pthread_mutex_t *m) +static inline int +mutex_lock_common(struct pthread *curthread, struct pthread_mutex *m, + const struct timespec * abstime) { - struct pthread *curthread; + uint32_t id; int ret; - _thr_check_init(); - - curthread = _get_curthread(); - - /* - * If the mutex is statically initialized, perform the dynamic - * initialization: - */ - if (__predict_false(*m == NULL)) { - ret = init_static(curthread, m); - if (__predict_false(ret)) - return (ret); - } - return (mutex_lock_common(curthread, m, NULL)); + id = TID(curthread); + ret = _thr_umutex_trylock2(&m->m_lock, id); + if (ret == 0) + ENQUEUE_MUTEX(curthread, m); + else + ret = mutex_lock_sleep(curthread, m, abstime); + return (ret); } int -_pthread_mutex_lock(pthread_mutex_t *m) +__pthread_mutex_lock(pthread_mutex_t *mutex) { struct pthread *curthread; + struct pthread_mutex *m; int ret; _thr_check_init(); @@ -494,20 +442,22 @@ /* * If the mutex is statically initialized, perform the dynamic - * initialization marking it private (delete safe): + * initialization: */ - if (__predict_false(*m == NULL)) { - ret = init_static_private(curthread, m); + if (__predict_false((m = *mutex) == NULL)) { + ret = init_static(curthread, mutex); if (__predict_false(ret)) return (ret); + m = *mutex; } return (mutex_lock_common(curthread, m, NULL)); } int -__pthread_mutex_timedlock(pthread_mutex_t *m, const struct timespec *abstime) +__pthread_mutex_timedlock(pthread_mutex_t *mutex, const struct timespec *abstime) { struct pthread *curthread; + struct pthread_mutex *m; int ret; _thr_check_init(); @@ -518,37 +468,16 @@ * If the mutex is statically initialized, perform the dynamic * initialization: */ - if (__predict_false(*m == NULL)) { - ret = init_static(curthread, m); + if (__predict_false((m = *mutex) == NULL)) { + ret = init_static(curthread, mutex); if (__predict_false(ret)) return (ret); + m = *mutex; } return (mutex_lock_common(curthread, m, abstime)); } int -_pthread_mutex_timedlock(pthread_mutex_t *m, const struct timespec *abstime) -{ - struct pthread *curthread; - int ret; - - _thr_check_init(); - - curthread = _get_curthread(); - - /* - * If the mutex is statically initialized, perform the dynamic - * initialization marking it private (delete safe): - */ - if (__predict_false(*m == NULL)) { - ret = init_static_private(curthread, m); - if (__predict_false(ret)) - return (ret); - } - return (mutex_lock_common(curthread, m, abstime)); -} - -int _pthread_mutex_unlock(pthread_mutex_t *m) { return (mutex_unlock_common(m)); @@ -559,7 +488,7 @@ { int ret; - ret = mutex_lock_common(_get_curthread(), m, NULL); + ret = mutex_lock_common(_get_curthread(), *m, NULL); if (ret == 0) { (*m)->m_refcount--; (*m)->m_count += count; @@ -605,10 +534,15 @@ case PTHREAD_MUTEX_ERRORCHECK: case PTHREAD_MUTEX_ADAPTIVE_NP: if (abstime) { - clock_gettime(CLOCK_REALTIME, &ts1); - TIMESPEC_SUB(&ts2, abstime, &ts1); - __sys_nanosleep(&ts2, NULL); - ret = ETIMEDOUT; + if (abstime->tv_sec < 0 || abstime->tv_nsec < 0 || + abstime->tv_nsec >= 1000000000) { + ret = EINVAL; + } else { + clock_gettime(CLOCK_REALTIME, &ts1); + TIMESPEC_SUB(&ts2, abstime, &ts1); + __sys_nanosleep(&ts2, NULL); + ret = ETIMEDOUT; + } } else { /* * POSIX specifies that mutexes should return @@ -625,10 +559,15 @@ */ ret = 0; if (abstime) { - clock_gettime(CLOCK_REALTIME, &ts1); - TIMESPEC_SUB(&ts2, abstime, &ts1); - __sys_nanosleep(&ts2, NULL); - ret = ETIMEDOUT; + if (abstime->tv_sec < 0 || abstime->tv_nsec < 0 || + abstime->tv_nsec >= 1000000000) { + ret = EINVAL; + } else { + clock_gettime(CLOCK_REALTIME, &ts1); + TIMESPEC_SUB(&ts2, abstime, &ts1); + __sys_nanosleep(&ts2, NULL); + ret = ETIMEDOUT; + } } else { ts1.tv_sec = 30; ts1.tv_nsec = 0; @@ -726,17 +665,6 @@ return (0); } -void -_mutex_unlock_private(pthread_t pthread) -{ - struct pthread_mutex *m, *m_next; - - TAILQ_FOREACH_SAFE(m, &pthread->mutexq, m_qe, m_next) { - if ((m->m_flags & MUTEX_FLAGS_PRIVATE) != 0) - _pthread_mutex_unlock(&m); - } -} - int >>> TRUNCATED FOR MAIL (1000 lines) <<< From hselasky at FreeBSD.org Wed Jun 4 20:17:20 2008 From: hselasky at FreeBSD.org (Hans Petter Selasky) Date: Wed Jun 4 20:17:22 2008 Subject: PERFORCE change 142908 for review Message-ID: <200806042017.m54KHJBx041119@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142908 Change 142908 by hselasky@hselasky_laptop001 on 2008/06/04 20:16:45 USB Device Side related bugfixes. Affected files ... .. //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#17 edit .. //depot/projects/usb/src/sys/dev/usb/uss820_dci.c#12 edit Differences ... ==== //depot/projects/usb/src/sys/dev/usb/at9100_dci.c#17 (text+ko) ==== @@ -1320,6 +1320,16 @@ /* clearing stall is not needed */ return; } + /* compute CSR register offset */ + csr_reg = AT91_UDP_CSR(ep_no); + + /* compute default CSR value */ + csr_val = 0; + AT91_CSR_ACK(csr_val, 0); + + /* disable endpoint */ + AT91_UDP_WRITE_4(sc, csr_reg, csr_val); + /* get endpoint profile */ at9100_dci_get_hw_ep_profile(NULL, &pf, ep_no); @@ -1332,7 +1342,6 @@ * FIFO banks aswell, but it doesn't! We have to do this * manually! */ - csr_reg = AT91_UDP_CSR(ep_no); /* release FIFO banks, if any */ for (to = 0; to != 2; to++) { @@ -1366,6 +1375,8 @@ AT91_UDP_WRITE_4(sc, csr_reg, csr_val); } + /* compute default CSR value */ + csr_val = 0; AT91_CSR_ACK(csr_val, 0); /* enable endpoint */ @@ -1412,8 +1423,8 @@ /* reset endpoint */ at9100_dci_clear_stall_sub(sc, (ed->bEndpointAddress & UE_ADDR), - (ed->bEndpointAddress & (UE_DIR_IN | UE_DIR_OUT)), - (ed->bmAttributes & UE_XFERTYPE)); + (ed->bmAttributes & UE_XFERTYPE), + (ed->bEndpointAddress & (UE_DIR_IN | UE_DIR_OUT))); return; } ==== //depot/projects/usb/src/sys/dev/usb/uss820_dci.c#12 (text+ko) ==== @@ -1354,8 +1354,8 @@ uss820_dci_clear_stall_sub(sc, (ed->bEndpointAddress & UE_ADDR), - (ed->bEndpointAddress & (UE_DIR_IN | UE_DIR_OUT)), - (ed->bmAttributes & UE_XFERTYPE)); + (ed->bmAttributes & UE_XFERTYPE), + (ed->bEndpointAddress & (UE_DIR_IN | UE_DIR_OUT))); return; } From piso at FreeBSD.org Wed Jun 4 20:23:26 2008 From: piso at FreeBSD.org (Paolo Pisati) Date: Wed Jun 4 20:23:28 2008 Subject: PERFORCE change 142909 for review Message-ID: <200806042023.m54KNPnG041621@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142909 Change 142909 by piso@piso_newluxor on 2008/06/04 20:22:27 Revert back to HEAD version. Affected files ... .. //depot/projects/soc2005/libalias/sys/compat/ndis/subr_ntoskrnl.c#7 edit Differences ... ==== //depot/projects/soc2005/libalias/sys/compat/ndis/subr_ntoskrnl.c#7 (text+ko) ==== @@ -3261,34 +3261,6 @@ return(STATUS_SUCCESS); } -static ndis_status -IoGetDeviceObjectPointer(name, desiredaccess, fileobj, devobj) - unicode_string *name; - uint32_t desiredaccess; - void *fileobj; - device_object *devobj; -{ - devobj = NULL; - fileobj = NULL; - mtx_lock(&ntoskrnl_dispatchlock); - /* - nt_list_for_each_entry(coh, &object_list, list) { - TRACE5("header: %p, type: %d", coh, coh->type); - if (coh->type != OBJECT_TYPE_DEVICE) - continue; - if (!RtlCompareUnicodeString(&coh->name, name, TRUE)) { - dev_obj = HEADER_TO_OBJECT(coh); - TRACE5("dev_obj: %p", dev_obj); - break; - } - } */ - mtx_unlock(&ntoskrnl_dispatchlock); - if (devobj) - return(STATUS_SUCCESS); - else - return(STATUS_OBJECT_NAME_INVALID); -} - static void KeInitializeMutex(kmutex, level) kmutant *kmutex; From pgj at FreeBSD.org Wed Jun 4 20:34:38 2008 From: pgj at FreeBSD.org (Gabor Pali) Date: Wed Jun 4 20:34:40 2008 Subject: PERFORCE change 142911 for review Message-ID: <200806042034.m54KYbWP042603@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142911 Change 142911 by pgj@disznohal on 2008/06/04 20:33:53 MFen (again): 1.126 --> 1.128 books/handbook/serialcomms/chapter.sgml This was missing from Change 142787. Sorry! Pointyhat: pgj MFP4 after: 3 days Affected files ... .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/serialcomms/chapter.sgml#2 edit Differences ... ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/serialcomms/chapter.sgml#2 (text+ko) ==== @@ -6,7 +6,7 @@ + Original Revision: 1.128 --> Soros vonali kommunikáció @@ -597,12 +597,6 @@ használni, ha a soros kábel vagy a terminál nem ismeri a DCD jelet. - - A &os; 5.X és korábbi - változataiban a hívó portok neve - /dev/cuaaN - formátumú. - @@ -726,29 +720,15 @@ ezenkívül még külön eszközállományokat biztosít az inicializációhoz - (/dev/ttydN.init - és - /dev/cuadN.init - a &os; 6.X változata alatt, - /dev/ttyidN - és - /dev/cuaiaN a - &os; 5.X változata esetén) és a - zároláshoz - (/dev/ttydN.lock - és - /dev/cuadN.lock - &os; 6.X alatt, - /dev/ttyldN - és - /dev/cualaN - &os; 5.X alatt) Az inicializációs - állományok a port megnyitásakor - használhatóak a hozzátartozó - paraméterek beállítására, - például így tudjuk elküldeni a - crtscts utasítást az olyan - modemeknek, amelyek a forgalom + (/dev/cuadN.init) + és a zároláshoz + (/dev/cuadN.lock). + Az inicializációs állományok a port + megnyitásakor használhatóak a + hozzátartozó paraméterek + beállítására, például + így tudjuk elküldeni a crtscts + utasítást az olyan modemeknek, amelyek a forgalom irányítását RTS/CTS jelzéseken keresztül valósítják meg. A zároló @@ -1006,11 +986,8 @@ Ahol a soros-vonali-eszköz a rendszerünkben a soros portot jelölõ - speciális eszköz neve. A &os; 6.0 - elõtti változataiban ezek neve - /dev/cuaaN, - illetve a &os; 6.0 utáni változataiban - pedig + speciális eszköz neve. Az ilyen + eszközök neve /dev/cuadN. Az eszköz nevében az N-es @@ -3718,18 +3695,6 @@ - - A &os; 6.1-RELEASE elõtti változatai - nem ismerik a paramétert vagy a - /boot/loader.conf - állományban megadható - comconsole_speed változót, - ezért ha ilyen verzióval rendelkezünk, - akkor mindenképpen újra kell - fordítanunk a rendszerindító - blokkokat. - - @@ -3907,9 +3872,10 @@ beállítása A rendszertöltõ és a rendszermag az - /boot/loader.rc állományon - keresztül elég könnyen rávehetõ a - soros vonali konzol használatára: + /boot/loader.conf + állományon keresztül elég + könnyen rávehetõ a soros vonali konzol + használatára: set console="comconsole" @@ -3918,7 +3884,7 @@ beállításaitól függetlenül érvényesül. - A fenti sort a /boot/loader.rc + A fenti sort a /boot/loader.conf állomány elejére érdemes tennünk, így a soros vonali konzolon már a lehetõ leghamarabb megjelennek a rendszer @@ -3937,30 +3903,9 @@ opció által meghatározott konzolt fogja használni. - A 3.2 és az azt követõ - változatokban a konzol - beállításait nem kötelezõ - közvetlenül az /boot/loader.rc - állományban megadni, hanem a - /boot/loader.conf.local vagy - /boot/loader.conf - állományokban is megadhatjuk. Ilyenkor a - /boot/loader.rc így fog - kinézni: - - include /boot/loader.4th -start - - Ezután hozzuk létre az - /boot/loader.conf.local - állományt és tegyük bele a - következõket: - - console=comconsole - - vagy - - console=vidconsole + A konzol a /boot/loader.conf.local + vagy a /boot/loader.conf + állományokban adható meg. A részletekkel kapcsolatban lásd a &man.loader.conf.5; man oldalt. From pgj at FreeBSD.org Thu Jun 5 05:16:25 2008 From: pgj at FreeBSD.org (Gabor Pali) Date: Thu Jun 5 05:16:28 2008 Subject: PERFORCE change 142924 for review Message-ID: <200806050516.m555GO8O034160@repoman.freebsd.org> http://perforce.freebsd.org/chv.cgi?CH=142924 Change 142924 by pgj@disznohal on 2008/06/05 05:15:58 IFC Affected files ... .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/advanced-networking/chapter.sgml#3 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/config/chapter.sgml#6 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/firewalls/chapter.sgml#3 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/install/chapter.sgml#3 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/jails/chapter.sgml#3 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/kernelconfig/chapter.sgml#3 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/mail/chapter.sgml#3 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/ppp-and-slip/chapter.sgml#3 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/serialcomms/chapter.sgml#3 integrate .. //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/vinum/chapter.sgml#3 integrate .. //depot/projects/docproj_hu/www/en/donations/wantlist.sgml#2 integrate .. //depot/projects/docproj_hu/www/en/releng/index.sgml#2 integrate .. //depot/projects/docproj_hu/www/share/sgml/news.xml#3 integrate .. //depot/projects/docproj_hu/www/share/sgml/usergroups.xml#2 integrate Differences ... ==== //depot/projects/docproj_hu/doc/hu_HU.ISO8859-2/books/handbook/advanced-networking/chapter.sgml#3 (text+ko) ==== @@ -1,7 +1,7 @@