Commit Graph

124229 Commits

Author SHA1 Message Date
ambrisko
b6dcc22adf Fix the the duplicate cut-n-paste in linux_fstat64 pointed out by
Alexander Leidinger.  I forget to fix it in this version.
2006-05-05 16:17:59 +00:00
ambrisko
31b22ce017 Enhance the Linux emulation layer to make MegaRAID SAS managements tool happy.
Add back in a scheme to emulate old type major/minor numbers via hooks into
stat, linprocfs to return major/minors that Linux app's expect.  Currently
only /dev/null is always registered.  Drivers can register via the Linux
type shim similar to the ioctl shim but by using
linux_device_register_handler/linux_device_unregister_handler functions.
The structure is:

    struct linux_device_handler {
        char    *bsd_driver_name;
        char    *linux_driver_name;
        char    *bsd_device_name;
        char    *linux_device_name;
        int     linux_major;
        int     linux_minor;
        int     linux_char_device;
    };

Linprocfs uses this to display the major number of the driver.  The
soon to be available linsysfs will use it to fill in the driver name.
Linux_stat uses it to translate the major/minor into Linux type values.

Note major numbers are dynamically assigned via passing in a -1 for
the major number so we don't need to keep track of them.

This is somewhat needed due to us switching to our devfs.  MegaCli
will not run until I add in the linsysfs and mfi Linux compat changes.

Sponsored by:	IronPort Systems
2006-05-05 16:10:45 +00:00
ume
1075788769 If perform-actual-lookups is enabled, getservbyname() matches an entry
even when proto is not valid.

Submitted by:	Michael Bushkov <bushman__at__rsu.ru>
2006-05-05 15:01:25 +00:00
scottl
e677867eb3 Remove hand-rolled cross-build glue. Normal cross-build infrastructure
in FreeBSD likely supports this without any extra work.
2006-05-05 14:26:28 +00:00
pjd
95e02c6359 - Set bio_done directly to NULL to indicate that we want to wait for the bio.
- Use biowait() instead of copying the code.

MFC after:	1 month
2006-05-05 10:06:22 +00:00
bz
33da3ee9c3 Make sure the ip data pointer is correct before touching it again
after ipsec4_output processing else KAME IPSec using the handbook
configuration with gif(4) will panic the kernel.

Problem reported by:    t. patterson <tp lot.org>
Tested by:              t. patterson <tp lot.org>
2006-05-05 07:31:03 +00:00
rwatson
b1e7cf5430 Only return (tw) from tcp_twclose() if reuse is passed, otherwise
return NULL.  In principle this shouldn't change the behavior, but
avoids returning a potentially invalid/inappropriate pointer to
the caller.

Found with:	Coverity Prevent (tm)
Submitted by:	pjd
MFC after:	3 months
2006-05-05 06:50:23 +00:00
pjd
57924ea487 Force commit to provide correct commit message:
Set 'fp' variable to NULL after freeing it, so it won't be dereferenced
later.

Found by:	Coverity Prevent analysis tool
CID:		993
MFC after:	2 weeks
2006-05-05 06:36:30 +00:00
pjd
5e767c39b5 /tmp/cvsTXPIwQ 2006-05-05 06:24:34 +00:00
cperciva
13f1ac162a Allow the HTTP_PROXY environment variable to be (mis)spelled as
"http_proxy", since some people apparently do this and fetch(3)
allows it.
2006-05-05 04:47:00 +00:00
sam
f294a372d1 AH_REGOPS_FUNC is needed for sparc
MFC after:	2 weeks
2006-05-05 04:19:36 +00:00
cperciva
3d03d7498a Fix the test for whether ${HTTP_PROXY} is set -- I got it backwards.
Pointy hat to:	cperciva
Pointed out by:	pjd
2006-05-05 03:44:13 +00:00
sam
75ca9e9398 correct type
MFC after:	2 weeks
2006-05-05 03:21:13 +00:00
sobomax
e841b983f9 o Make it possible to compile find-sb on non-FreeBSD system (MacOS X in my
case). Can be useful for recovering in some cases;

o use SBLOCK_UFS2 instead of SBLOCK_UFS1 to calculate likely start of the UFS2
  partition from the beginning of disk.
2006-05-05 00:19:24 +00:00
ceri
5c4e0f103d Fix binary upgrades by accounting for the schg flag on /var/empty.
PR:		96711, 96780
Submitted by:	Nobuyuki Koganemaru, Martin Jackson
Approved by:	re (scottl)
MFC after:	1 day
2006-05-04 20:10:34 +00:00
bz
cb7d941f7e Assert ip6_forward_rt protected by Giant adding GIANT_REQUIRED to
functions not yet asserting it but working on global ip6_forward_rt
route cache which is not locked and perhaps should go away in the
future though cache hit/miss ration wasn't bad.

It's #if 0ed in frag6 because the code working on ip6_forward_rt is.
2006-05-04 18:41:08 +00:00
bz
73dfaf3f3e In rtrequest and rtinit check for sa_len != 0 for the given
destination. These checks are needed so we do not install
a route looking like this:
(0)                192.0.2.200        UH       tun0 =>

When removing this route  the kernel will start to walk
the address space which looks like a hang on 64bit platforms
because it'll take ages while on 32bit you should see a panic
when kernel debugging options are turned on.

The problem is in rtrequest1:
	if (netmask) {
		rt_maskedcopy(dst, ndst, netmask);
	} else
		bcopy(dst, ndst, dst->sa_len);

In both cases the len might be 0 if the application forgot to
set it.  If so ndst will be all-zero  leading to above
mentioned strange routes.

This is an application error but we must not fail/hang/panic
because of this.

Looks ok:	gnn
No objections:	net@ (silence)
MFC after:	8 weeks
2006-05-04 18:33:37 +00:00
pjd
488dfb1ea0 Use G_RAID3_FOREACH_SAFE_BIO() macro instead of G_RAID3_FOREACH_BIO() in
two places where g_io_request() is called. g_io_request() can free bio
structure so we can't reference it after and G_RAID3_FOREACH_BIO() macro
was doing this.

Found by:	Coverity Prevent analysis tool (with my new models)
MFC after:	1 day
2006-05-04 13:01:16 +00:00
ume
7192fe0c0a The port number must be network byte order. 2006-05-04 11:28:16 +00:00
maxim
e0c6fc9441 o style: WARNS= -> WARNS?=.
Spotted by:	ru
2006-05-04 09:01:54 +00:00
maxim
e6ffe3c2b2 o By popular demand import getent(1) utility: a program retrieves
and displays entries from the administrative database specified by
database, using the lookup order specified in nsswitch.conf(5).

PR:		bin/79903, bin/88460, bin/96536
Submitted by:	Julien Gabel, Dan Nelson, Daniel J. O'Connor
Obtained from:	NetBSD
Discussed with:	ume, soc-bushman
MFC after:	1 month
2006-05-04 08:44:44 +00:00
silby
573eb80e17 Fix three more bugs in bfe:
- Fix bfe_encap so that it will pass the address of the mbuf back up to its
  caller if/when it modifies it, as it does when doing a m_defrag on a mbuf chain.
- Make sure to unload the dmamap for ALL fragments of a packet, not just the first
- Use BUS_DMA_NOWAIT for all bus_dmamap_load calls so that the allocation of the
  map is not delayed - this driver is not set up to handle such delays.
- Reduce the number of RX and TX buffers bfe uses so that it does not use more
  bounce buffers than busdma is willing to allow it to use

With these changes, the driver now works properly for a user with a 2GB system,
and it also works on my system when the acceptable address range is lowered to 128MB.
Previously, both of these setups would act up after a few minutes of activity.
2006-05-04 07:41:01 +00:00
bde
c729a35120 Move the formatting of the NICE column to a new function format_nice()
so that it can be more easily unbroken and extended.

Try to use `static', `const' (as appropriate), prototypes declared together,
and parameter names in prototypes for all private functions, not just the
new one.
2006-05-04 03:56:31 +00:00
marcel
22a2f7851b Belatedly add 2 entries relating to the introduction of scc(4) and
the overhaul of puc(4). On sparc64 people may end up without serial
console if they upgrade without adding scc(4) to their kernel
configuration file.
2006-05-04 03:48:06 +00:00
bde
469aaf42f3 Fixed some style bugs (mainly missing and wrong splitting of long lines). 2006-05-04 03:00:13 +00:00
mjacob
479cd81c39 Add 4Gb Fibre Channel support.
Work sponsored by LSI-Logic.
2006-05-04 02:35:04 +00:00
mjacob
f02abec2fa Remove MPT_PRT_INVARIANT- it was a silly idea. 2006-05-04 02:34:18 +00:00
mjacob
98b1689816 Gratuitous tag alignment. It bugged me. 2006-05-04 00:34:07 +00:00
cperciva
a3a49903f7 Remove two lines of debugging which I forgot to remove before the last
commit.

Noticed by:     simon
2006-05-03 22:09:42 +00:00
cperciva
6a63b482f7 The approach portsnap uses of "pick a random HTTP mirror" doesn't
interact very nicely with HTTP proxies: Since proxies do not know
that all the files on portsnap1.freebsd.org are identical to the
files with the same names on portsnap2.freebsd.org, said proxies end
up downloading and storing files in duplicate.

This commit uses the HTTP_PROXY environment variable, if set, to
generate a random number seed for use in selecting a mirror.  This
means that if several systems all have the same HTTP_PROXY value set,
they will ask the proxy to fetch files from the same mirror (unless
that mirror fails, in which case all the systems will use the same
second choice, et cetera).

Portsnap still doesn't interact very well with "transparent" HTTP
proxies, but there's nothing I can do about those.

Requested by:	simon
Sponsored by:   FreeBSD security development fundraiser
2006-05-03 21:29:01 +00:00
cperciva
160fd830be Instead of selecting a mirror and failing if it is inaccessible, keep
track of which mirrors we have tried and try a different mirror if we
fail when trying to download the SSL public key or the snapshot
signature.

Failures later in the download process will not result in switching to
a different mirror, for two reasons:
1. If is very unlikely that a mirror will fail partway through the
process of downloading updates.
2. If we switched from a more recently updated mirror to a less
recently updated mirror partway through the download process, we would
end up failing anyway because we would be trying to fetch files which
the second mirror didn't have yet.

PR:		bin/96288
Requested by:	lots of people
Sponsored by:	FreeBSD security development fundraiser
2006-05-03 21:19:43 +00:00
scottl
1f2eeff0a4 Hide another common print under bootverbose. 2006-05-03 21:08:39 +00:00
maxim
8cadbc9a2c o Document security.jail.jailed sysctl.
PR:		docs/94711
Submitted by:	Andreas Kohn
MFC after:	2 weeks
2006-05-03 20:13:33 +00:00
sam
f61ce82647 add ath and wlan crypto support
MFC after:	1 month
2006-05-03 18:15:36 +00:00
sam
15945a996f add ath and wlan crypto support
Requested by:	many
MFC after:	1 month
2006-05-03 18:13:11 +00:00
bsd
bdb4511692 A few minor wording changes and a clarification about error conditions. 2006-05-03 17:33:29 +00:00
ambrisko
5ac8fc29a5 Make amr_linux work as a module by avoiding calling amr_linux_ioctl_int
from the amr_linux.  This simplifies the amr_linux shim and puts the
smarts into amr.c.

I tested this with 2 amr controllers in one box.  It seems to work
okay with them.
2006-05-03 16:45:15 +00:00
ume
bc8c6150b8 Install /etc/nsswitch.conf statically rather than generating it at
boot.  Autogeneration of nsswitch.conf doesn't makes sense in 7.0
since it's not permitted to upgrade from a pre-nss release without
passing through an intermediate release.

Suggested by:	brooks
2006-05-03 15:14:47 +00:00
jhb
a59756eac2 Restore the pre-5.x behavior of only beeping if the user makes a bad
selection and not always beeping on startup.  The two bytes for the extra
'jmp' instruction were obtained by removing recognition of BSD/OS
partitions.

Requested by:	many
Tested by:	subset of many
Head nod:	imp, keramida
MFC after:	2 weeks
2006-05-03 13:43:46 +00:00
scottl
7ef1f80fdd Allow bus_dmamap_load() to pass ENOMEM back to the caller. This puts it into
conformance with the mbuf and uio load routines.  ENOMEM can only happen
with BUS_DMA_NOWAIT is passed in, thus the deferals are disabled.  I don't
like doing this, but fixing this fixes assumptions in other important drivers,
which is a net benefit for now.
2006-05-03 04:14:17 +00:00
tegge
581c3c8153 Detect the snapshot file being prematurely unlinked. 2006-05-03 00:29:22 +00:00
tegge
e2c33fcc89 Temporarily undo clusters contribution to global runningbufspace while
handling copy on write for the buffers taking part in the cluster.
2006-05-03 00:10:29 +00:00
tegge
5174ba191d A side effect of calling runningbufwakeup() is that bp->b_runningbufspace is
cleared.  Save old value and restore bp->b_runningbufspace before returning
from ffs_copyonwrite().
2006-05-03 00:04:38 +00:00
tegge
844ddee0fc Close a race when VOP_LOCK() on a snapshot file is attempted at the
same time as it is changed back into a normal file.  The locker would
get the shared "snaplk" lock which would no longer be the correct lock
for the vnode.
2006-05-02 23:52:43 +00:00
marcel
04815f8530 Fix previous commit: the resource returned by rman_reserve_resource()
can be NULL. Make sure to only call rman_set_rid() when the resource
is not NULL. While here, improve readability and style.
2006-05-02 23:27:15 +00:00
ume
90151bff3d Fix alignment problem on AMD64.
Reported by:	Pascal Hofstee <caelian__at__gmail.com>
Submitted by:	Michael Bushkov <bushman__at__rsu.ru>
Tested by:	Pascal Hofstee <caelian__at__gmail.com>
2006-05-02 23:02:32 +00:00
keramida
9474672d95 Note that when -d flag is used, mountd(8) will not detach from the
controlling terminal.

PR:		docs/96660
Submitted by:	Jeff Ito <ijk@speakeasy.net>
MFC after:	1 week
2006-05-02 21:00:43 +00:00
phk
3399511e52 Avoid coredumps if stddev cannot be computed (if all datapoints are identical)
Small cleanup of label printing.
2006-05-02 07:34:38 +00:00
cperciva
d8e06a4a6a Teach portsnap to parse the output of the host(1) in BIND 8 as well as
the host(1) from BIND 9.  This doesn't matter for HEAD, but will help
people who install portsnap from the ports tree onto older versions of
FreeBSD.

PR:		ports/93901
Sponsored by:	FreeBSD security development fundraiser
2006-05-02 05:27:30 +00:00
scottl
de96782b7f Only print the driver name and version if bootverbose is set. 2006-05-02 03:46:59 +00:00